Sping JdbcTemplateJdbcTemplate概述

JdbcTemplate 是 Spring JDBC 核心包(core)中的核心类,它可以通过配置文件、注解、Java 配置类等形式获取数据库的相关信息,实现了对 JDBC 开发过程中的驱动加载、连接的开启和关闭、SQL 语句的创建与执行、异常处理、事务处理、数据类型转换等操作的封装。我们只要对其传入SQL 语句和必要的参数即可轻松进行 JDBC 编程。

开发步骤

  1. 导入spring-jdbc和spring-tx坐标

      org.springframework  spring-jdbc  5.3.6  org.springframework  spring-tx  5.3.6
  2. 创建数据库表和实体对象

  3. 创建jdbctemplate对象

  4. 执行数据库操作

        public  void  test1() throws PropertyVetoException {//        创建一个数据源对象        ComboPooledDataSource dataSource = new ComboPooledDataSource();        dataSource.setDriverClass("com.mysql.jdbc.Driver");        dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/test");        dataSource.setUser("root");        dataSource.setPassword("123456");//创建jdbctemplate对象        JdbcTemplate jdbcTemplate = new JdbcTemplate();//        设置数据源对象,知道数据库在哪里        jdbcTemplate.setDataSource(dataSource);//        执行操作        jdbcTemplate.update("insert into account values (?,?)","tom",5000);                    }

利用spring产生jdbctemplate对象(创建数据源bean实例再将其注入jdbctemplate实例,然后通过spring容器获得)

让后为了解耦更加彻底,还可以把相关配置信息抽出为单独配置文件,以前写过很多次了不再多说

常用操作

修改(包括更新、删除、插入):

jdbcTemplate.update("insert into account values (?,?)","tom",5000);

查询:

//         查询多个对象//        Account是你要封装的实类的泛型        List query = jdbcTemplate.query("select * from account", new BeanPropertyRowMapper(Account.class));
//        查询一个对象        jdbcTemplate.queryForObject("select * from account where name = ?",new BeanPropertyRowMapper(Account),"tom")
//        聚合查询        Long aLong = jdbcTemplate.queryForObject("select count(*) from account ", Long.class);