试过了非常多种方法都没有成功,最终让我找到了这样的方法!
首先在后台写代码:
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>