zoukankan      html  css  js  c++  java
  • jstl练习2

    一.本例不导包,请看练习1

     1 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
     2 <%--
     3   Created by IntelliJ IDEA.
     4   User: Administrator
     5   Date: 2017/9/11
     6   Time: 20:30
     7   To change this template use File | Settings | File Templates.
     8 --%>
     9 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    10 <html>
    11 <head>
    12     <title>set标签的使用</title>
    13 </head>
    14 <body>
    15 <h3>代码给出了指定scope范围赋值的示例</h3>
    16 <ul>
    17     <%--1.通过<c :set>标签将data1的值放入page范围中国.--%>
    18     <li>把一个值放入page域中: <c :set var="data" value="data" scope="page"/> </li>
    19     <%----%>
    20         <%--2.使用EL表达式从pageScope得到data1的值。--%>
    21         <li>从page域中得到值:${pageScope.data1}</li>
    22         <%--3.通过<c:set>标签将data2的值放入request范围中。--%>
    23         <li>把一个值放入request域中:<c:set var="data2" value="gacl" scope="request"/></li>
    24         <%--4.使用EL表达式从requestScope得到data2的值。--%>
    25         <li>从request域中得到值:${requestScope.data2}</li>
    26         <%--通过<c:set>标签将值name1的值放入session范围中。--%>
    27         <li>把一个值放入session域中。<c:set value="呵呵" var="name1" scope="session"></c:set> </li>
    28         <%--使用EL表达式从sessionScope得到name1的值。--%>
    29         <li>从session域中得到值:${sessionScope.name1} </li>
    30         <%--把name2放入application范围中。 --%>
    31         <li>把一个值放入application域中。<c:set var="name2" scope="application">白虎神皇</c:set></li>
    32         <%--使用EL表达式从application范围中取值,用<c:out>标签输出使得页面规范化。 --%>
    33         <li>使用out标签和EL表达式嵌套从application域中得到值:
    34             <c:out value="${applicationScope.name2}">未得到name的值</c:out>
    35         </li>
    36         <%--不指定范围使用EL自动查找得到值 --%>
    37         <li>未指定scope的范围,会从不同的范围内查找得到相应的值:${data1}、${data2}、${name1}、${name2}</li>
    38 </ul>
    39 
    40 </body>
    41 </html>

    二.

     1 <!DOCTYPE web-app PUBLIC
     2  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
     3  "http://java.sun.com/dtd/web-app_2_3.dtd" >
     4 
     5 <web-app>
     6   <display-name>Archetype Created Web Application</display-name>
     7   <welcome-file-list>
     8     <welcome-file>/jstl/jstl1.jsp</welcome-file>
     9   </welcome-file-list>
    10 </web-app>

    三.结果

     1 <%@ page import="java.util.HashMap" %>
     2 <%@ page import="java.util.Map" %><%--
     3   Created by IntelliJ IDEA.
     4   User: Administrator
     5   Date: 2017/9/11
     6   Time: 20:54
     7   To change this template use File | Settings | File Templates.
     8 --%>
     9 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    10 <html>
    11 <head>
    12     <title>Title</title>
    13 </head>
    14 <body>
    15 <h3>使用Java脚本实现以上功能</h3>
    16 <ul>
    17     <li>把一个值放入page域中。<%pageContext.setAttribute("data1","xdp");%></li>
    18     <li>从page域中得到值:<%out.println(pageContext.getAttribute("data1"));%></li>
    19     <li>把一个值放入request域中。<%request.setAttribute("data2","gacl");%></li>
    20     <li>从request域中得到值:<%out.println(request.getAttribute("data2"));%></li>
    21 
    22     <li>把一个值放入session域中。<%session.setAttribute("name1","");%></li>
    23     <li>从session中域得到值:<%out.println(session.getAttribute("name1"));%></li>
    24     <%--out.println()方法与<%=%>表达式输出功能一样
    25     但使用表达式输出(<%=%>)明显要比使用out.println()输出更好。
    26     --%>
    27     <li><%=session.getAttribute("name1") %></li>
    28     <li>把另一个值放入application域中。<%application.setAttribute("name2","");%></li>
    29     <li> 从application域中得到值:<%out.println(application.getAttribute("name2"));%></li>
    30     <li><%=application.getAttribute("name2")%></li>
    31 
    32     <li>未指定scope的范围,会从不同的范围内查找得到相应的值:
    33         <%=pageContext.findAttribute("data1")%>34         <%=pageContext.findAttribute("data2")%>35         <%=pageContext.findAttribute("name1")%>36         <%=pageContext.findAttribute("name2")%>
    37     </li>
    38 </ul>
    39 <hr/>
    40 <h3>操作JavaBean,设置JavaBean的属性值</h3>
    41 <%--设置JavaBean的属性值,等同与setter方法,Target指向实例化后的对象,property指向要插入值的参数名。
    42 注意:使用target时一定要指向实例化后的JavaBean对象,也就是要跟<jsp:useBean>配套使用,
    43 也可以java脚本实例化,但这就失去了是用标签的本质意义。
    44 使用Java脚本实例化:
    45 <%@page import="javabean.Person"%
    46 <% Person person=new Person(); %>
    47  --%>
    48 <c:set target="${person}" property="name">孤傲苍狼</c:set>
    49 <c:set target="${person}" property="age">25</c:set>
    50 <c:set target="${person}" property="sex">男</c:set>
    51 <c:set target="${person}" property="home">中国</c:set>
    52 <ul>
    53     <li>使用的目标对象为:${person}</li>
    54     <li>从Bean中获得的name值为:<c:out value="${person.name}"></c:out></li>
    55     <li>从Bean中获得的age值为:<c:out value="${person.age}"></c:out></li>
    56     <li>从Bean中获得的sex值为:<c:out value="${person.sex}"></c:out></li>
    57     <li>从Bean中获得的home值为:<c:out value="${person.home}"></c:out></li>
    58 </ul>
    59 <hr/>
    60 <h3>操作Map</h3>
    61 <%
    62     Map map = new HashMap();
    63     request.setAttribute("map",map);
    64 %>
    65 <%--将data对象的值存储到map集合中 --%>
    66 <c:set property="data" value="gacl" target="${map}"/>
    67 ${map.data}
    68 </body>
    69 </html>
    70 </body>
    71 </html>

    结果:

    out标签功能:

     1 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
     2 <%--
     3   Created by IntelliJ IDEA.
     4   User: Administrator
     5   Date: 2017/9/11
     6   Time: 20:59
     7   To change this template use File | Settings | File Templates.
     8 --%>
     9 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    10 <html>
    11 <head>
    12     <title>out标签的使用</title>
    13 </head>
    14 <body>
    15 <c:out value="输出字符串"></c:out>
    16 <c:out value="${EL表达式}"/>
    17 <c:out value="${null}" default="这个显示默认值"/>
    18 <c:out value="${null}"/>
    19 </body>
    20 </html>
     1 <!DOCTYPE web-app PUBLIC
     2  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
     3  "http://java.sun.com/dtd/web-app_2_3.dtd" >
     4 
     5 <web-app>
     6   <display-name>Archetype Created Web Application</display-name>
     7   <welcome-file-list>
     8     <welcome-file>/jstl/jstl3.jsp</welcome-file>
     9   </welcome-file-list>
    10 </web-app>

    结果:

    choose及其嵌套标签

     1 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
     2 <%--
     3   Created by IntelliJ IDEA.
     4   User: Administrator
     5   Date: 2017/9/11
     6   Time: 21:53
     7   To change this template use File | Settings | File Templates.
     8 --%>
     9 <%@ page contentType="text/html;charset=UTF-8" language="java"  import="java.util.*" isELIgnored="false" %>
    10 <html>
    11 <head>
    12     <title>choose 及其嵌套标签示例</title>
    13 </head>
    14 <body>
    15 <h4>choose 机器嵌套标签示例</h4>
    16 <hr>
    17 <%--通过set标签设定score的值为85--%>
    18 <c:set var="score" value="95"/>
    19 <c:choose>
    20     <%--使用<c:when>进行条件判断.
    21     如果大于等于90,输出"你的成绩为优秀"
    22     如果大于等于70小于90,输出"你的成绩为良好"
    23     大于等于60小于70,输出"你的成绩为合格'
    24     其他(otherwise) 输出"对不起,你没有通过考试"
    25     --%>
    26     <c:when test="${pageScope.score>=90}">
    27         <c:out value="你的成绩为优秀"/>
    28     </c:when>
    29     <c:when test="${pageScope.score>70&&pageScope.score<90}">
    30         <c:out value="你的成绩为良好"/>
    31     </c:when>
    32     <c:when test="${pageScope.score>60&&pageScope.score<70}">
    33         <c:out value="你的成绩为及格"/>
    34     </c:when>
    35     <c:otherwise>
    36         <c:out value="对不起,你没有通过考试"/>
    37     </c:otherwise>
    38 </c:choose>
    39 </body>
    40 </html>

    结果如下:

  • 相关阅读:
    使用序列化实现对象的拷贝
    SQL连接查询深度探险
    关于ArrayList和Vector区别
    list_arrayList三种遍历性能比较
    Java过滤器与SpringMVC拦截器之间的关系与区别
    遍历map 哪种方式更加高效。
    Http请求中Content-Type讲解以及在Spring MVC中的应用
    sql语句练习50题
    在js中初始化select数据
    java浮点数剖析
  • 原文地址:https://www.cnblogs.com/1218-mzc/p/7507024.html
Copyright © 2011-2022 走看看