- EL表达式的概念及作用
作用:是jsp写起来更简单,更简洁。主要用于获取作用域中的数据。
- EL表达式的应用 name 只是一个变量
1.${xxxxScope.name} :获取具体某个作用域中的属性的值
2.${name} :获取作用域中的数据,因为没有指定作用域,则会自动进行逐级查找 顺序为:pageContext request session application
3.EL表达式和jsp脚本的区别:<%=request.getAttribute() %> 没有找到返回null ${requestScope.name} 没找到返回""
4.获取数据:
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <% User user = new User("DL19121630","123456"); request.setAttribute("user",user); %> <%-- 指定作用域获取数据 --%> ${requestScope.user} ${requestScope.user.name} ${requestScope.user.password} <br> <%-- 不指定作用域获取数据 --%> ${user.name} ${user.password} <br> <%-- 第三种获取 --%> ${user["name"]} ${user["password"]} </body> </html>
- EL表达式获取 数组,集合等元素。
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <% //数组 int[] nums = {1,2,3}; request.setAttribute("nums",nums); //集合 ArrayList<String> strings = new ArrayList<>(); strings.add("one"); strings.add("two"); strings.add("three"); request.setAttribute("strings",strings); //map集合 Map<String, String> maps = new HashMap<>(); maps.put("name","代先生"); maps.put("age","18"); maps.put("sex","男"); request.setAttribute("maps",maps); %> <%--获取数组元素--%> ${requestScope.nums[0]} ${requestScope.nums[1]} ${requestScope.nums[2]} <br> <%--获取集合元素--%> ${requestScope.strings[0]} ${requestScope.strings[1]} ${requestScope.strings[2]} <br> <%--获取map集合元素--%> ${requestScope.maps["name"]} ${requestScope.maps.name} </body> </html>
- empty关键字
作用:判断是否有值,如果有,则返回true,否则返回false<% String s1=""; pageContext.setAttribute("s1", s1); String s2=null; pageContext.setAttribute("s2", s2); String s3="122222"; pageContext.setAttribute("s3", s3); List list1 =new ArrayList(); pageContext.setAttribute("list1", list1); %> <!-- empty关键只要内容是空true --> ${empty s1}<br> ${empty s2}<br> ${empty s3}<br> ${empty list1}<br>
Java jsp 详细说明 --- EL表达式
最新推荐文章于 2021-12-10 14:54:07 发布