如何将jsp:usebeansetproperty转换为两个具有相同属性名的不同bean?
我不熟悉JSP Usebean。。我试过下面的场景。当我提交表格时,学生姓名也被设置为学院名称。因为,两个bean具有相同的属性名。是否有任何方法可以避免此冲突并设置正确的值 Summary.jsp如何将jsp:usebeansetproperty转换为两个具有相同属性名的不同bean?,jsp,Jsp,我不熟悉JSP Usebean。。我试过下面的场景。当我提交表格时,学生姓名也被设置为学院名称。因为,两个bean具有相同的属性名。是否有任何方法可以避免此冲突并设置正确的值 Summary.jsp <jsp:useBean id="student" class="demo.jsp.beans.Student" scope="page"></jsp:useBean> <jsp:setProperty property="*" name="student"/&
<jsp:useBean id="student" class="demo.jsp.beans.Student" scope="page"></jsp:useBean>
<jsp:setProperty property="*" name="student"/>
<jsp:useBean id="college" class="demo.jsp.beans.College" scope="page"></jsp:useBean>
<jsp:setProperty property="*" name="college"/>
College.java
public class College {
private String name;
}
Index.jsp
<form method="post" action="summary.jsp">
<table>
<tr><td> Name</td><td>:</td><td><input name="name"/></td></tr>
<tr><td> DOB</td><td>:</td><td><input name="dob"/></td></tr>
<tr><td> College</td><td>:</td><td><input name="name"/></td></tr>
<tr><td> </td><td></td><td><input type="submit"></td></tr>
</table>
</form>
姓名:
出生日期:
学院:
jsp:useBean已过时。只需将bean放入会话中:
BeanName beanvar = new BeanName();
beanvar.member = "whatever";
session.setAttribute("sessionvarname", beanvar);
并通过以下方式检索它们:
BeanName var = (BeanName)session.getAttribute("sessionvarname");
在这里,您甚至不使用会话范围,而只使用页面范围,您的代码如下所示:
demo.jsp.beans.Student student = new demo.jsp.beans.Student();
student.name = request.getParameter("student_name");
demo.jsp.beans.College college = new demo.jsp.beans.College();
college.name = request.getParameter("college_name");
如果您希望将它们放入会话中:
session.setAttribute("student_bean", student);
session.setAttribute("college_bean", college);
要从会话中检索以在另一页上使用,请执行以下操作:
demo.jsp.beans.Student student = (demo.jsp.beans.Student) session.getAttribute("student_bean");
demo.jsp.beans.College college = (demo.jsp.beans.College) session.getAttribute("college_bean");
您需要将表单更改为输入具有唯一名称的位置:
<tr><td> Name</td><td>:</td><td><input name="student_name"/></td></tr>
...
<tr><td> College</td><td>:</td><td><input name="college_name"/></td></tr>
名称:
...
学院:
<tr><td> Name</td><td>:</td><td><input name="student_name"/></td></tr>
...
<tr><td> College</td><td>:</td><td><input name="college_name"/></td></tr>