复杂类型javabean(数组成员)在jsp中的运用:在jsp页面间传递数组

80酷酷网    80kuku.com

  js|数组|页面
在论坛上常看见有人问如何在jsp页面间传递数组,其实用javabean是很容易实现的.

下面给个简单的例子,只要遵循javabean的游戏规则,什么类型的数据结构都可以传递:

1:写一个测试用的javabean:package com.infoearth;public class JobBean{private int[] b;

 /**  * return 返回 b。  */ public int[] getB() {  return b; } /**  * param b 要设置的 b。  */ public void setB(int[] b) {  this.b = b; }}

2:在第一个jsp页面中(注意文本框的name都是"b"):<form action="manageJob.jsp" method="post"><table><tr>     <td width="50" height="30"> </td>        <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>    <td width="50" height="30"><input name="b" type="text" size="3"></td>  </tr></table><input type="submit" value="提交"></form>

3:在manageJob.jsp页面中,就可以接受这个数组了,很简单,用get方法就可以得到:<% page contentType="text/html; charset=gb2312" language="java" import="java.sql.*, com.infoearth.*"

errorPage="" %><jsp:useBean id="jobInfo" class="com.infoearth.JobBean" scope="request"><jsp:setProperty name="jobInfo" property="*"/></jsp:useBean><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>无标题文档</title></head>

<body>hello<%int[] temp=jobInfo.getB();for(int i=0;i<temp.length;i++){ out.print(i+"---"+temp[i]+"
");

}

%></body></html>

请注意javabean的内部机制:在javabean中命名的数组名为b,那么在第一个jsp中,填写数组b的文本框必须命名为b,否则就得不到!这是javabean的游戏规则呵呵,但愿对你有帮助



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: