多个jsp页面共享Java bean
通过jsp的内置对象—request对象获取参数:
通过超链接传参:
例:把a.jsp中i的值传到b.jsp中:
在a.jsp页面中的核心代码为:
<a href="b.jsp?i=1">传参</a> (说明:给i赋值时也可以用jsp表达式,例如i=<%变量名 %>)
在b.jsp页面中的核心代码为:
<%String j=request.getParameter("i"); %>
<%=j %>
通过request.setAttribute()方法:
例:把a.jsp中表单中的name的值传送到b.jsp中:
在a.jsp页面中的核心代码为:
<%request.setAttribute(name,"Danny");%>
在b.jsp页面中的核心代码为:
<%String getName=request.getParameter("name"); %>
通过表单传参:
例:把a.jsp中表单中的name的值传送到b.jsp中:
在a.jsp页面中的核心代码为:
<form action="b.jsp" method="post">
<ul>
<li><input type="text" name="username">
<li>w<input type="submit" name="submit" value="提交">
<ul>
</form>
在b.jsp页面中的核心代码为;
<%String getUserName=request.getParameter("username");>
<%=getUserName %>
通过表单的隐藏域传参:
例:把a.jsp中定义的变量传送到b.jsp中;
在a.jsp中的核心代码为:
<%!int a=4; %> <form action="b.jsp" method="post"> <input type="hidden" name="b" value=<%a%>>
<input type="submit" value="提交">
</form>
在b.jsp中的核心代码为:
<%int c=(Integer)request.getAttribute("b"); %>
(上段代码或者为<%String c=request.getAttribute("c").toString(); %>等等,类型转换通java一样) <%=c %>
运行结果:变量a=4的值通过表单隐藏域b传到b.jsp中的c中。
2、通过JavaBean获取表单信息:
例:用JavaBean获取用户登录表单信息:
Login.jsp中的核心代码为:
<form action="Deal.jsp" method="post">
<ul>
<li>用户名:<input type="text" name="username">
<li>密码:<input type="password" name="password">
<li><input type="submit" name="submit" value="登录">
</ul>
</form>
JavaBean中的核心代码为:
package com;
public class UserBean{
private String username;
private String password;
public String getUserName(){
return username;
}
public void setUserName(String username){
this.username=username;
}
public String getPassword(){
return password;
}
public void setPassword(String password){
this.password=password;
}
}
Deal.jsp中的核心代码为:
<jsp:useBean id="user" class="com.UserBean" >
<jsp:setProperty name="user" property="*">
<%String username=user.getUserName();%>
<%String password=user.getPassword();%>
得到的用户名为:<%=username%><br>
得到的密码为:<%=password%>
其中,Deal.jsp中的<jsp:setProperty name="user" property="*">中的星号是表示对所有同名的属性赋值,当然还可以对属性选择性地赋值: <jsp:setProperty name="user" property="username">、<jsp:setProperty name="user" property="password">等。
最新文章
- VS低版本打开高版本解决方案(如08打开10、12、13版本vs编译的项目)
- iOS UITextField限制输入数字
- C#文件夹和文件操作
- nginx+gunicorn+supervisor+flask @ centos
- iOS下json的解析 NSJSONSerialization
- <;a>;作Form表单提<;/a>;
- javad的Collection集合
- iis10 HTTP 错误 500.19 - Internal Server Error
- python-冒泡排序与插入排序
- Layout 不可思议(一)—— CSS 实现自适应的正方形卡片
- Thunar 通过快捷键在当前文件夹打开终端
- [JZOJ3615]【NOI2014模拟】数列(平面几何+二维线段树)
- iOS学习——Quartz2D学习之UIKit绘制
- Python中的垃圾回收与del语句
- 干货 | Ansible 上手指南
- matlab 矩阵拼接
- HDU 4310 Hero (贪心)
- windbg cs
- SpringMVC系列(九)自定义视图、重定向、转发
- [SQLite3]connection string的连接池参数引发的错误