Java后端用EL表達(dá)式改進(jìn)JSP
EL表達(dá)式改進(jìn)JSP
JSP的缺點(diǎn)
由于jsp頁(yè)面內(nèi),既可以定義HTML標(biāo)簽,又可以定義java代碼,造成了以下問(wèn)題
1、書(shū)寫(xiě)麻煩:特別是復(fù)雜的頁(yè)面
2、閱讀麻煩
3、復(fù)雜度高:運(yùn)行需要依賴各種環(huán)境,JRE。JSP容器(tomcat服務(wù)器).....
4、占用內(nèi)存和磁盤(pán):JSP會(huì)自動(dòng)生成.java和.class文件占磁盤(pán),運(yùn)行.class文件占內(nèi)存
5、調(diào)試?yán)щy:出錯(cuò)后,需要找到自動(dòng)生成的.java文件進(jìn)行調(diào)試
6、不利團(tuán)隊(duì)寫(xiě)作:前后端人員
...
JSP已經(jīng)逐漸退出歷史舞臺(tái),取而代之的是html和Ajax
演化過(guò)程:

最好不要直接在jsp里寫(xiě)java代碼

EL表達(dá)式
Expression Language表達(dá)式語(yǔ)言,用于簡(jiǎn)化JSP頁(yè)面內(nèi)的java代碼
主要功能:獲取數(shù)據(jù)
語(yǔ)法:${expression}
如:${brands}:獲取域中存儲(chǔ)的key為brands的數(shù)據(jù)
idea中使用Maven時(shí)常見(jiàn)問(wèn)題
idea中使用了maven無(wú)法創(chuàng)建包/類
沒(méi)有源文件,將其中的一個(gè)文件添加為源文件,就可創(chuàng)建包或類了(項(xiàng)目結(jié)構(gòu)中標(biāo)藍(lán))

idea中配置web的maven項(xiàng)目

maven創(chuàng)建的web中無(wú)法創(chuàng)建servlet

maven中部署tomcat插件
pom.xml文件中寫(xiě)入
<build>
<plugins>
<!-- tomcat插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!--設(shè)置端口號(hào)(可以修改)-->
<port>8080</port>
<!--設(shè)置路徑(可以修改)-->
<path>/jsp-demo02</path>
</configuration>
</plugin></plugins>
</build>
EL表達(dá)式的演練
創(chuàng)建一個(gè)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 {
//添加數(shù)據(jù)
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、存儲(chǔ)到request域中,可以轉(zhuǎn)發(fā)到j(luò)sp頁(yè)面中從而使用EL表達(dá)式
request.setAttribute("lists", list);
//3、轉(zhuǎn)發(fā)到el-demo.jsp
request.getRequestDispatcher("/el-demo.jsp").forward(request, response);
}
}
在web.app目錄下創(chuàng)建el-demo.jsp,其中寫(xiě)入${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>
運(yùn)行結(jié)果

到此這篇關(guān)于Java后端用EL表達(dá)式改進(jìn)JSP的文章就介紹到這了,更多相關(guān)Java EL表達(dá)式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- El表達(dá)式使用問(wèn)題javax.el.ELException:Failed to parse the expression的解決方式
- EL表達(dá)式簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- EL表達(dá)式的隱式對(duì)象_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- JSP中EL表達(dá)式用法_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- 淺談java里的EL表達(dá)式在JSP中不能解析的問(wèn)題
- JAVA JSP頁(yè)面技術(shù)之EL表達(dá)式整理歸納總結(jié)
- Javaweb El表達(dá)式實(shí)例詳解
相關(guān)文章
SpringBoot?項(xiàng)目打成?jar后加載外部配置文件的操作方法
這篇文章主要介紹了SpringBoot?項(xiàng)目打成?jar后加載外部配置文件的操作方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03
Java狀態(tài)機(jī)的一種優(yōu)雅寫(xiě)法分享
狀態(tài)機(jī)是一種數(shù)學(xué)模型,對(duì)于我們業(yè)務(wù)實(shí)現(xiàn)有很大的幫助。我們可以用非常多的方法實(shí)現(xiàn)狀態(tài)機(jī),這篇文章就來(lái)介紹一個(gè)狀態(tài)機(jī)優(yōu)雅的實(shí)現(xiàn)方法,希望對(duì)大家有所幫助2023-04-04
Java解壓縮zip - 解壓縮多個(gè)文件或文件夾實(shí)例
本篇文章主要介紹了Java解壓縮zip - 解壓縮多個(gè)文件或文件夾實(shí)例,非常具有實(shí)用價(jià)值,有需要的可以了解一下。2016-12-12
Java數(shù)據(jù)庫(kù)操作庫(kù)DButils類的使用方法與實(shí)例詳解
這篇文章主要介紹了JDBC數(shù)據(jù)庫(kù)操作庫(kù)DButils類的使用方法詳解,需要的朋友可以參考下2020-02-02
新手小白學(xué)JAVA 日期類Date SimpleDateFormat Calendar(入門(mén))
本文主要介紹了JAVA 日期類Date SimpleDateFormat Calendar,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10
Java的stream流多個(gè)字段排序的實(shí)現(xiàn)
本文主要介紹了Java的stream流多個(gè)字段排序的實(shí)現(xiàn),主要是兩種方法,第一種是固定多個(gè)字段排序和第二種動(dòng)態(tài)字段進(jìn)行排序,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10
SpringBoot整合FastDFS方法過(guò)程詳解
這篇文章主要介紹了SpringBoot整合FastDFS方法過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
java解決動(dòng)態(tài)配置字段需求問(wèn)題
這篇文章主要介紹了java解決動(dòng)態(tài)配置字段需求問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05

