Jsp中比较常用的传递参数的方法有:
1、form表单:
<form>
标签用于为用户输入创建 HTML 表单。
表单能够包含 input 元素,比如文本字段、复选框、单选框、提交按钮等等。
表单还可以包含 menus、textarea、fieldset、legend 和 label 元素。
表单用于向服务器传输数据。
属性:
举例:
<form method="post" action="<%=basePath %>Servlet?service=login" >
昵称:<input style="text-align:center;" type="text" name="user_name">
<br><br>
密码:<input style="text-align:center;" type="password" name="user_password">
<br><br>
<input style="background-color:blue;" type="submit" value="登录">
</form>
这是一个登录系统的form表单,action属性后是服务器的地址,使用的是post方式传送数据。当点击登录按钮,服务器就可以通过request.getParameter()方法,获得表单中填写的数据。
String user_name=request.getParameter("user_name");
2、 request.setAttribute(“参数名”,值)、 request.getAttribute(“参数名“):
form标签常常被用来由前端向服务器发送数据(通常是字符串),那么服务器如何向前端传递信息呢?
这时候使用request.setAttribute()、request.getAttribute()比较方便。
request.setAttribute(“参数名”,值)可以将我们需要传递的信息保存在Request中,参数名是唯一标识。
request.getAttribute(“参数名”)则是可以从Request中取出我们保存在Request中的信息。
注意:request.setAttribute()可以传递一个对象(不只是String)
举例:
我将一个novel对象(自定义的)存放在Request中,并命名为“novel”。
request.setAttribute("novel",novel);
在另一个维持着同一个Request对象的页面中就可以使用request.getAttribute()方法,根据名称取出传递的对象。
注意取出对象之前,一般需要强制类型转换。因为request.getAttribute()返回的是一个object。
Novel novel=(Novel)request.getAttribute("novel");
3、超链接:
这是指向百度的超链接:
<a href="http://www.baidu.com">百度</a>
超链接如何传递参数呢?
<a>
标签传值的形式:
单个参数:<a href="地址?参数名=值"></a>,
多个参数用&隔开:<a href="地址?参数1=值&参数2=值"></a>
传递的参数如何获得呢?
这里可以使用request.getParameter(“参数名”)的方式获得。
String value = request.getParameter("参数名")
注意:
超链接只能传递String,不能传递对象。
且,超链接的每次请求都是一个新的reqeust对象,后台不管怎么调用转发,一旦返回了数据,生命周期就结束了。
也就是说,点击超链接后,会产生一个新的Request对象,保存在原来Request中的数据没有了,这里指的注意。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/10370.html