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表达式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
最新评论