今天主要做项目了,学到了批量修改数据。
从网页到内部逻辑的代码
<s:iterator value="#request.list" id="ud"> <tr> <td> <s:property value="#ud[0]" /> </td> <td> <s:property value="#ud[1]" /> </td> <td> <s:property value="#ud[2]" /> </td> <td> <s:property value="#ud[3]" /> </td> <td> <s:property value="#ud[4]" /> </td> <td> <s:property value="#ud[5]" /> </td> <td> <s:property value="#ud[6]" /> </td> <td> <s:property value="#ud[7]" /> </td> <td> <s:property value="#ud[8]" /> </td> <td> <s:property value="#ud[9]" /> </td> <td> <s:property value="#ud[10]" /> </td> <td> <s:property value="#ud[11]" /> </td> <td> <s:property value="#ud[12]" /> </td> <td> <s:property value="#ud[13]" /> </td> <td> <a href="showDetail.action?user.xh=<s:property value="#ud[1]"/>">详细信息</a> </td> <td> <input type="checkbox" name="selectFlag" value="<s:property value="#ud[1]"/>"> </td> </tr> </s:iterator>
全选的javascript
<script type="text/javascript"> function checkAll() { for ( var i = 0; i < document.getElementsByName("selectFlag").length; i++) { document.getElementsByName("selectFlag")[i].checked = true; } } </script>
Action类中代码
public String batchthrowAduit() { HttpServletRequest request = ServletActionContext.getRequest(); String[] xhs = request.getParameterValues("selectFlag"); detailService.batchThrow(xhs); return SUCCESS; }
Dao层Imp类中代码
public void batchThrow(String[] xhs) { // TODO Auto-generated method stub StringBuffer sbSql = new StringBuffer(); for (int i = 0; i < xhs.length; i++) { sbSql.append("'"); sbSql.append(xhs[i]); sbSql.append("',"); } Session session = getHibernateTemplate().getSessionFactory() .openSession(); Transaction ts = session.beginTransaction(); Query query = session .createQuery("update Detail set sh='已通过' where xh in (" + sbSql.substring(0, sbSql.length() - 1) + ")"); query.executeUpdate(); ts.commit(); session.close(); }
项目进展:增加了管理员的信息以及权限问题,增加了审核功能。