JavaWeb之JSP、EL表达式、JSTL标签

JSP

JSP:Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。动态插值使用 <%=值%> 的格式

jsp本质上就是servlet

JSP九大内置对象

private JSPWriter out;//输出流对象
private HttpServletRequest request;//请求对象
private HttpervletResponse response;//响应对象
private HttpSession sesion;//会话对象
private ServletContext application;//全局域对象,服务器只会创建一个
private ServletConfig config;//配置文件对象
private PageContext pageContext;//上下文关系对象,可以获取其他八大对象
private Object page;//当前页对象
//Exception exception//异常对象

JSP四大域

//请求域:将数据添加到request对象中,返回响应后,request对象就会被销毁
//使用场景:短时间数据的传输
request.setAttribute(String key, Object value);
Object obj = request.getAttribute(String key);

//会话域:将数据添加到session中,默认30分钟有效,不同的session之间数据不能共享
//使用场景:较长时间的数据传输,常用于web页面中的登陆验证界面(登陆成功后浏览器分配一个session键值对[JSESSIONID])
sesion.setAttribute(String key, Object value);
Object obj = sesion.getAttribute(String key);

//全局域;将数据添加到application中,项目启动时创建,当项目关闭时被销毁,所有用户可以共享
//使用场景:一般用于多个客户端共享数据时使用
application.setAttribute(String key, Object value);
Object obj = application.getAttribute(String key);

//当前页面域:page对象即this,代表JSP本身,可以调用Servlet类定义的方法
//使用场景:很少使用
page.setAttribute(String key, Object value);
Object obj = page.getAttribute(String key);

Servlet同样也有前面三种域,但是JSP是响应页面,所以有当前页面page

EL表达式

主要用途:获取数据

语法:

${要获取的数据}

注意:

通过EL表达式获取数据时,只能通过Servlet中设置的属性进行获取,

比如Servlet设置了stu的属性(stu是一个Student类的实例化对象)

request.setAttribute("stu", student);

在JSP页面中获取该学生对象就应该通过 对象.属性 的方式进行获取

${stu.name}
${stu.age}
...

EL表达式获取数据的优先级

page(当前页面域) > request(请求域) > session(会话域) > application(全局域)

JSTL标签

JSTL标签就是使用标签取代JSP页面上的Java代码

使用方法:

  1. 导入依赖(导入需要的jar包)

  2. 引入标签(其中prefix是取得别名)

    <%@taglib uri="http://..../core" prefix="c"%>
    
  3. 使用标签(通常配合EL表达式进行使用)

    image-20240616121538963image-20240616121550114

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拖把湛屎,戳谁谁死

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值