zoukankan      html  css  js  c++  java
  • Spring Jdbc使用

    @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>
  • 相关阅读:
    OCP-1Z0-052-V8.02-157题
    OCP-1Z0-052-V8.02-72题
    error C2061: 语法错误 : 标识符“_DebugHeapTag”
    OCP-1Z0-052-V8.02-23题
    OCP-1Z0-052-V8.02-77题
    vc2005 使用Boost库的编译步骤.
    OCP-1Z0-052-V8.02-79题
    OCP-1Z0-052-V8.02-82题
    OCP-1Z0-052-V8.02-81题
    OCP-1Z0-052-V8.02-80题
  • 原文地址:https://www.cnblogs.com/mengyao/p/4857150.html
Copyright © 2011-2022 走看看