在JSP页面中调用另一个JSP页面中的变量

阳光穿透心脏的1/2处 2022-09-18 12:43 328阅读 0赞
  1. jsp学习中,经常需要在一个jsp页面中调用另一个jsp页面中的变量,下面就这几天的学习,总结一下。
  2. jsp页面之间的变量调用有多种方法:

1、通过jsp的内置对象—request对象获取参数:

  1. 1)通过超链接传参:
  2. 例:把a.jspi的值传到b.jsp中:
  3. a.jsp页面中的核心代码为:
  4. <a href="b.jsp?i=1">传参</a> (说明:给i赋值时也可以用jsp表达式,例如i=<%变量名 %>)
  5. b.jsp页面中的核心代码为:
  6. <%String j=request.getParameter("i"); %>
  7. <%=j %>
  8. 2)通过request.setAttribute()方法:
  9. 例:把a.jsp中表单中的name的值传送到b.jsp中:
  10. a.jsp页面中的核心代码为:
  11. <%request.setAttribute(name,"Danny");%>
  12. b.jsp页面中的核心代码为:
  13. <%String getName=request.getParameter("name"); %>
  14. 3)通过表单传参:
  15. 例:把a.jsp中表单中的name的值传送到b.jsp中:
  16. a.jsp页面中的核心代码为:
  17. <form action="b.jsp" method="post">
  18. <ul>
  19. <li><input type="text" name="username">
  20. <li>w<input type="submit" name="submit" value="提交">
  21. <ul>
  22. </form>
  23. b.jsp页面中的核心代码为;
  24. <%String getUserName=request.getParameter("username");>
  25. <%=getUserName %>
  26. 4)通过表单的隐藏域传参:
  27. 例:把a.jsp中定义的变量传送到b.jsp中;
  28. a.jsp中的核心代码为:
  29. <%!int a=4; %>
  30. <form action="b.jsp" method="post">
  31. <input type="hidden" name="b" value=<%a%>>
  32. <input type="submit" value="提交">
  33. </form>
  34. b.jsp中的核心代码为:
  35. <%int c=(Integer)request.getAttribute("b"); %>
  36. (上段代码或者为<%String c=request.getAttribute("c").toString(); %>等等,类型转换通java一样)
  37. <%=c %>
  38. 运行结果:变量a=4的值通过表单隐藏域b传到b.jsp中的c中。

2、通过JavaBean获取表单信息:

  1. 例:用JavaBean获取用户登录表单信息:
  2. Login.jsp中的核心代码为:
  3. <form action="Deal.jsp" method="post">
  4. <ul>
  5. <li>用户名:<input type="text" name="username">
  6. <li>密码:<input type="password" name="password">
  7. <li><input type="submit" name="submit" value="登录">
  8. </ul>
  9. </form>
  10. JavaBean中的核心代码为:
  11. package com
  12. public class UserBean\{
  13. private String username;
  14. private String password;
  15. public String getUserName()\{
  16. return username;
  17. \}
  18. public void setUserName(String username)\{
  19. this.username=username;
  20. \}
  21. public String getPassword()\{
  22. return password;
  23. \}
  24. public void setPassword(String password)\{
  25. this.password=password;
  26. \}
  27. \}
  28. Deal.jsp中的核心代码为:
  29. <jsp:useBean id="user" class="com.UserBean" >
  30. <jsp:setProperty name="user" property="\*">
  31. <%String username=user.getUserName();%>
  32. <%String password=user.getPassword();%>
  33. 得到的用户名为:<%=username%><br>
  34. 得到的密码为:<%=password%>
  35. 其中,Deal.jsp中的<jsp:setProperty name="user" property="\*">中的星号是表示对所有同名的属性赋值,当然还可以对属性选择性地赋值: <jsp:setProperty name="user" property="username">、<jsp:setProperty name="user" property="password">等。
  36. 当然肯定还有更好更多的方法,期待高手赐教。





发表评论

表情:
评论列表 (有 0 条评论,328人围观)

还没有评论,来说两句吧...

相关阅读