本帖最后由 巴拉巴拉x 于 2018-5-21 10:45 编辑
EL&JSTL与MVC初识
EL
EL的概述- Expression Language 表达式语言
EL的作用使用EL表达式EL的功能- 获取数据:JSP的四个域,好像只能从这四个域中获取数据--->在域中用什么名字存的,就用什么名字取出来,存进去的是什么数据类型,取出来也是什么数据类型.
- 用域对象获取值:如果没找到,返回null
- 用el表达式获取值,如果没找到,返回 ""(空字符串)
- 从指定的域中获取数据
- ${ name } 相当于 pageContex.findAttribute(name).优先级也一样
- page > request > session > application
- $ {}外面不需要些分号
- 属性用.下标(索引)用
- []和点(.)的区别
- []用于有下标的数据(数组,list集合),而.用于有属性的数据(map,对象)
- 属性中有特殊字符的时候就不能用.而用[],而且放括号内属性名称要用双引号,
- 一个${},只能获取一个值,
- .属性,其实是调用的get方法,如果对象中没有get方法则无法取出.
- 执行运算
- 算数运算
- '+' '-' '*' '/'
- 默认类型转换,把数字字符串转换成数字再进行运算.
- 逻辑运算
- ${n1 < n2} 或者 ${n1 lt n2}
< ---> lt ---> less than ; > ---> gt ---> great than ; == ---> eq---> equals ; <= ---> le---> less equals ; >= ---> ge---> great equals - 关系运算
&& ---> and|| ---> or! ---> not - 执行三元运算
- empty运算
- ${user == null} ---> ${empty user}
- ${user != null} ---> ${not empty user}
- 不能进行位运算
- 操作web开发的常用对象
- pageScope:只能获取域中的值
- requestScope
- sessionScope
- applicationScope
- param
- paramValues
- header
- headerValues
- initParam :获取全局化参数
- cookie : web开发中的cookie
- pageContext: web开发中的pageContext
- ${pageContext.request.contextPath}:工程名.结果是 / 工程名
- 可以获取其他八个对象.EL中不能直接写其他八个对象,
- 调用Java中的方法(自定义标签文件,把方法注册到标签中,不常用)
JSTL
- 作用:简化页面的Java代码书写
- JSTL和EL结合 替换页面中 <% % >
- 现在常用的功能
- 版本
- JSTL1.0 :不支持EL表达式
- JSTL1.1和1.2 :支持EL表达式
- JSTL的标签库:包含了五类标签
- core:核心标签
- fmt:国际化标签
- fn:JSTL提供的EL函数库
- xml
- sql
- 使用JSTL
- 引入jar包
- 在页面中引入标签库
- <%@ taglib uri="" prefix= "" %>
- 由JSTL提供的EL函数库
- 主要是用来处理字符串的
- 引入一个新的标签库
- 以fn开头
${ fn: contains("Hello World","Hello")${ fn: length(字符串) }${fn:toLowerCase(字符串)}....
MVC 设计模式
|
|