⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bean-parameter.jsp

📁 Spring +Web 的完整 MyEclipse 项目源码,使用者可以作为入门材料可以在此基础上深入学习
💻 JSP
字号:
<%@ page contentType="text/html;charset=GB2312" import="java.util.*"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<html>
<head>
<html:base/>
<title>&lt;bean:parameter&gt;</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body bgcolor="white">

<h1>&lt;bean:parameter&gt;</h1>

<p>&lt;bean:parameter&gt;标记用于读取HTTP请求中的参数。先看以下代码:</p>
<font class="CodeStyle">
&lt;html:link page="/bean-parameter.jsp?testString=a+new+string&testInt=10000"&gt;<br>
&nbsp;&nbsp;点击此处添加请求参数<br>
&lt;/html:link&gt;<br>
</font>

<p>在上面的代码中,使用了&lt;html:link&gt;标记来向本页面发送请求,在请求后面跟上了两个参数testString和testInt。</p>

<p>以下是&lt;bean:parameter&gt;标记的代码示例:</p>
<font class="CodeStyle">
&lt;bean:parameter id="test1" name="testString" value=""/&gt;<br>
请求参数testString的值为:&lt;bean:write name="test1"/&gt;<br>
<br>
&lt;bean:parameter id="test2" name="testInt" value=""/&gt;<br>
请求参数testInt的值为:&lt;bean:write name="test2"/&gt;<br>
</font>

<p>上面的代码中用到了&lt;bean:parameter&gt;标记的三个属性。</p>

<p>name属性:用于指定页面请求中的参数名,如在上面的示例中,先后指定的请求参数名为testString和testInt。</p>
<p>id属性:在&lt;bean:parameter&gt;标记将name属性中所指定的请求参数取出后,保存在id属性所命名的变量中,这个变量
存放在pageContext内。</p>
<p>value属性:该属性指定请求参数的默认值。当HTTP请求中不包含name属性所指定的参数时,倘若不为该参数指定一个默认值,
则后台将报错。因此,通常情况下都应为请求参数指定一个默认值。在上例中为请求参数testString和testInt指定的默认值均
为一个空串。</p>

<p>以下是运行结果代码的运行结果。用户可以通过点击"添加参数"按钮来为本页面加入请求参数。在用户点击后,应该能看到
请求参数在页面上显示出来了,同时在地址栏上可以看到相应的请求参数。</p>

<html:link page="/bean-parameter.jsp?testString=this+is+a+test&testInt=10000">添加参数</html:link>
<br>
<p>
<bean:parameter id="test1" name="testString" value=""/>
请求参数testString的值为:<bean:write name="test1"/><br>
<bean:parameter id="test2" name="testInt" value=""/>
请求参数testInt的值为:<bean:write name="test2"/><br>

<p>如果在请求参数中包含多个同名的请求参数,那么,&lt;bean:parameter&gt;标记将读出第一个参数的值。例如有下面的链接:</p>
<font class="CodeStyle">
&lt;html:link page="/bean-parameter.jsp?testValue=10000&testValue=20000&testValue=30000"&gt;添加参数&lt;/html:link&gt;
</font>

<p>那么,当用户使用&lt;bean:parameter&gt;标记将testValue的值读出来时,将只显示第一个testValue的值,也就是10000。以下是
运行效果,用户点击下面"添加参数"的链接来为testValue请求参数赋值</p>

<html:link page="/bean-parameter.jsp?testValue=10000&testValue=20000&testValue=30000">添加参数</html:link>
<br>
<p>
<bean:parameter id="test3" name="testValue" value=""/>
testValue的值是:<bean:write name="test3"/>

<p>如果想要把所有和参数名匹配的请求参数的值都显示出来,可以使用&lt;bean:parameter&gt;标记的multiple属性。示例代码如下:</p>
<font class="CodeStyle">
&lt;bean:parameter id="testArray" name="testValue" value="" multiple="yes"/&gt;<br>
参数列表如下:<br>
&lt;%<br>
&nbsp;&nbsp;for (int i=0;i<testArray.length;i++){<br>
&nbsp;&nbsp;&nbsp;&nbsp;out.println("参数"+i+" : " + testArray[i]);<br>
&nbsp;&nbsp;&nbsp;&nbsp;out.println("&lt;br&gt;");<br>
&nbsp;&nbsp;}<br>
%&gt;<br>
</font>

<p>在上面的代码中,使用了&lt;bean:parameter&gt;标记的multiple属性,在这种情况下,id属性所定义的就不是一个String型的对象了
而是变成了一个String[]型,也就是字符串数组,它用以存放同名请求参数的所有的值。然后,可以使用for语句将其打印出来。</p>

<p>以下就是运行效果,请求的URL为:</p>
<font class="CodeStyle">
&lt;html:link page="/bean-parameter.jsp?testValue=10000&testValue=20000&testValue=30000"&gt;添加参数&lt;/html:link&gt;
</font>
<p>

<bean:parameter id="testArray" name="testValue" value="" multiple="yes"/>
参数列表如下:<br>
<%
	for (int i=0;i<testArray.length;i++){
		out.println("参数"+i+" : " + testArray[i]);
		out.println("<br>");
	}
%>
<p>

<a href="index.jsp">返回主页面</a>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -