Java 超详细讲解核心类Spring JdbcTemplate

Sabah ·
更新时间:2024-11-15
· 21 次阅读

目录

JdbcTemplate概述

JdbcTemplate开发步骤

JdbcTemplate快速入门

Spring产生JdbcTemplate对象

JdbcTemplate的常用操作

修改操作

删除和查询全部操作

查询单个数据操作

本章小结

JdbcTemplate概述

它是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。spring框架为我们提供了很多的操作 模板类。例如:操作关系型数据的JdbcTemplate和HibernateTemplate,操作nosql数据库的RedisTemplate,操 作消息队列的JmsTemplate等等。

JdbcTemplate开发步骤

① 导入spring-jdbc和spring-tx坐标

② 创建数据库表和实体

③ 创建JdbcTemplate对象

④ 执行数据库操作

JdbcTemplate快速入门

① 在pom.xml文件中导入spring-jdbc和spring-tx坐标

<!--导入spring的jdbc坐标--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>5.0.5.RELEASE</version> </dependency> <!--导入spring的tx坐标--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>5.0.5.RELEASE</version> </dependency>

② 创建数据库表和实体

表名称account
namevarchar(20)
moneyvarchar(20)

public class Account { private String name; private double money; //为方便展示省略get和set方法,具体开发中不能省。 }

③ 创建JdbcTemplate对象,执行数据库操作

//1、创建数据源对象 ComboPooledDataSource dataSource = new ComboPooledDataSource(); dataSource.setDriverClass("com.mysql.jdbc.Driver"); dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/test"); dataSource.setUser("root"); dataSource.setPassword("root"); //2、创建JdbcTemplate对象 JdbcTemplate jdbcTemplate = new JdbcTemplate(); //3、设置数据源给JdbcTemplate jdbcTemplate.setDataSource(dataSource); //4、执行操作 jdbcTemplate.update("insert into account values(?,?)","tom",5000); Spring产生JdbcTemplate对象

我们可以将JdbcTemplate的创建权交给Spring,将数据源DataSource的创建权也交给Spring,在Spring容器内部将数据源DataSource注入到JdbcTemplate模版对象中,applicationContext.xml配置如下:

<!--数据源DataSource--> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="driverClass" value="com.mysql.jdbc.Driver"></property> <property name="jdbcUrl" value="jdbc:mysql:///test"></property> <property name="user" value="root"></property> <property name="password" value="root"></property> </bean> <!--JdbcTemplate--> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"></property> </bean>

 从容器中获得JdbcTemplate进行添加操作。

@Test public void testSpringJdbcTemplate() throws PropertyVetoException { ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml"); JdbcTemplate jdbcTemplate = applicationContext.getBean(JdbcTemplate.class); jdbcTemplate.update("insert into account values(?,?)","lucy",5000); } JdbcTemplate的常用操作 修改操作 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("classpath:applicationContext.xml") public class JdbcTemplateCRUDTest { @Autowired private JdbcTemplate jdbcTemplate; @Test //测试修改操作 public void testUpdate(){ jdbcTemplate.update("update account set money=? where name=?",1000,"tom"); } } 删除和查询全部操作 @Test public void testDelete(){ jdbcTemplate.update("delete from account where name=?","tom"); } @Test public void testQueryAll(){ List<Account> accounts = jdbcTemplate.query("select * from account", new BeanPropertyRowMapper<Account>(Account.class)); for (Account account : accounts) { System.out.println(account.getName()); } } 查询单个数据操作 @Test //测试查询单个对象操作 public void testQueryOne(){ Account account = jdbcTemplate.queryForObject("select * from account where name=?", new BeanPropertyRowMapper<Account>(Account.class), "tom"); System.out.println(account.getName()); } @Test //测试查询单个简单数据操作(聚合查询) public void testQueryCount(){ Long aLong = jdbcTemplate.queryForObject("select count(*) from account", Long.class); System.out.println(aLong); } 本章小结

Spring JdbcTemplate开发步骤:

① 导入spring-jdbc和spring-tx坐标

② 创建数据库表和实体

③ 创建JdbcTemplate对象

JdbcTemplate jdbcTemplate = new JdbcTemplate();

jdbcTemplate.setDataSource(dataSource);

④ 执行数据库操作

更新操作:

dbcTemplate.update(sql,params)

查询操作:

jdbcTemplate.query(sql,Mapper,params)

jdbcTemplate.queryForObject(sql,Mapper,params)

到此这篇关于Java 超详细讲解核心类Spring JdbcTemplate的文章就介绍到这了,更多相关Java Spring JdbcTemplate内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!



jdbctemplate JAVA spring

需要 登录 后方可回复, 如果你还没有账号请 注册新账号