JSTL+EL表达式让jsp页面

2018-04-28  本文已影响0人  java日记

【前言】

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","<font color='red'>欢迎您来到这个世界</font>);

        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" %>  <!--核心标签库>

1.在页面上显示数据:<c:out value="123"/>

2.通过内置的el表达式获取request中的值:<c:out value="${hello}"/>

3.在jstl标签中没有值可以随意设定值:<c:out value="${hello123} "defalut="没有值">

4.设置html字符串样式出现与否(escapeXML):<c:out value="${welcom3}" escapeXML="false"></c:out>  ——出现红色字体的样式

<c:out value="${welcome}" escapeXML="true"></c:out> ——取消红色字体的样式;

5.采用c:set设置值  <c:set value="root" var="userid"/>

userid:${userid}

6.简单if判断 <c:if test="${v1 lt v2}">v1小于v2</c:if>

。。。。。。。。。。。。。。。。。。。。。。。。。

【总结】

单纯的使用el表达式,只能进行相应的数据的显示,并不能对页面的数值设置,并且进行简单的if判断;但是JSTL标签库+EL表达式扩展了el表达式功能,使jsp页面显示更加简洁!

上一篇 下一篇

猜你喜欢

热点阅读