JSP8

Posted Hawk喵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSP8相关的知识,希望对你有一定的参考价值。

 一.EL表达式

  JSP表达式语言(EL)使得访问存储在JavaBean中的数据变得非常简单。JSP EL既可以用来创建算术表达式也可以用来创建逻辑表达式。在JSP EL表达式内可以使用整型数,浮点数,字符串,常量true、false,还有null

EL中的基础操作符

1.${表达式} (这个是可以运算的,在jsp中就可以省去<% %>,无java代码)

 

 1 ${100+100}<br>
 2 
 3      2=2${2==2}<br>
 4 
 5 4>3${4>3 }<br>
 6 
 7  
 8 
 9 <%
10 
11   String s=null;
12 
13  %>
14 
15     empty${empty s }<br>
16 
17    
18 
19     4>3${4 gt 3 }<br>
20 
21     4>3 and 4>2${4 gt 3 && 4 gt 2 }

 

JSP EL隐含对象

2.使用el表达式取表单数据

 

${param.num} 取单个数据
 <br/>
 ${paramValues.data[0]}
 ${paramValues.data[1]}<br/>
  取多个值

 

3.使用el表达式取对象与对象中的属性

 

 1     ${stu} 取对象
 2 
 3     ${stu.name} 对象中的属性
 4 
 5     <br/>
 6 
 7     ${stu.age }对象中的属性
 8 
 9     <br/>
10  
11     ${stu["name"]}对象中的属性
12 
13     ${stu["age"]}对象中的属性
14 
15     <br/>

二.Jstl表达式 

JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。

JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。

 

根据JSTL标签所提供的功能,可以将其分为5个类别。

  • 核心标签
  • 格式化标签
  • JSTL 函数
  • SQL 标签
  • XML 标签

 

核心标签

1. 引用核心标签库的语法如下:

使用jstl标签库,要在jsp头部添加

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

 

用法如下:

1 <c:set var= "example" value="${100+1}" scope="session"  />    定义变量
2 
3 <c:out value="${example}"/> 输出变量
4 
5 <c:remove var= "example" scope="session"/> 删除变量
6 
7 <br/>
8 
9 <c:out value="${example}"/>

2.条件:

 单条件:

<c:set var= "example" value="${100+1}" scope="session"  />  

    <c:if test="${example>100}">

    <c:out value="${example}"/>

</c:if>

 

两个条件:

<c:set var= "example" value="${100-1}" scope="session"  />   

    <c:choose> 

    <c:when test="${example>100 }">

      example>100

    </c:when> 

    <c:otherwise>

      exmaple<=100

    </c:otherwise>

</c:choose>

多个条件:

<c:set var= "example" value="${1000}" scope="session"  />

    <c:choose>

    <c:when test="${example>100 }">

      example>100

    </c:when>

     <c:when test="${example==100 }">

      example=100

    </c:when>

    <c:otherwise>

      exmaple<100

    </c:otherwise> 

    </c:choose>

3.循环:

    <c:set var="nums" value="1,2,3,4" scope="request"/>   

  <c:forEach items="${nums}"  var="item">

    ${item}<br/>

  </c:forEach>

4.Javabean对象与El表达式与jstl标签库的综合使用:

 1        <c:forEach items="${requestScope.lists}" var="product"  varStatus="status">
 2 
 3                       <!-- 如果是偶数行,为该行换背景颜色 -->
 4 
 5                      <tr <c:if test="${status.index % 2 == 1 }"> style=""</c:if>
 6 
 7                      >
 8 
 9                     
10 
11                          <td>
12 
13                                 ${status.index  }
14 
15                            </td>
16 
17                            <!-- 商品名称 -->
18 
19                            <td>
20 
21                                 ${product.name }
22 
23                            </td>
24 
25                            <!-- 产地 -->
26 
27                            <td>
28 
29                                 ${product.area }
30 
31                            </td>
32 
33                            <!-- 价格 -->
34 
35                            <td>
36 
37                                 ${product.price }
38 
39                            </td>
40 
41                      </tr>
42 
43                 </c:forEach>

 

格式化标签

JSTL格式化标签用来格式化并输出文本、日期、时间、数字。引用格式化标签库的语法如下:

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

JSTL函数

JSTL包含一系列标准函数,大部分是通用的字符串处理函数。引用JSTL函数库的语法如下:

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

 

以上是关于JSP8的主要内容,如果未能解决你的问题,请参考以下文章

Javaweb二(JSP详解)

Javaweb二(JSP详解)

微信小程序代码片段

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?