Java後端用EL表達式改進JSP
EL表達式改進JSP
JSP的缺點
由於jsp頁面內,既可以定義HTML標簽,又可以定義java代碼,造成瞭以下問題
1、書寫麻煩:特別是復雜的頁面
2、閱讀麻煩
3、復雜度高:運行需要依賴各種環境,JRE。JSP容器(tomcat服務器)…..
4、占用內存和磁盤:JSP會自動生成.java和.class文件占磁盤,運行.class文件占內存
5、調試困難:出錯後,需要找到自動生成的.java文件進行調試
6、不利團隊寫作:前後端人員
…
JSP已經逐漸退出歷史舞臺,取而代之的是html和Ajax
演化過程:
最好不要直接在jsp裡寫java代碼
EL表達式
Expression Language表達式語言,用於簡化JSP頁面內的java代碼
主要功能:獲取數據
語法:${expression}
如:${brands}:獲取域中存儲的key為brands的數據
idea中使用Maven時常見問題
idea中使用瞭maven無法創建包/類
沒有源文件,將其中的一個文件添加為源文件,就可創建包或類瞭(項目結構中標藍)
idea中配置web的maven項目
maven創建的web中無法創建servlet
maven中部署tomcat插件
pom.xml文件中寫入
<build> <plugins> <!-- tomcat插件 --> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <!--設置端口號(可以修改)--> <port>8080</port> <!--設置路徑(可以修改)--> <path>/jsp-demo02</path> </configuration> </plugin></plugins> </build>
EL表達式的演練
創建一個com.web.ServletDemo1類
package com.web; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.ArrayList; import java.util.List; @WebServlet("/demo1") public class ServletDemo1 extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //添加數據 List<String> list=new ArrayList<>(); list.add("zhangSan1"); list.add("zhangSan2"); list.add("zhangSan3"); list.add("zhangSan4"); list.add("zhangSan5"); System.out.println(list); //2、存儲到request域中,可以轉發到jsp頁面中從而使用EL表達式 request.setAttribute("lists", list); //3、轉發到el-demo.jsp request.getRequestDispatcher("/el-demo.jsp").forward(request, response); } }
在web.app目錄下創建el-demo.jsp,其中寫入${lists}即可
<%@ page language="java" contentType="text/html; charset=utf-8" isELIgnored="false" pageEncoding="utf-8" %> <html> <head> <meta charset="utf-8"/> <title>Insert title here</title> </head> <body> ${lists} </body> </html>
運行結果
到此這篇關於Java後端用EL表達式改進JSP的文章就介紹到這瞭,更多相關Java EL表達式內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- jsp+servlet實現簡單登錄頁面功能(附demo)
- response.sendRedirect()實現重定向(頁面跳轉)
- 解決Javaweb 提交表單到servlet時出現空白頁面,但網站不報錯問題
- idea搭建可運行Servlet的Web項目
- javaweb實現文件上傳小功能