我用Struts做一个报表统计系统
从一张有很多字段的表里面得到一条select结果集
现在我要在页面打印出来··因为这个表的字段有几十个·我想到两个方法:
1.建一个跟这张表字段对应的BEAN,然后把查询结果以TableBean.setId(rs.getString("id"))的形式写入BEAN,最后通过session.setAttribute("Tbean",TableBean)把bean传到页面··2.直接用String id=rs.getString("id"),session.Attribute("id",id)把每个字段传回页面··(单条记录的话用这个)这两种做法都需要写很多的rs.getString("****")...
所以我想问你一下有更简洁的方法么?
有没有不用这些页面空间(page、request、session)传结果的方法?
session容量有限,在什么情况下清空比较好?
从一张有很多字段的表里面得到一条select结果集
现在我要在页面打印出来··因为这个表的字段有几十个·我想到两个方法:
1.建一个跟这张表字段对应的BEAN,然后把查询结果以TableBean.setId(rs.getString("id"))的形式写入BEAN,最后通过session.setAttribute("Tbean",TableBean)把bean传到页面··2.直接用String id=rs.getString("id"),session.Attribute("id",id)把每个字段传回页面··(单条记录的话用这个)这两种做法都需要写很多的rs.getString("****")...
所以我想问你一下有更简洁的方法么?
有没有不用这些页面空间(page、request、session)传结果的方法?
session容量有限,在什么情况下清空比较好?
1.建一个跟这张表字段对应的BEAN,然后把查询结果以TableBean.setId(rs.getString("id"))的形式写入BEAN如果查询结果多的话,可以将BEAN装入VECTOR中,然后将VECTOR传到页面进行显示就OK了
{
TableBean temp = new TableBean();
temp = (TableBean)vecMy.elementAt(i);........
有没有不用这些页面空间(page、request、session)传结果的方法?
如果由于内存问题一定要放在别的地方的话,只有文本了~~查询出来的值在XML或追加到PROPERTIES里~~
JSP用一个<c:forEach>循环直接就出来了。
这个好办啊.只要存储一个字段(当然是主码了。)
然后在别的页面再用这个主码从数据库中取啊.
form f0 = new form();//Your Form Obj
Class c = Class.forName("from940.form");
Field[] f = c.getDeclaredFields();//All Field
for(int i=0;i<f.length;i++){
Object[] param = new Object[1];//parameter From DB
Class[] cls = new Class[1];//parameter Type
param[0] = i+"" ;
cls[0] = String.class;
Method m = c.getMethod("set"
+ f[i].getName().substring(0,1).toUpperCase()
+ f[i].getName().substring(1), cls);
m.invoke(f0,param);
} }catch(Exception e){}