javaweb基础整理随笔------jstl与el表达式
虽然jsp中可以写java代码,但是现在不推荐这么做。
jsp虽然本质是servlet,但是主要作用只是视图,视图的任务就是显示响应,而不是在JSP中做任何关于程序控制和业务逻辑的事情。所以在JSP页面中应该尽可能少的、或者是完全不出现Java代码。
JSP标准动作中没有提供这种嵌套式访问机制,所以要想实现这个功能,就只能在JSP页面中通过Java代码来读取 Object类型的属性。从JSP2.0之后,可以使用EL表达式来处理这样的的问题。
EL表达式语言是一种简单的语言,提供了在JSP中简化表达式的方法,目的是为了尽量减少JSP页面中的Java代码,使得JSP页面的处理程序编写起来更加简洁,便于开发和维护。
el表达式语言用法:${ }
作用:读取四大域中的数据
注意:如果要忽略el表达式,1、在page标签中设置属性isELIgnored值为true 2、在表达式前加\
全域查找:${name}
page域:${pageScope.name } <!-- 取page域中name的值 -->
request域:${requestScope.name }
session域:${sessionScope.name }
application域:${applicationScope.name }
javaBean规范:
1.必须要有一个默认构造方法
2.提供get/set方式,
3.有get/set方法的成员变量,属性名称由get/set方法去掉get/set后,首字母小写
el表达式提供两种运算符来存取数据 . []
.:在el表达式中 获取对象中的数据,有get方法就能获取到,不一定要有变量
[]:一样通过下标取集合里的元素
而jstl则是开放源代码的JSP标签库,封装了jsp应用的通用核心功能
由于可以完成对逻辑部分的大部分实现,本质上也减少了再jsp中使用脚本语言编译也就是java代码的数量。
举例
1.core:核心标签库
<c:set>设置
var:变量名
value:变量值
scope:域,默认是page
<c:out>输出
value:可以是字符串常量,可以是el表达式
defalut:当输出的内容为null时,则输出此值
escapeXml:转义,默认值为true 默认转 就是当成字符串
<c:if>
<c:choose><c:when></c:when>...<c:otherwise></c:otherwise></c:choose>
<c:remove>
<c:foresch>
<c:redirect>
<c:url>
2.fmt:格式化标签库
3.sql:数据库标签库
4.xml:xml标签库
<c:set var="salary" value="6000"></c:set>
<c:choose>
<c:when test="${salary < 2000}">
<p>温饱</p>
</c:when>
<c:when test="${salary >2000 && salary < 5000}">
<p>小康</p>
</c:when>
<c:when test="${salary > 5000}">
<p>有钱了</p>
</c:when>
<c:otherwise> <!-- 上述选择都不是 otherwise -->
<p>。。。</p>
</c:otherwise>
</c:choose>
- JavaWeb基础入门--JSTL和EL表达式
- JavaWeb学习笔记:初识EL表达式和JSTL
- Python随笔(一) 基础知识整理
- javaWeb el表达式和jstl快速入门案例
- JAVA高级工程师课程笔记整理——(十一)EL表达式与JSTL
- JAVA基础之JDBC开发、JSTL语法、EL表达式与数据分页
- javaweb基础学习(四)<jstl>
- ASP.NET基础学习未整理随笔
- JSP基础:六、EL表达式、JSTL标签和乱码解决
- 《JavaWeb---简单应用---服务器向客户端提供音乐资源》---用到的技术dom4j,JSTL,EL表达式
- el表达式和jstl整理
- java基础--jstl和el表达式
- javaWeb jstl的基础使用
- 【java基础】JSTL之EL表达式
- 方立勋_30天掌握JavaWeb_JavaBean、mvc开发模式、el表达式、jstl标签
- EL表达式与JSTL标签的基础知识小结
- JavaWeb整理-数据库基础/数据库介绍.MySQL安装.DB DBS DBMS关系.登陆MySQL.SQL语言认识..SQL语言对数据库操作.SQL语言对数据表操作.SQL语言对数据表中的记录操作
- Javaweb学习笔记6—EL表达式与JSTL及自定义标签
- 数字电路基础(网络整理)
- EXTJS 基础知识点整理