EL表达式 与 JSTL标准标签库

EL表达式

什么是EL表达式

  • EL(Express Lanuage)表达式可以嵌入在jsp页面内部
  • 减少jsp脚本的编写
  • EL出现的目的是要替代jsp页面中脚本的编写。

作用

​ EL最主要的作用是获得四大域中的数据

从四大域当中取数据
pageContext
${pageScope.key}
request
${requestScope.key}
session
${sessionScope.key}
application
${applicationScope.key}

简写
${EL表达式}
EL从四个域中获得某个值${key}
依次从pageContext域,request域,session域,application域中获取属性
在某个域中获取后将不在向后寻找

EL内置11对象

pageScope
	获取JSP中pageScope域中的数据
requestScope
	获取JSP中requestScope域中的数据
sessionScope
	获取JSP中sessionScope域中的数据
applicationScope
	获取JSP中applicationScope域中的数据
param
	request.getParameter()
paramValues
	rquest.getParameterValues()
header
	request.getHeader(name)
headerValues
	request.getHeaderValues()
initParam
	this.getServletContext().getInitParameter(name)
cookie	
	request.getCookies()---cookie.getName()---cookie.getValue()
pageContext
	pageContext获得其他八大对象
	获取当前项目的名称
	${pageContext.request.contextPath}

EL执行表达式

  • 内部可以进行运算,只要有结果
  • $
  • ${empty user} 判断user是否为空?为空返回true,不为空则返回false
  • $

JSTL

什么是JSTL

  • JSTL(JSP Standard Tag Library),JSP标准标签库
  • 可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能
  • jstl出现的目的同el一样也是要代替jsp页面中的脚本代码

JSTL标准标签库有5个子库

Core :核心库
http://java.sun.com/jsp/jstl/core
前缀:c

I18N:国际化库
http://java.sun.com/jsp/jstl/fmt
前缀:fmt

SQL
http://java.sun.com/jsp/jstl/sql
前缀:sql

XML
http://java.sun.com/jsp/jstl/xml
前缀:x

Functions
http://java.sun.com/jsp/jstl/functions
前缀:fn

把JSTL标签库jar包引入工程当中

​ 引入标签库
​ <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

if标签

<c:if test="${1==1 }">满足条件时,中间的内容才会显示出来</c:if>
通过是结合EL表达式一起使用,EL从域中取数据,使用JSTL进行判断或者遍历

if标签使用

1.登录成功时,把用户写到session域当中

2.在首页当中进行判断,从session域当中取数据

3.通过EL结合JSTL进行判断

foreach标签

第一种:普通循环

第二种:增加for循环

遍历字符串集合

遍历对象集合

遍历map

商品列表展示

JavaEE开发模式

什么是开发模式

​ 模式在开发过程中总结出的“套路”,总结出的一套约定俗成的设计模式

JavaEE模式

model1模式
	由 jsp+javaBean 技术组成
	弊端
		业务多时,导致jsp页面容易混乱
model2模式
	由 jsp+servlet+javaBean 技术组成
	优点
		开发中使用各个技术擅长的方面
        servlet擅长java的业务代码
        jsp擅长页面的展示
     MVC
        Model--javaBean--封装数据
        View--JSP--页面展示
        Controller--servlet--获取数据,对数据进行封装,传递数据、指定页面显示
三层架构
	web层--与客户端交互
	service层--复杂业务逻辑
	dao层--与数据库进行交互
posted @ 2019-03-26 22:14  海韵༒听心  阅读(232)  评论(0编辑  收藏  举报