试过了很多种方法都没有成功,终于让我找到了这种方法!
首先在后台写代码:
Transaction tx = session.beginTransaction(); List list = session.createSQLQuery("select * from jike").list(); tx.commit(); List list1 = new ArrayList(); Iterator it = list.iterator(); while(it.hasNext()){ Jike user = new Jike();//这句必须放在里面,否则数据一样 Object[] objs = (Object[])it.next(); user.setXuehao(objs[0].toString()); user.setName(objs[1].toString()); list1.add(user); } 1.HttpServletRequest request = ServletActionContext.getRequest(); 2.request.setAttribute("list",list1); return "success";
也可以不用写1和2这两句,可以采用struts2默认的拦截器,但是Java里面必须有set()和get()这两个方法。
然后在前台写jsp接收数据的代码:
<table border="1"> <s: iterator value ="#request.list"> <tr> <td> <s:property value="xuehao"/> </td> </tr> </s:iterator> </table>
上面是使用struts2的标签,也可以使用EL表达式:
<td>${name}</td>
或者还可以:
<s:iterator>里面加id,例如:
<s:iterator value="#request.list" id="id">
<td><s:property value="#id.name"/></td>
利用hibernate的session查询数据库,并且在jsp页面显示表内容的方法
原文地址:http://blog.csdn.net/holmes_conan/article/details/41258869