美文网首页
J2EE进阶学习——Spring框架(六)——JdbcTempl

J2EE进阶学习——Spring框架(六)——JdbcTempl

作者: TiHom | 来源:发表于2018-03-13 18:52 被阅读0次

先导包

spring-jdbc、spring-tx、mysql驱动包,具体的自己去下载或者搜索

增加

  • 创建对象,设置数据库
DriverManagerDataSource datasource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql:///user");
dataSource.setUsername("xxxx");
dataSource.setPassword("xxxxxx");
  • 创建jdbcTemplate对象,设置数据源
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
String sql = "insert into t_user values(?,?);
  • 调用jdbcTemplate对象里面的方法实现操作
//更新的行数
int row = jdbcTemplate.update(sql,"xxx","xxx");
System.out.println(row);

修改

    @Test
    public void update(){
        DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql:///user");
        dataSource.setUsername("xxxx");
        dataSource.setPassword("xxxxxx");

        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);

        String sql = "update t_user set password=? where username=?";
        int row = jdbcTemplate.update(sql,"456789","TiHom");
        System.out.println(row);
    }

删除

@Test
    public void delete(){
        DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql:///user");
        dataSource.setUsername("xxxx");
        dataSource.setPassword("xxxxxx");

        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);

        String sql = "delete from t_user where username=?";
        int row = jdbcTemplate.update(sql,"TiHom");
        System.out.println(row);
    }

查询

  • 查询返回对象
@Test
    public void search(){
        DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql:///user");
        dataSource.setUsername("xxxx");
        dataSource.setPassword("xxxxxx");

        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);

        String sql = "select * from t_user where username=?";
        //第二个参数需要自己实现接口实现类,自己做数据封装
        User user = jdbcTemplate.queryForObject(sql,new MyRowMapper(),"TiHom");
        
        System.out.println(user);
    }

MyRowMapper实现类

class MyRowMapper implements RowMapper<User>{
    @Override
    public User mapRow(ResultSet resultSet, int i) throws SQLException {
        //从结果集中获取数据
        String username = resultSet.getString("username");
        String password = resultSet.getString("password");
        User user = new User();
        //将数据封装到对象里面
        user.setUsername(username);
        user.setPassword(password);
        return user;
    }
}
  • 查询返回list集合
    只需改动一处
    String sql = "select * from t_user";
    List<User> list = jdbcTemplate.query(sql,new MyRowMapper());

相关文章

网友评论

      本文标题:J2EE进阶学习——Spring框架(六)——JdbcTempl

      本文链接:https://www.haomeiwen.com/subject/bhezfftx.html