JSP使用总结

JSP

JSP脚本

通过JSP脚本在JSP页面上编写Java代码

类型翻译成Servlet对应的部分注意
<%…%>:Java程序片段翻译成Service()方法里面的内容, 局部的
<%=…%>:输出表达式翻译成Service()方法里面的内容,相当于调用out.print()输出表达式不能以;结尾
<%!..%>:声明成员变量翻译成Servlet类里面的内容

JSP注释

注释类型HTML源码中(浏览器查看)翻译的Servlet代码中
HTML注释 存在存在
JAVA注释 //; /* */不存在存在
JSP注释; <%–注释内容–%>不存在不存在

EL表达式

语法

${el表达式}

EL获取数据

获取简单数据类型数据
${requestScope|sessionScope|applicationScope.属性名};
${属性名}

  • 若找不到返回""
  • application指的是ServletContext
  • 属性名就是存在域对象里面的key
  • 从最小的往最大的找,request–>session—>application

获取数组
${key[下标]}
key就是域对象里面存的key

获取list
${list属性名[index]}
${list属性名.get(index)}
list属性名就是存入域对象里面的key

获取Map
${map属性名.键}
${map属性名.get("键")
map属性名就是存入域对象里面的key

获取bean
${key.javabean属性}
依赖getxxx()方法

注意:
若属性名中出现了".""+""-"等特殊的符号的时候,快捷获取的方式不好使,必须使用以下方式:
${xxxScope["属性名"]}

EL执行运算

运算运算符说明
算数运算+,-,*,/+不能拼接字符串.
逻辑运算< >= <= != ==
关系运算&&
非空判断[重点]empty, not empty${empyt 属性名}

empty

  • 作用
    判断对象是否为null
    判断一个集合长度是否为0
    判断一个字符串是否为""
  • 注意事项
    如果是集合, 满足 这个集合不为null并且集合长度不为0, 那么才不是empty

JSTL标签库

  1. 导jar包
    jstl.jar
    standard.jar
  2. 在页面上导入核心标签库
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

if标签

<c:if test="el表达式${..}" [var="给之前的表达式的结果起个名字"] [scope="将结果保存在那个域中 默认page"]>
...
</c:if>

简单使用:
<c:if test="el表达式(返回boolean)" > </c:if>

choose标签

<c:choose> 
		<c:when test="${a == 'java' }">
			...
		</c:when>
		...
		<c:otherwise>
			其它
		</c:otherwise>
</c:choose>

foreach标签

简单使用:

<c:foreach begin="" end="" var="" step="">
	//使用EL取值
</c:foreach>

复杂使用:

<c:foreach items="el取出域里面集合"  var="" varStatus="遍历状态"  >
...
</c:foreach>

foreach标签的属性

  • var : 每次遍历的赋值
  • items : 条目 一般写从域里面取出集合
    指向一个字符串,该字符串引用一个对象 map.put(“vs”,一个对象);
    这个对象记录着当前遍历的元素的一些信息:
    • index : 返回索引 从0开始
    • count : 返回计数 从1开始
    • last : 是否是最后一个元素
    • first : 是否是第一个元素
  • varStatus : 当前迭代状态信息的对象
  • begin : 初始化
  • end : 结束条件
  • step : 步长
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值