jsp学习

学习JSP的el和jstl

html和css分离 html页面不能出现<% %> : 不方便维护。
使用页面的特殊的标签/表达式,来解决去掉<% %>的问题。

el的格式

格式:${…}
作用:用来获取我们存储再四大域对象的值
el表达式不需要导入任何的包,第三方直接引用。

关闭el

page指令中指定isELIgnored=“true”:表示该页面表达式不使用el表达式
在el表达式前加上转义字符 \ 也可以让el表达失效。

el不显示null

当el表达式获取的值为null的时候 显示的是""的字符串。

el表达式获取数据的方式

  1. 直接获取某个与对象的值:${…}
  2. 获取域对象中,存储数组的值:${str[0]}
  3. 获取域对象中,存储集合的值:${list[0]}
  4. 获取域对象中,存储bean(实体类)的值:
    ${user.id}:实体中必须要设置id的get方法,el表达式找的就是get方法
    ${user[“name”]}:name必须要和实体类中属性name的名字完全一样
  5. 获取域对象中,存储的map集合的值:
    []用于获取有下标的数据(数组,list集合)
    .用户获取有属性的对象(map,对象)
    如果属性名中有特殊的字符,那么必须使用[“属性值”],属性值必须用引号引起来

获取请求参数的值的方式

获取单个传递的属性的名字:name: p a r a m . n a m e 获 取 属 性 名 字 有 多 个 , 获 取 值 : n a m e : {param.name} 获取属性名字有多个,获取值:name: param.namename:{paramValues.name[0]} :
name要跟 传递的参数的名字要完全一样。
如果获取不到值,在页面上显示""字符串 。

pageContext对象来获取内容

通过el表达式来获取项目的路径:${pageContext.request.contextPath}

el表达式的运算符

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如何使用jstl标签库

  1. 先导入两个包
    在这里插入图片描述
  2. 使用taglib指令,导入标签库
    在这里插入图片描述
  3. fmt : 格式化标签库 : 日期时间格式化,数字格式化
    <%@taglib prefix=“fmt” uri=“http://java.sun.com/jsp/jstl/fmt” %>

核心标签的使用

<% request.setAttribute("",""); %>
var:相当于属性的名字
value:相当于属性的值
scope:表示域对象
例:<c:set var=“username” value=“郭德纲” scope=“request”></c:set>

<%=request.getAttribute("") %>
value:要用el表达式 . . . ∗ ∗ 例 : : < c : o u t v a l u e = " {...} **例::<c:out value=" ...<c:outvalue="{username}"></c:out>**

default:如果获取不到属性的值,就默认default的内容
escapeXml:设置value值是否识别标签:
例: 生日:<c:out value="${birth}" default=“找不到生日!!!”>

escapeXml=“false”:识别标签
例: 喜欢的歌:<c:out value=“小情歌” escapeXml=“false”></c:out>

移除域对象中的属性
例: <c:remove var=“username” scope=“request”></c:remove>

if的使用

if判断没有else
test:判断条件 里面必须写el表达式
例:在这里插入图片描述

forEach的使用

var : 循环变量
begin:开始值
end:结束值
step:增长量
例如:计算1-100的和

在这里插入图片描述
如何循环遍历从sevlet中传递过来的集合,实体,map集合…显示在页面上
items:该属性放的是从servlet中传递的集合/实体/map集合…(必须要写el表达式
var:“person”:表示集合中元素的别名
例:
<c:forEach items="${personList}" var=“person”>
${person.id} == ${person.name} == ${person.cla}

</c:forEach>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值