黑马程序员技术交流社区
标题:
【石家庄校区】EL&JSTL与MVC初识
[打印本页]
作者:
巴拉巴拉x
时间:
2018-5-21 10:42
标题:
【石家庄校区】EL&JSTL与MVC初识
本帖最后由 巴拉巴拉x 于 2018-5-21 10:45 编辑
EL&JSTL与MVC初识
EL
EL的概述
Expression Language 表达式语言
EL的作用
简化JSP的代码,而且减少<% % >
使用EL表达式
语法: ${EL表达式 }
EL的功能
获取数据:JSP的四个域,好像只能从这四个域中获取数据--->在域中用什么名字存的,就用什么名字取出来,存进去的是什么数据类型,取出来也是什么数据类型.
用域对象获取值:如果没找到,返回null
用el表达式获取值,如果没找到,返回 ""(空字符串)
从指定的域中获取数据
${
pageScope.name
}
${
requestScope.name
}
${
sessionScope.name
}
${
applicationScope.name
}
${ 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
执行三元运算
${n1 < n2 ? "正确" : "错误"}
empty运算
${user == null} ---> ${empty user}
${user != null} ---> ${not empty user}
不能进行位运算
操作web开发的常用对象
pageScope:只能获取域中的值
requestScope
sessionScope
applicationScope
param
paramValues
header
headerValues
initParam :获取全局化参数
cookie : web开发中的cookie
${cookie.名字.value}
pageContext: web开发中的pageContext
${pageContext.request.contextPath}:工程名.结果是 / 工程名
可以获取其他八个对象.EL中不能直接写其他八个对象,
调用Java中的方法(自定义标签文件,把方法注册到标签中,不常用)
JSTL
作用:简化页面的Java代码书写
JSTL和EL结合 替换页面中 <% % >
现在常用的功能
判断
c:if test="条件"
遍历
c:foreach
数组
集合
Map
版本
JSTL1.0 :不支持EL表达式
JSTL1.1和1.2 :支持EL表达式
JSTL的标签库:包含了五类标签
core:核心标签
fmt:国际化标签
fn:JSTL提供的EL函数库
xml
sql
使用JSTL
引入jar包
在页面中引入标签库
<%@ taglib uri="" prefix= "" %>
带路径带jsp的是1.1版本的
由JSTL提供的EL函数库
主要是用来处理字符串的
引入一个新的标签库
以fn开头
${ fn: contains("Hello World","Hello")${ fn: length(字符串) }${fn:toLowerCase(字符串)}....
MVC 设计模式
模式一
JSP + JavaBean
模式二
JSP + JavaBean + Servlet
也叫做MVC模式
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2