JSP~~JSTL~~URL标签~~import/redirct/url/param

与 URL 相关的标签主要是用来将其他文件包含进来,或者提供页面之间的重定位以及 URL 地址的生成、参数的输出等等。

一般包括如下几个标签

<c:import>标签:与传统 JSP 页面中的<jsp:include>标记相类似。

<c:redirect>标签:进行页面的重定位。

<c:url>:主要是用来重写 URL 地址。

<c:param>:一般 param 标签会和别的标签一起配套使用,用于参数值的传递。

<c:import>标签

该标签用于把其他静态文件包含到该文件当中来。它和传统的 JSP 标记<jsp:include>相类似,但是有所不同:<jsp:include>标签只能使用来包括该应用中的其他文件,而<c:import>则还可以包含外部站点中的静态文件,所以它的功能更加的强大。这个标签的使用格式如下:

<c:import url=”url”  [context=”context”] [var=”varName”]
        [scope=”page|request|session|application”] 
        [varReader=”varReader”] [charEncoding=”charEncoding”]>
    body content
</c:import>

标签中的属性描述如下:

url:待引用静态文件的 URL 地址。

context:当时用相对路径访问一个外部静态文件时,这里的 context 指定这个外部文件的名称。

var:当使用字符串输出时,把输出的内容存储在这个 var 指定的变量中。

scope:指定 var 参数变量的有效范围。

charEncoding:引入文件所采用的字符编码。

varReader:这个属性指定的参数变量类型是 Reader,可以用于读取文件内容。

 

<c:url>标签

这个标签主要是用来重写 URL 地址。它的使用格式如下所示:

<c:url value=”value” [context=”context”] [var=”varName”] [scope=”page|request|session|application”] />

当进行参数传递时,所使用的格式如下:

<c:url value=”value” [context=”context”] [var=”varName”]  [scope=”page|request|session|application”] >
    <c:param name=”paramName” value=”value” />
</c:url>

标签中使用的属性描述如下:

value:将要处理的 URL 地址。

context:当使用的是相对路径方法指定外部文件时,这个属性所指定即为外在文件的名称。

var:给这个 URL 地址起一个标识。

scope:规定这个 var 属性所指定变量的有效范围。

url结合import的使用案例:

<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head><title>url标签</title></head>
<body>
    <c:import url="http://www.cslg.edu.cn" charEncoding="UTF-8"/>
</body>
</html>

运行结果是显示cslg的主页。

url结合param使用案例:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
    <title>传参标签使用范例</title>
</head>
<body>
<c:url value="http://www.sohu.com/">
    <c:param name="param" value="JSTL1.1" />
</c:url>
</body>
</html>

运行结果:

http://www.sohu.com/?param=JSTL1.1 

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

redirect 标签使用来进行页面之间的重定向,它和传统 JSP 程序中的<jsp:redirect>标记功能相类似。

param 标签是和 redirect 一起使用的,它用来进行参数值的传递。

redirect 标签使用的格式如下:

<c:redirect url=”url” [context=”context”] />

在 redirect 标签体中指定 param 参数的使用格式如下:

<c:redirect url=”url” [context=”context”] >
    <c:param name=”paramName” value=”value” />
</c:redirect>

  redirect 和param的使用案例:

新建页面jstl_url_redirct_param.jsp

<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head><title>url中的redirect标签</title></head>
<body>
    <c:redirect url="jstl_url_import_param_include.jsp">
        <c:param name="name" value="yangjianyong"/>
        <c:param name="url" value="www.cslg.edu.cn"/>
    </c:redirect>
</body>
</html>

代码中jstl_url_import_param_include.jsp代码如下:

<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<h3>name参数:${param.name}</h3>
<h3>url参数:${param.url}</h3>

运行jstl_url_import_param.jsp结果如下:

name参数:yangjianyong
url参数:www.cslg.edu.cn

将上面的redirect换成import效果一样,新建页面jstl_url_import_param.jsp

<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%>
<%@ taglib prefix="c"  uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head><title>url标签中import和param的使用</title></head>
<body>
<c:import url="jstl_url_import_param_include.jsp" charEncoding="GBK">
    <c:param name="name" value="yangjianyong"/>
    <c:param name="url"  value="www.cslg.edu.cn"/>
</c:import>
</body>
</html>

运行jstl_url_import_param.jsp效果和上面一样

JSP~~JSTL~~URL标签~~import/redirct/url/paramJSP~~JSTL~~URL标签~~import/redirct/url/param cskmyjy 发布了59 篇原创文章 · 获赞 27 · 访问量 2797 私信 关注
上一篇:laravel实践21.intended方法重定向至上次请求页


下一篇:重定向到金字塔中的其他URL?