请教大牛们一个问题

aloveu aloveu 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
今天心血来潮,试了下从数据库中取数,然后现实在jsp页面上 写了一个方法如下:

public static Books getBook() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException{



Books book = new Books();

ConnectionDb db = new ConnectionDb();

Connection ct = db.getcnt();

Statement st = ct.createStatement();

ResultSet rs = st.executeQuery("select * from books");

while(rs.next()){
book.setId(rs.getInt(1));
book.setBookName(rs.getString(2));
book.setPrice(rs.getFloat(3));
book.setPublish(rs.getString(4));
book.setPublishman(rs.getString(5));
book.setAuthorName(rs.getString(6));


}
return book;
}

然后通过servlet session 把book对象传到页面上,取数的时候 只把数据库表中最后一行数据给取出来了, 我知道是做while循环的时候后面的把前面的覆盖了,怎么才能不覆盖呢?

当然可以用下面方式

List list = null;

Session session = HibernateSessionFactory.getSession();

Transaction tx = session.beginTransaction();

Query query = session.createQuery("form Books b");

list = query.list();

return list;

然后再在JSP页面上通过structs标签的logic属性和bean属性去取,但我想通过<%=xx.getxx()%>方法取,所以有了上面的问题

麻烦哪个大虾指点下 刚接触web方面得知识 谢谢~~~~
...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部
aloveu
Web 开发 81,108 成员 341,721 内容