javaweb实训第四天上午——员工管理系统-JavaBean&EL&JSTL&MVC思想(1)https://developer.aliyun.com/article/1414835
4.3.EL表达式访问四大作用域的绑定值
搭建环境:分别从各大作用域里面取值
EL取值的顺序:在作用域范围我们的名字取成一样了,怎么去找到特定的一个作用域中的值呢??
结论:它查询找的顺序 -> 从小至大,先取小的范围的值,小的没有,在取到大的范围的值:
pageContext --> request --> session --> application
以后我们常用的是request和session,有时候如果没有一个规范的时候,我们取的名字会重复:
第一种解决方案:前面添加一个前缀,确定到哪个作用域拿,比如下面:
${pageScope.msg}
${requstScope.msg}
${sessionScope.msg}
${applicationScope.msg}
例子:
第二种解决方案:名字规范比如:XXX_IN_SESSION
4.4.EL表达式访问JavaBean中的属性
方式一:${对象名.属性名}
– 常用
方式二:${对象名["属性名"]}
– 一般在属性名有特殊字符时才使用
注意:
1.对象名可以从四大作用中获取;
2.对象名写错显示空字符串,属性名写错要报错;
4.5.EL其他特性
1.EL算术运算符 (1)${1+2} ${2-1} ${2*3} ${16/5} 2.EL关系运算符 (1)${16>5} 或 ${16 gt 5} (2)${16<5} 或 ${16 lt 5} (3)${16>=5} 或 ${16 ge 5} (4)${16<=5} 或 ${16 le 5} (5)${1==2} 或 ${1 eq 2} (6)${2!=1} 或 ${2 ne 1} 3.EL逻辑运算符 (1)${true && true}:结果 true (2)${true and true}:结果true (3)${true || false} ${true or false}:结果 true (4)${!true} 或 ${not true}:结果false 4.EL其他运算符 (1)${empty param.name} :如果param.name 为空返回true否则false 5.EL三目运算符 (1)${A?B:C},比如:${user.sex?"男":"女"}
4.6.EL注意事项
4.6.1.注意一
特殊的写法:session.setAttribute(“KEY.IN.SESSION”, “你是session”)
错误写法:${sessionScope.KEY.IN.SESSION}
代码如下:
正确写法:${sessionScope[“KEY.IN.SESSION”]}
这样才拿得到值:
正确写法:${sessionScope[“KEY.IN.SESSION”]}
这样才拿得到值:
5.JSTL
引入:页面上的Java代码,对于前端开发人员无疑是一种累赘,而且大量的java代码也会破坏页面的整体效果。所以为了将页面中Java代码替换掉,可以使用JSTL帮助我们我们去消除Java代码,那么以后将不会再页面中出现:<% %>、<%! %>、<%= %>
5.1.JSTL是什么
JSTL(JavaServer Pages Standard Tag Library):JSP标准标签库,标签库由标签库和EL表达式语言两个部分组成,用来消除JAVA代码:
上面的代码就可以使用标签代替,但是这个标签不能随便写,Java已经给我统一一套标签这个标签叫JSTL;
所以要使用JSTL,必须使用标签,所以也必须导入Java提供好的标签库;
javaweb实训第四天上午——员工管理系统-JavaBean&EL&JSTL&MVC思想(3)https://developer.aliyun.com/article/1414837?spm=a2c6h.13148508.setting.15.6e1a4f0eQzpjQW