如题
1、rs写在servlet中合适吗?如果写在servlet中,那怎么将rs传递到jsp页面中呢?
2、如果用javabean得到rs,并将rs传给servelt,再传给jsp,这样合适吗?
3、有些资料说rs是接口,不是对象,不能像对象一样传递,是这样吗?
4、如果将结果集放入Arraylist,再在jsp中取得,我觉得太麻烦,各位怎么认为呢?
关于rs的传递,到底哪种方案好一些呢?
    大家讨论一下吧!

解决方案 »

  1.   

    按照面向对象的思想以及安全性能方面来考虑,RS是不能被传递的,应该把RS封装成对象传到页面,因为当你传递RS的时候,数据库连接是不能断开的,如果断开,RS里就没有数据了。这样很浪费资源。
      

  2.   

    数据连结就写成Bean下面的放在jSp中
    String sql="select * from 你的表";
    ResultSet rs =stmt.executeQuery(sql);
      

  3.   

    rs写在SERVLET中当然可以,而且效率更高,你可以把它写进SERVLET的数组里面,例如用SET VALUE然后在JSP调用的时候,用GET VALUE.如果用JAVABEAN得到RS,没有必要在传给SERVLE,可以直接传给JSP,到目前为止我没有传递过RS,我感觉没有必要这样
      

  4.   

    我想你应该是想把这个结果集(rs)从一个JSP页面传到另一个JSP页面.如果是这样的话,就一定要借助SERVLET,或者更具体一些,一定要借助HttpServletRequest的对象request,因为要通过这个请求来承载数据,并且把数据传到另一个页面.
    根据上面所说的,我建议楼主可以通过一个JAVABEAN来收集第一个页面的数据,这个JAVABEAN也可以叫做助手(Helper),它把JSP页面中的数据收集起来并且封装在一个对象里(传输对象),然后把这个对象放到request中(request.setAttribute(...))
    另外,用session也可以完成同样的功能...
      

  5.   

    反正都在后台,不做分布的话,没什么不可以的,只是不太好,还要在web端关连接,写多了就觉得烦了
      

  6.   

    在jsp中尽量不要用ResultSet,如果要使用数据还是通过封装来调用。如果需要在调用的时候不希望生成List,可使用Iterator模式,在取下一个对象的时候才从ResultSet中读取到对象中。
      

  7.   

    我也想知道
    [email protected]
    谢谢