zoukankan      html  css  js  c++  java
  • jsp中jstl、el使用

    tomcat7.0+JSTL1.1.2(不冲突)
    
    EL表达式获取变量
    	${表达式} 如:${user.name}   不可以动态取值
    			 ${user[name]}可以动态取值,变量名中含有特殊字符时只能用此方法
    			 ${user[0]}
    
    	1、PageScope  Page
    	2、RequestScope Request
    	3、SessionScope Session
    	4、ApplicationScope Application	查找顺序为1234,没找到EL变量会输出为空的字符串,不是											null
    	EL表达式可以自动类型转换
    	EL 可使用算术、逻辑运算符和验证运算empty 用法是 empty+变量名,判断变量是否为空,null和	空字符串都返回true
    
    步骤加入jar包+jsp中加入标签库<%@ taglib uri="http:xxxxxxxx" prefix="c"%>
    <c:out value="xxx" default=“设输出默认值”escapeXml=“false表示转义value中的&gt”></c:out> 输		出xxx值,xx可以为EL表达式、常量、变量
    
    <c:set var="变量名" scope="所在作用域" value="变量值">也可以变量值</c:set>
    存值到javabean
    	<jsp:useBean id="person" class="com.Person"></jsp:useBean>
    	<c:set target="${person}" property="name" value="zhangsan"></c:set>
    	<c:out value="${person.name}"></c:out>
    
    <c:remove var="" /> var必选  scope可选
    
    <c:catch var="error">
    里面代码出错,会把错误信息保存在error变量中
    </c:catch>
    
    <c:if test="用EL表达式写的判断条件" var="" scope=""> </c:if>
    <input type="text" name="scope" value="${param.scope}">用户输入的值存放到param.scope中
    
    <c:choose>
    可含有多个when/otherwise
    <c:when test="">c:out输出内容</:when>
    。。。
    <c:otherwise>c:out输出when条件之外的范围对应的内容</c:otherwise>
    </c:choose>
    
    全部遍历
    <c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}">
    。。。进行操作aa变量
    </c:forEach>
    部分遍历
    <c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}" begin="1" end="4">
    。。。进行操作aa变量 1/4都会输出
    </c:forEach>
    部分遍历制定步长(间隔多少取值)
    <c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}" begin="1" end="4" step="默认1">
    。。。进行操作aa变量 1/4都会输出
    </c:forEach>
    状态
    <c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}" varstatus=“xx”>
    。。。进行操作aa变量
    输出当前元素的索引xx.index 从0开始
    输出当前元素的xx.count 从1开始
    输出当前元素的xx.first 判断此元素是不是第一个
    输出当前元素的xx.last 判断此元素是不是最后一个
    </c:forEach>
    
    <c:forTokens items="11-22-455-888" delims="-" var="num">
    
    拆分字符串并循环输出分割后的子字符串num
    begin、end、step、varstatus与foreach用法相同
    </c:forTokens>
    
    <c:import>标签与<jsp:include>
    	<jsp:include>只能包含同一个web应用上的文件
    	<c:import>可以包含其他web应用中的文件,甚至网络上的资源context="必须/开头"
    	
    	<c:import url="网络资源绝对路径" >
    	</c:import>
    
    	本项目相对路径:
    	<c:import url="tt.txt" charEncoding="gbk" var="tt存放txt中的内容" scope="变量作用域">
    	</c:import>
    
    	<c:import url="/index.jsp其他项目的" context="/其他项目名">
    	这种用法前提是:1、修改tomcat的默认发布路径,保证都在webapps路径下
    	2、修改%TOMCAT_HOME%/conf/context.xml的context标签中的添加属性crossContext=“true”
    		重启运行		
    	</c:import>
    	
    
    <c:redirect url="xx.jsp">
    <c:param name="xx">xxxx</c:param>重定向到xx且参数值显示在url中
    在xx中获取方式:${param.xx}
    
    <c:url value="链接/${xx}" var="xxx" scope="mmm" >
    var存放value中的连接,结合if可以动态生成链接
    </c:redirect>
    
    JSTL常用函数
    	前提:加入新的taglib  <%@ taglib uri="http:xxxxxxxx" prefix="fn"%>
    
    	${fn:contains("xx","xxx")} 判断xx中是否有xxx
    	${fn:containsIgnoreCase("xx","xxx")} 判断xx中是否有xxx,不区分大小写
    	${fn:endWith("xx","xxx")}
    	${fn:startWith("xx","xxx")}
    	${fn:indexOf("xx","xxx")}
    	...
    
    	输出XML
    		${fn:escapeXml("<ss>xx</ss>")} 会转义成$gt
    		输出XML做法<c:out value="<ss>xx</ss>"></c:out>
    

      

    <td><fmt:formatDate value="${item.rewardTime }" type="time" pattern="yyyy-MM-dd HH:mm:ss"/></td> 处理时间
    <td><c:if test="${item.status == 'N'}">正常</c:if>
    <c:if test="${item.status == 'T'}">已调整</c:if>
    </td> 处理返回字段

    <c:set value="${ fn:split(mission.districtCodes, ',') }" var="str2" />${fn:length(str2) }//字符串转数组 并获取长度

  • 相关阅读:
    【转】VS2010中 C++创建DLL图解
    [转]error: 'retainCount' is unavailable: not available in automatic reference counting mode
    [转]关于NSAutoreleasePool' is unavailable: not available in automatic reference counting mode的解决方法
    【转】 Tomcat v7.0 Server at localhost was unable to start within 45
    【转】Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds. If
    【转】SVN管理多个项目版本库
    【转】eclipse安装SVN插件的两种方法
    【转】MYSQL启用日志,和查看日志
    【转】Repository has not been enabled to accept revision propchanges
    【转】SVN库的迁移
  • 原文地址:https://www.cnblogs.com/qinyios/p/11124607.html
Copyright © 2011-2022 走看看