在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
本文将和大家聊聊SpringJdbcTemplate基本使用,内容包括JdbcTemplate概述、JdbcTemplate开发步骤、Spring产生JdbcTemplate对象、JdbcTemplate的常用操作。其中本文会详细为大家讲解JdbcTemplate开发步骤,帮助大家了解Spring JdbcTemplate基本使用。下面一起来看看吧!
一、JdbcTemplate概述
JdbcTemplate是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。spring框架为我们提供了很多的操作模板类。例如:操作关系型数据的JdbcTemplate和HibernateTemplate,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate等等。
二、JdbcTemplate开发步骤
1、导入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>
2、创建数据库表和实体
public class Account {
private String name;
private double money;
//省略get和set方法
}
3、创建JdbcTemplate对象
4、执行数据库操作
//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模版对象中,配置如下:
<!--数据源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基本使用详解,大家都看懂了吗?关于JdbcTemplate的更多内容,尽在JavaEE在线就业班课程,欢迎大家来博学谷官网体验免费的试听课程~
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
JavaWeb核心技术课程项目实战
JavaWeb就是用Java技术来解决相关Web领域的技术总和,包括Web服务器和Web客户端两部分。Java的Web框架有很多种,虽然各不相同,但基本也都是遵循特定的路数的。使用Servlet或者Filter拦截请求,使用MVC的四项设计架构,使用约定、XML或Annotation实现配置,运用Java面向对象的特点实现请求和相应的流程。
5876
2019-07-22 15:07:55
阿里开源的Java诊断工具推荐
本文主要推荐大家一款阿里开源的Java诊断工具--Arthas。下面让我们一起来看看Arthas是什么,它的作用及如何安装吧!
5431
2019-08-06 20:17:47
JavaEE开发培训班的实战项目有哪些?
JavaEE开发培训班的课程除了传授必要的基础理论知识,还有各大企业JavaEE开发的案例讲解,由入门案例到详细工作原理及特性的解析,逐步深入。学员完成课程后JavaEE开发能力与行业接轨,可以轻松胜任企业高要求工作。那么JavaEE开发培训班的实战项目有哪些呢?
4675
2019-12-16 15:49:18
基于Java的游戏设计之植物大战僵尸
植物大战僵尸这款游戏相信大家或多或少都玩过,那么大家有没有想过自己尝试着做一下植物大战僵尸的游戏设计呢。本文将基于Java语言为大家展示如何开发出植物大战僵尸游戏的简易版本,主要内容包括规则、对象、功能和背景音乐的相关内容设计,如果大家对此有兴趣的话,就接着看下去吧!
6247
2020-04-20 11:59:20
Java学习笔记之方法
方法是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集。需要注意的是,方法必须先创建才可以使用,该过程成为方法定义,而且方法创建后并不是直接可以运行的,需要手动使用后才执行,该过程成为方法调用。下面我们一起来梳理一下关于方法的Java学习笔记吧~
3419
2020-05-21 16:11:09