package cn.com.spring;import org.springframework.jdbc.core.namedparam.BeanPropertySqlParameterSource;import org.springframework.jdbc.core.namedparam.SqlParameterSource;import org.springframework.jdbc.core.simple.ParameterizedBeanPropertyRowMapper;import org.springframework.jdbc.core.simple.ParameterizedRowMapper;import org.springframework.jdbc.core.simple.SimpleJdbcTemplate;import org.springframework.jdbc.support.GeneratedKeyHolder;import org.springframework.jdbc.support.KeyHolder;import cn.com.JDBC.JdbcUtils;import cn.com.dao.UserDao;import cn.com.jadbc.domain.User;public class UserDaoSpringImpl implements UserDao{private SimpleJdbcTemplate simplejdbcTemplate=new SimpleJdbcTemplate(JdbcUtils.getDataSource());@Overridepublic void addUser(User user) {// TODO Auto-generated method stubString sql="insert into user(name,money,birthday)values(:name,:money,:birthday)";SqlParameterSource param=new BeanPropertySqlParameterSource(user);KeyHolder keyHolder=new GeneratedKeyHolder();this.simplejdbcTemplate.getNamedParameterJdbcOperations().update(sql, param, keyHolder);user.setId(keyHolder.getKey().intValue());}@Overridepublic User findUser(String loginName, String password) {String sql="select id,name,money,birthday from user where name=?";return this.simplejdbcTemplate.queryForObject(sql, ParameterizedBeanPropertyRowMapper.newInstance(User.class), loginName);}@Overridepublic User getUser(int userId) {String sql="select id,name,money,birthday from user where id=?";return this.simplejdbcTemplate.queryForObject(sql, ParameterizedBeanPropertyRowMapper.newInstance(User.class), loginName);}@Overridepublic void update(User user) {String sql="update user set name=?,birthday=?,money=? where id=?";this.simplejdbcTemplate.update(sql, user.getName(),user.getId(),user.getBirthday(),user.getMoney());//方法二:String sql="update user set name=:name,birthday=:birthday,money=:money where id=:id";this.simplejdbcTemplate.update(sql, new BeanPropertySqlParameterSource(user));}@Overridepublic void delete(User user) {// TODO Auto-generated method stubString sql="delete from user where id=?";this.simplejdbcTemplate.update(sql, user.getId());}}package cn.com.dao;import cn.com.jadbc.domain.User;public interface UserDao {public void addUser(User user);public User findUser(String loginName,String password);public User getUser(int userId);public void update(User user);public void delete(User user);}