JdbcTemplate 模板类入门使用及DML语句执行

由于每次使用jdbc时都需要创建连接  获得PreparedStatement对象  再设置参数 再执对应的executeXxx方法 如果方法有返回值还要对返回值进行处理 最后再关闭结果集 关闭statement 关闭连接 非常的繁琐 且很容易写错 所以spring提供了jdbcTemplate模板类

jdbcTemplate类只需要创建并且传入sql语句和参数 其他的事情会自动完成 更加面向对象 不用思考每次执行的步骤

1.常用构造方法

JdbcTemplate jdbcTemplate=new JdbcTemplate(DataSource dataSource);

2.简单入门案例 

        //DruidDataSourceUtil是之前德鲁伊连接池抽取的工具类
        DataSource dataSource = DruidDataSourceUtil.getDataSource();
        String sql="update student set name=? where id=?";
        //JdbcTemplate模板类需要一个dataSource作为参数
        JdbcTemplate jdbcTemplate=new JdbcTemplate(dataSource);
        Object[]  paras={
                "小爱",1
        };
        //DML语句使用update方法
        //参数1 是要执行的sql语句
        //参数2 是可变长参数 可以传入一数组 用来存放真实的参数
        int update = jdbcTemplate.update(sql, paras);
        System.out.println(update);

jdbcTemplate.execute()方法用来执行DDL语句 一般我们不会在程序中做库操作 所以不做阐述

jdbcTemplate.update方法用来执行DML语句

jdbcTemplate.queryXxx方法用来执行DQL语句 根据返回值结果的不同,有相应的Xxx方法 

3.实现增删改操作(DML语句)

@Test
    public void addMethod(){
        JdbcTemplate jdbcTemplate=new JdbcTemplate(DruidDataSourceUtil.getDataSource());
        String sql="insert into student values(NULL ,?,?,?)";
        Object[] params={
                "小左","女",18
        };
        //参数1 要执行的sql语句
        //参数2 ?所在位置的真正的参数
        //返回一个int类型的数据 代表影响了数据库中几行数据
        int update = jdbcTemplate.update(sql,params);
        System.out.println(update);
    }
    @Test
    public void deleteMethod(){
        JdbcTemplate jdbcTemplate=new JdbcTemplate(DruidDataSourceUtil.getDataSource());
        String sql="delete from student where id=?";
        Object[] params={
                9
        };
        int update = jdbcTemplate.update(sql, params);
        System.out.println(update);
    }
    @Test
    public void updateMethod(){
        JdbcTemplate jdbcTemplate =new JdbcTemplate(DruidDataSourceUtil.getDataSource());
         String sql="update student set name=? where id=?";
         Object[] params={
                 "小爱",13
         };
        int update = jdbcTemplate.update(sql, params);
        System.out.println(update);
    }

 

 

你可能感兴趣的:(JDBC)