为了账号安全,请及时绑定邮箱和手机立即绑定

JSP常用标签

难度初级
时长 1小时42分
学习人数
综合评分9.70
168人评价 查看评价
9.8 内容实用
9.7 简洁易懂
9.6 逻辑清晰
  • 什么是jstl以及为什么要使用jstl

    https://img1.sycdn.imooc.com//5b69bc8f0001d9ec05590237.jpg

    查看全部
    0 采集 收起 来源:为什么使用JSTL

    2018-08-07

  • 常用 JSTL 函数

    查看全部
    0 采集 收起 来源:课程总结

    2018-07-08

  • JSTL

    一、环境搭建

    1.下载:http://archieve.apache.org/dist/jakarta/taglibs/standard/binaries/jakarta-taglibs-standard-1.1.2.zip

    2.将zip包中的standard.jar jstl.jar 导入项目中

    3.jsp页面引入jstl核心标签库  

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


    二、JSTL标签的四大分类及JSTL函数

    ·核心标签 -最常用,最重要

    ·格式化标签

    SQL标签

    XML标签

    ·JSTL函数



    变量通过EL(Expression Language)表达式获取

    ·EL表达式格式 ${表达式}

      1"."与"[]"运算符

    ·通常情况是通用的${user.sex} ${user["sex"]}

    ·"[]"还可以用来进行集合元素中的定位 ${booklist[0].price}

    ·2种情况不能通用

      (1)包含特殊字符 ${user.first-name} ${user["first-name"]}

      (2)通过变量动态取值:${user[param]}

    ·param可以是name or sex or others

    ·"."的写法是${user.name} or  ${user.sex} or...


    ·EL变量

    https://img1.sycdn.imooc.com//5b38eaa100019d8812950696.jpg



    ·EL自动类型转换  


     

    ·EL隐式对象

    https://img1.sycdn.imooc.com//5b38eab10001c5e312950697.jpg

    ·EL运算符

    https://img1.sycdn.imooc.com//5b38ead80001c58712950697.jpg



    ·表达式控制标签详解-out

        -输出常量  可在value属性中直接复制

        -输出变量  变量不存在是可配合default属性输出默认值,还可以通过escapeXml控制转义字符的输出方式(需要变成转移字符时escapeXml="false")


    ·表达式控制标签详解-set

        -存值到scope中   可将值以变量形式存放到制定范围中(2种方式)

    <c:set value="today" var="day" scope="session"></c:set>

    <c:set var="day" scope="application">today</c:set>


        -存值到JavaBean的属性中   需要配合target属性指定对象并且通过property属性指定要赋值给对象中的哪个属性

    <c:set target="${person}" property="name" value="zhangsan"></c:set>

    ·表达式控制标签详解-remove

        -remove掉某个变量 -var属性必选 -scope属性是可选

    <c:remove var="day"/>    -remove只能remove掉某个变量,不能remove某个对象中的属性

    ·表达式控制标签详解-catch

        -catch标签中可以包含那些容易出错的JSTL标签

    <!--将错误信息存放到名为error的变量中-->

    <c:catch var="error">

    </c:catch>


    ·流程控制标签详解-if

        -用来实现分支条件控制

    <c:if test="" var="" scope=""></c:if>

    ·test属性用于存放判断的条件,一般使用EL表达式来编写

    ·var指定名称用来存放判断的结果类型为true或false

    ·scope用来存放var属性存放的范围

    ·流程控制标签详解-choose,when,otherwise

        -通常这三个标签被放在一起配合使用

        - <c:choose>标签嵌套在<c:when>和<c:otherwise>标签的外面作为他们的父标签来使用

        -其中choose和when标签也可以一起组合使用

    <c:choose>

    <c:when test="判断条件">

    //业务逻辑1

    </c:when>

    <c:when>

    //业务逻辑2

    </c:when>

    <c:otherwise>

    //业务逻辑3

    </c:otherwise>

    </c:choose>


    ·循环控制标签详解-forEach

        -根据循环条件遍历集合(Collection)中的元素

    ·var设定变量名用于存储从集合中取出元素(必须 无默认值)

    ·items指定要遍历的集合(必须 无默认值)

    ·begin、end用于指定遍历的起始位置和终止位置(有默认)

    ·step指定循环的步长(有默认)

    ·varStatus通过index,count,first,last几个状态值,描述begin和end子集中的元素状态

    <c:forEach var="fruit" items="${fruits}" begin="1" end="4" varStatus="fru">

    <c:out value="${fruit}属性${fru.index} ${fru.count}"></c:out>

    </c:forEach>


    ·循环控制标签详解-forTokens

        -用于浏览字符串,并根据定的字符将字符串截取

    ·items指定被迭代的字符串

    ·delims指定使用的分隔符

    ·var指定用来存放遍历到的成员

    ·begin指定遍历的开始位置(int型从取值0开始)

    ·end指定遍历结束的位置(int型,默认集合中最后一个元素)

    ·step遍历的步长(大于0的征整型)

    ·varStatus通过index,count,first,last几个状态值,描述begin和end子集中的元素的状态

    <c:forTokens items="024-01233455-123" delims="-" var="num">

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

    </c:forTokens>



    ·URL操作标签详解-import

        -把其他静态或动态文件包含到JSP页面

        -同<jsp:include>的区别为:只能包含同一个web应用中的文件。

         而<c:import>可以包含其他web应用中的文件,甚至是网络上的资源。

    <c:import url="" context="" var="" scope="" charEncoding="" varReader="">

    </c:import>

    ·url被导入资源的URL路径(可以是绝对路径也可以是相对路径)

    ·context相同服务器下其他的web工程,必须以"/"开头

    context引入的内容是webapps下的其他Web project

    1.修改tomcat的发布路径

    2.修改%TOMCAT_HOME%/conf/context.xml的Context标签中的属性  crossContext="true"

    ·var以String类型存入被包含文件的内容

    ·Scope var变量的JSP范围

    ·charEncoding被导入文件的编码格式

    ·varReader以Reader类型存储被包含文件内容


    ·URL操作标签详解-redirect

        -该标签用来实现请求的重定向,同时可以在url中加入指定的参数

    ·url指定重定向页面的地址,可以是一个String类型的绝对地址或相对地址

    ·context用于导入其他web应用中的页面

    <!--<c:param>位参数,可选项-->

    <c:redirect url="firstDEmo.jsp">

    <c:param name="username">Lily</c:param>

    <c:param name="password">111111</c:param>

    </c:redirect>



    ·URL操作标签详解-url

        -该标签用于动态生成一个String类型的URL,可以同<c:param>标签共同使用,也可以使用html的<a>标签实现超链接

    ·value表示url路径值

    ·var 将url路径存储在变量中

    ·scope var变量的范围

    <c:if test="${0==num}">

    <c:set var="partUrl">aa</c:set>

    </c:if>

    <c:url value="http://loacalhost:8080/${partUrl}" var="newUrl" scope="session"></c:url>

    <a href="${newUrl}">新的URL</a>


     





    ·常用JSTL函数

        ·要在页面添加 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>



    菜鸟教程  http://www.runoob.com/jsp/jsp-jstl.html


    查看全部
  • set 存值到scope中 存值到javabeen属性中
    查看全部
  • <jap:userbeen id = “” class=“”><>. 中实例化Java对象
    查看全部
  • &ltout标签&gt
    查看全部
  • escape为false 进行转译 value =“&gtout 标签lt” 输出为_>out标签<
    查看全部
  • 在取值时得先向某些scope赋值
    查看全部
  • $(empty user)
    查看全部
    0 采集 收起 来源:EL运算符

    2018-06-11

  • 存到scope的map结构中
    查看全部
    0 采集 收起 来源:EL运算符

    2018-06-11

  • El表达式是从内置元素中获取对象的值 所以这里 随便取了个内置对象赋值 satring user=“zhangsan” seq.setattribute(“user”,user)
    查看全部
    0 采集 收起 来源:EL运算符

    2018-06-11

  • 从页面获取的值req.getparameter(count)是 string 需要integer.perset...()转化为数字进行加减 el表达式不需要 只需要${param(count)+20}
    查看全部
  • ${user}如果 page request session application 中都没有user el表达式会输出 空字符串
    查看全部
    0 采集 收起 来源:EL变量

    2018-06-11

  • c:out变量由el表达式获取
    查看全部
  • c:out
    查看全部

举报

0/150
提交
取消
课程须知
本课程是JAVAEE中JSP开发初级课程,建议小伙伴们先对JSP基础知识修炼完毕,之后再来进修
老师告诉你能学到什么?
1、JSTL核心标签的使用 2、EL表达式与JSTL的配合使用 3、JSTL函数的使用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!