Spring框架学习[JdbcTemplate封装Jdbc](二)

2014-11-24 03:05:49 · 作者: · 浏览: 1
ss() }; int[] types=new int[]{ Types.VARCHAR, Types.VARCHAR, Types.VARCHAR }; return this.getJdbcTemplate().update(sql,params,types); } public int[] updatePersonUseBatchUpdate( final List persons){ String sql="insert into login values( , , )"; BatchPreparedStatementSetter setter=null; //使用匿名内部类,实现BatchPreparedStatementSetter接口,实现批量更新 setter=new BatchPreparedStatementSetter(){ public int getBatchSize(){ return persons.size(); } public void setValues(PreparedStatement ps,int index) throws SQLException{ Person person=(Person)persons.get(index); ps.setString(1,person.getName()); ps.setString(2,person.getPassword()); ps.setString(3,person.getAddress()); } }; return this.getJdbcTemplate().batchUpdate(sql,setter); } public Person getPersonByRowCallbackHandler(String username){ String sql="select * from login where username= "; final Person person=new Person(); final Object params[]=new Object[]{username}; //使用匿名内部类,实现RowCallbackHandler接口,即实现查询结果集的RowMapping this.getJdbcTemplate().query(sql,params,new RowCallbackHandler(){ public void processRow(ResultSet rs)throws SQLException{ person.setName(rs.getString("username")); person.setPassword(rs.getString("passwd")); person.setAddress(rs.getString("address")); } }); return person; } }