码迷,mamicode.com
首页 > 编程语言 > 详细

Java Web学习(27): JSTL学习(五)

时间:2016-07-29 22:59:15      阅读:306      评论:0      收藏:0      [点我收藏+]

标签:

       <c:import>标签

       <c:import>标签提供<jsp:include>动作标签的所有的功能动作,但也可以包含绝对URL。例如,允许使用导入

标签包含的内容从一个不同的Web站点或FTP服务器。

       同<jsp:include>标签的区别:只能包含同一个Web应用中的文件,而<c:import>标签可以包含其他Web应用中

的文件,甚至是网络上的资源。

       <c:import>标签具有以下属性:

       技术分享

       <c:import>标签的用法:

       可以把其他静态或动态文件包含到本JSP页面。

       url属性指的是被导入资源的URL路径;

       context属性指的是相同服务器下其他Web工程,必须以"/"开头;

       var属性指的是以String类型存入被包含文件的内容;

       scope属性指的是var变量的JSP范围;

       charEncoding属性指的是被导入文件的编码格式 ;

       varReade属性指的是以Reader类型存储被包含文件内容;

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

       实例代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!-- 导入JSTL标签库 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSTL使用</title>
</head>
<body>
     <h1>JSTL标签的使用</h1>
     <hr>
     <!-- import标签的用法 -->
     <!-- 导入网络上的绝对路径 -->
     <c:catch var="error09">
            <c:import url="https://www.baidu.com" charEncoding="UTF-8"  />
     </c:catch>
     <c:out value="${error09}" /><br/>
     <!-- 导入相对路径文件 -->
     <c:catch var="error08">
            <c:import url="test.txt" charEncoding="UTF-8" />
     </c:catch>
     <c:out value="${error08}" /><br/>
     <!-- var和scope属性的用法 -->
     <c:catch var="error07">
            <c:import url="test.txt" var="test" scope="session" charEncoding="UTF-8" />
     </c:catch>
     <c:out value="${error07}" />
     <c:out value="import标签存储的test字符串变量值为:${sessionScope.test}" /><br/>
     <!-- content属性的用法 -->
     <c:catch var="error06">
            <c:import url="/date.jsp" context="/FirstWebApp" charEncoding="UTF-8" />
     </c:catch>
     <c:out value="${error06}" />   
</body>
</html>

       结果:

       技术分享

        技术分享

       <c:redirect>标签和<c:param>标签

        <c:redirect>标签将浏览器重定向到一个备用URL提供自动URL重写,它支持上下文相关的URL和支持

<c:param>标签。

       <c:redirect>标签具有以下属性:

       技术分享

       <c:param>标签允许适当的URL请求参数到指定的URL和任何必要的URL编码。在一个<c:param>标签的name

属性表示参数的名称,value属性表示的参数值。

       <c:param>标签具有以下属性:

       技术分享

       <c:redirect>标签的用法:

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

       url属性用于指定重定向页面的地址,可以是一个String类型的绝对路径或相对地址;

       context属性用于导入其他Web应用中的页面。

       实例:

       技术分享

       test.jsp页面代码:

       技术分享

       结果:

       技术分享

       <c:url>标签

       <c:url>标签格式化成一个字符串格式的URL,并将其存储到变量中。这个标签会在必要时自动执行URL重写。

 var属性指定的变量将包含格式化的URL。JSTL url标签只是response.encodeURL()方法的调用一个替代方法。URL

标记提供的唯一的真正的优势是正确的URL编码,包括子<c:param>标签指定的任何参数。

       <c:url>标记具有以下属性:

       技术分享

       <c:url>标签的用法:

       该标签用于动态生成一个String类型的URL,可以同<c:param>标签共同使用,也可以使用HTML中的<a>标签

实现超链接。

       var属性是将url路径存储在的变量中;

       value属性表示url路径值;

       scope属性是var变量的范围。

       实例:

       技术分享

       结果:

       技术分享

       JSTL函数

       需要在页面添加:

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
       先来介绍几个简单常用的JSTL函数:

       1)使用fn:contains()函数判断输入的字符串是否包含指定的子串。

       使用fn:contains()函数的语法如下:

boolean contains(java.lang.String, java.lang.String) 

       2)fn:containsIgnoreCase()函数判断输入的字符串是否包含指定的子串,搜索时忽略大小写。

       使用fn:containsIgnoreCase()函数的语法如下:

 boolean containsIgnoreCase(java.lang.String, java.lang.String)

       3)fn:endsWith()函数判断输入的字符串是否与指定的后缀结束。

       使用fn:endsWith()函数的语法如下所示:

boolean endsWith(java.lang.String, java.lang.String)

       4)fn:startsWith() 函数判断输入的字符串是否为指定的子串开始。

       使用fn:startsWith() 函数有以下语法:

 boolean startsWith(java.lang.String, java.lang.String)

       5)fn:indexOf()函数返回在字符串中指定的子串的索引。

       使用fn:indexOf() 函数的语法如下:

int indexOf(java.lang.String, java.lang.String)

       6)fn:escapeXml()函数转义字符,可以解释为XML标记。

       使用fn:escapeXml() 函数的语法如下:

java.lang.String escapeXml(java.lang.String))
       实例代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!-- 导入JSTL标签库 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!-- 导入JSTL函数库 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSTL使用</title>
</head>
<body>
    <h1>JSTL函数的使用</h1>
    <hr>
    <!-- contains函数使用 -->
    <c:out value=" Hello Word字符串是否包含Hello:${fn:contains(‘Hello World‘,‘Hello‘)}" /><br>
    <c:out value=" Hello Word字符串是否包含test:${fn:contains(‘Hello World‘,‘test‘)}" /><br>
    <!-- containsIgnoreCase函数使用 -->
    <c:out value=" Hello Word字符串是否包含hello(忽略大小写):${fn:containsIgnoreCase(‘Hello World‘,‘hello‘)}" /><br>
    <c:out value=" Hello Word字符串是否包含WORLD(忽略大小写):${fn:containsIgnoreCase(‘Hello World‘,‘WORLD‘)}" /><br>
    <!-- endsWith和startsWith函数使用 -->
    <c:out value=" Hello Word字符串是否以World结尾:${fn:endsWith(‘Hello World‘,‘World‘)}" /><br>
    <c:out value=" Hello Word字符串是否以Hello开头:${fn:startsWith(‘Hello World‘,‘Hello‘)}" /><br>
    <!-- escapeXml函数使用 -->
    <c:out value="${fn:escapeXml(‘<book>谁的青春不迷茫</book>‘)}"  /><br>
    <c:out value="<book>谁的青春不迷茫</book>"  /><br>
    <!-- indexOf函数使用 -->
    <c:out value=" Hello Word字符串中Hello出现的index值:${fn:indexOf(‘Hello World‘,‘Hello‘)}" /><br>
</body>
</html>

       结果:

       技术分享

       其他的JSTL函数:

       技术分享

       对于其他的JSTL函数具体用法可以参考:http://www.yiibai.com/jstl

       关于JSTL的学习就告一段落,对于其他的XML标签、SQL标签和格式化标签我们使用到的时候再进行介绍,学习

的过程是无止境的。



Java Web学习(27): JSTL学习(五)

标签:

原文地址:http://blog.csdn.net/erlian1992/article/details/52068760

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!