Spring 的JdbcTemplatecaozu

JdbcTemplate

  1. Spring k框架是一站式框架

    1. 针对javaEEsanceng三层,每一层都有解决的技术
    2. 在Dao层使用,使用jdbcTemplate
  2. spring对不同的持久化技术都进行了封装

  3. jdbcTemplate使用和dbutis使用很相识,都是对数据库进行crud操作

准备:

(1)导入jdbcTemplate依赖

         <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>5.1.5.RELEASE</version>
        </dependency>
 <!-- https://mvnrepository.com/artifact/org.springframework/spring-tx -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>5.1.5.RELEASE</version>
        </dependency>

增加、修改、删除

        //创建数据库对象,设置数据库对象
        DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql:///spring?serverTimezone=GMT%2B8");
        dataSource.setUsername("root");
        dataSource.setPassword("123456");

        //(3)创建JdbcTemplate,设置数据源
         JdbcTemplate template = new JdbcTemplate(dataSource);

        //调用jdbcTemplate对象里面的方法实现操作
        String sql = "insert into user values (?,?)";
        int row =template.update(sql, "tom ", "250");
        System.out.println(row);

查找

private void getUser() {
        String sql = "select * from user where username =?";
        //返回某个值
        User user = template.queryForObject(sql, new RowMapper<User>() {
            @Override
            public User mapRow(ResultSet resultSet, int i) throws SQLException {
                System.out.println(resultSet.getString("username"));
                System.out.println(resultSet.getString("password"));
                System.out.println(i);
                return null;
            }
        }, "tom1");
        System.out.println(user);
    }

 //查询记录
    private void queryCount() {
        String sql = "select count(username) from user";
        //返回某个值
        int count = template.queryForObject(sql, Integer.class);
        System.out.println(count);
    }

 

 

 

posted @ 2019-03-10 21:24  志旋  阅读(53)  评论(0)    收藏  举报