EL表达式
1.概念:expression language 表达式 2.作用:替换和简化jsp页面java代码的编写 3.语法:${表达式内容} 4.注意:jsp默认支持EL表达式的 5.使用: ${3>4} ${1+2} ${3-2} ${1*2} ${2/2} ${2%2} ${2 mod 2} <h3>empty</h3> <% String str=""; List list = new ArrayList<>(); %> ${not empty str} ${not empty list}
el获取值
1.el表达式只能从域对象中取值 2.域对象: requestScope===>请求的域对象 request sessionScope===>session pageScope===>pageContext applicationScope===>application 使用: request.setAttribute("str",str); session.setAttribute("str",str); application.setAttribute("str",str); pageContext.setAttribute("str",str); 3.${key(健名)}:表示以次从最小的域查找是否有该健的对应的值,直到找到为止 作用域递增:request>session>pageContext>application
<%@ page import="com.icss.java.User" %> <%@ page import="java.util.*" %><%-- Created by IntelliJ IDEA. User: 34315 Date: 2023/8/14 Time: 15:59 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <% User user = new User(); user.setName("李星云"); // user.setAge(20); // user.setSex("男"); // user.setTime(new Date()); // request.setAttribute("u",user); // // List list=new ArrayList(); // list.add("aaa"); // list.add(123); // list.add(user); // session.setAttribute("list",list); Map map=new HashMap(); map.put("name","李星云"); map.put("sex","男"); map.put("user",user); map.put(null,"空"); session.setAttribute("map",map); %> <h3>获取对象的值</h3> <%-- ${requestScope.u.timeStr}--%> <%-- ${list}<br>--%> <%-- ${list[0]}<br>--%> <%-- ${list[3]}<br>--%> <%-- ${list[2].name}<br>--%> <h3>获取map对象的值</h3> ${map} ${map.sex} ${map[null]} ${map.user.name} <%--获取虚拟路径目录--%> ${pageContext.request.contextPath} </body> </html>
jstl
1.概念: javaServerPages Tag Libraty JSP标准标签库 2.作用:替换和简化页面中的java代码编写 3.使用文件: 1.导入jstl相关的jar文件 2.引入标签库的指令 3.使用标签: 1.if:相当于java代码中的if语句 2.choose:相当于switch 3.when:相当于case 4.otherwise:相当于default 5.foreach: 属性说明: begin:开始值 end:结束之 var:临时变量 step:步长 varStatus:循环状态对象 index:容器中的索引或者下标 0开始 count:循环次数 1开始
<%-- c:if 标签 1.属性:test 必须填写 接收的是boolean表达式 如果表达式结果是true,则显示if标签体的内容,如果结果是false,则不显示标签体的内容 一般情况下,test属性值会结合el表达式来使用. --%>
<% request.setAttribute("number",3); %> <c:choose> <c:when test="${number==1}"> 星期一 </c:when> <c:when test="${number==2}"> 星期二 </c:when> <c:when test="${number==3}"> 星期三 </c:when> <c:when test="${number==4}"> 星期四 </c:when> <c:when test="${number==5}"> 星期五 </c:when> <c:when test="${number==6}"> 星期六 </c:when> <c:when test="${number==7}"> 星期日 </c:when> <c:otherwise> 输入错误 </c:otherwise> </c:choose>