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()
- paramValue - request.getParamValue
- header - request.getHeader(name)
- headerValue - request.getHeaderValues()
- initParam - this.getServletContext().getInitParamter(name)
- cookie - request.getCookies()---cookies.getName()---cookies.getValue()
- pageContext
- pageContext获取其他八大对象
- 获取当前项目名称 - ${pageContext.request.contextPath}
EL执行表达式
- 内部可以运算,只要有结果
- ${1+1}
- ${empty user}
- ${user==null?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标签
- 通过结合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层 - 与数据库进行交互
此处为从零玩转java之无web服务器课堂笔记,方便复习.
最后推荐一个博客主 蚂蚁小强:https://www.cnblogs.com/myxq666/
- 全栈视频学习网站:撩课学院(www.itlike.com)