四十七 EL和JSTL

本文详细介绍了EL(Expression Language)和JSTL在JSP页面显示优化中的应用。EL主要用于从四大作用域中取数据,包括page、request、session和application。JSTL则提供了数据处理操作,如输出、设置、移除、条件语句和循环结构,提升JSP页面的可读性和效率。
摘要由CSDN通过智能技术生成

四十七章 ---- EL和JSTL

01-简易的Tomcat

02-搭建了web环境和初识JSP

03-JSP的内置对象(request response session application)

04-数据源和分层(查询新闻列表、新增新闻、删除新闻)

JNDI和连接池

三层架构:

表现层:接收请求,并对请求做出响应

业务逻辑层:处理业务逻辑(删除新闻)

数据访问层:用于和数据进行直接交互(DAO模式)

05-第三方控件(commons-fileupload 和富文本编辑器)

06-分页技术(改造:首页分页 、管理员列表的分页)

07-分页功能完善和页面拆分

一、掌握使用EL表达式优化JSP页面显示

1.EL的概述
<%
	Object obj = request.getAttribute("categoryList");
	// 使用集合
	if(obj != null){
   
        List<category> categoryList = (List<category>)obj;
	}
%>

// 现在需要:
// ${categoryList}    ${requestScope.categoryList}
// ${not empty categoryList} 判断不为空



--------------------------------------------------------


<% 
	// 取出来信息   获取一个对象
	User user = (User)session.getAttribute("loginUser");
	// 假设不能为空:取出用户的数据
	user.getUserName();
	user.getUserPassword();
%>

// ${loginUser}
// ${loginUser.userName}
// ${loginUser.userPassword}

EL(Expression Language)

作用: 它是JSP中专门用于从四大作用域中取数据的一种表达式语言。

四大作用域:(用来存储数据 本质上都是集合)

  • page:存储的数据只能在当前JSP页面使用
  • request:存储的数据只能在一次请求中有效(请求转发可以保证请求不会冲刺你发起)
  • session:存储的数据只能在同一个会话中有效(只要浏览器不完全关闭,都属于一个会话,其他利用的cookie技术)
  • application:存储的数据可以在整个应用中都有效(服务器开启则可以使用,关闭则自动销毁)
2.EL的基本语法

从作用域中取出变量数据


${
   作用域中的变量名}
例如:request.setAttribute("username","赵经理");
取数据:${
   username}
// EL在取数据时,如果查找不到,则默认不显示,不像之前的getAttribute()系列返回null

// 完整写法
${
   pageScope.键名}
${
   requestScope.键名}
${
   sessionScope.键名}
${
   applicationScope.键名}

// 当前用上方的简写形式时,他会默认从 page -  request - session - application 依次查找数据(范围小->范围大)
3.EL操作各类型数据
  • EL操作数组:

    例如${nameArr[索引]}

  • El操作对象

    可以使用.来获取对象的属性,也可以使用[] ,实质上调用的还是get/set方法

用户名:${
   loginUser.username}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值