【前言】
jsp2.0之后,页面上几乎不使用Java脚本了,其实不难理解,因为在计算机中程序分工越来越明确,三层,mvc的使用都是程序划分层次结构的产物,jsp只能用做页面的显示,所以JSTL标签库和EL表达式应运而生,他们的作用没有<%%>强大,但正是规范使用jstl和el表达式才限制了不能jsp页面不能参与逻辑运算,单一的做页面的显示。
【内容】
表达式语言EL:
1.使用EL表达式不需要引入任何jar包,只要jsp/servlet容器实现了J2EE1.4/Servlet2.4,JSP2.0规范就可以。语法:${};
2.基本使用:
servlet中设置:
/**
* 测试JSTL的el标签库
* @author cyl520
*
*/
public class JstlServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("hello", "北京欢迎你!");
request.setAttribute("welcome","欢迎您来到这个世界);
request.setAttribute("v1",10);
request.setAttribute("v2",20);
request.getRequestDispatcher("/jstl_el.jsp").forward(request, response);
}
}
jstl_el.jsp的获取方式:
一.常规方式
<%=request.getParameter("username")%>
二. el表达式:
1.获取值的方式:${username};
${welcome}_只能获取红色字体(欢迎您来到这个世界)
2.设置从指定的范围内获取值:${requestScope.hello}
3.没有值会自动设置为空的字符串:${sessionScope.hello}
JSTL:
它是SUN的标准的taglib库, 全称是(Jsp Standard Tag Library),它封装了jsp应用的通用核心功能,标签库中隐含了el表达式。
作用:
①.迭代和条件判断
②.数据管理格式化
③.xml操作
④.数据库访问(一般不使用,因为页面只做显示)
⑤.函数标签库
JSTL的标签库分为了五种类型:
核心标签(c):最常用的标签库
格式化标签(fmt):STL格式化标签用来格式化并输出文本、日期、时间、数字。
sql标签(sql):JSTL SQL标签库提供了与关系型数据库(Oracle,MySQL,SQL Server等等)进行交互的标签;
xml标签(x):JSTL XML标签库提供了创建和操作XML文档的标签;需要将xml和xpath的相关包拷贝到你的tomcat安装的目录\lib下;
JSTL函数(fn):JSTL包含一系列标准函数,大部分是通用的字符串处理函数
基本配置使用:
在jsp页面上引入核心标签库:
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>