@Repository public class UserDaoImpl extends JdbcTemplate implements UserDao { @Resource private JdbcTemplate jdbcTemplate; public boolean addUser(final User user) { String sqlStr = "INSERT INTO USER(username,PASSWORD) VALUES(?,?)"; int status = jdbcTemplate.update(sqlStr, new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, user.getUsername()); ps.setString(2, user.getPassword()); } }); return status == 0 ? false : true; } public boolean delUser(final User user) { String sqlStr = "DELETE FROM USER WHERE id=?"; int status = jdbcTemplate.update(sqlStr, new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setInt(1, user.getId()); } }); return status == 0 ? false : true; } public List<User> findByAll() { String sqlStr = "SELECT id,username,PASSWORD FROM USER"; List<User> users = jdbcTemplate.query(sqlStr, new BeanPropertyRowMapper<User>(User.class)); return users; } public List<User> findByCloumns(final User user) { String sqlStr = "SELECT id,username,password FROM USER WHERE username=? AND password=?"; final List<User> users = new ArrayList<User>(); final User u = new User(); jdbcTemplate.query(sqlStr, new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, user.getUsername()); ps.setString(2, user.getPassword()); } }, new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { u.set(rs.getInt("id"), rs.getString("username"), rs.getString("password")); users.add(u); } }); jdbcTemplate.query(sqlStr, new Object[]{user.getUsername(), user.getPassword()}, new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { u.set(rs.getInt("id"), rs.getString("username"), rs.getString("password")); users.add(u); } }); return users; } public boolean updUser(final User user) { String sqlStr = "UPDATE USER SET username=?, PASSWORD=? WHERE id=?"; int status = jdbcTemplate.update(sqlStr, new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, user.getUsername()); ps.setString(2, user.getPassword()); ps.setInt(3, user.getId()); } }); return status == 0 ? false : true; } } 配置文件中声明jdbcTemplate即可 <!-- 配置Jdbc模板 --> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"></property> </bean>