在线客服
扫描二维码
下载博学谷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在线就业班课程,欢迎大家来博学谷官网体验免费的试听课程~
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java培训班课程怎么样?Java课程学什么?
Java培训班课程怎么样?Java课程学什么?博学谷的Java培训课程针对企业需求设计实用性比较强,Java培训课程学习Java基础语法:java运行环境,java入门,基本数据类型转换,运算符,流程控制语句,Random基本使用,函数,断点调试;基础语法练习、面向对象封装、常用API等内容。
5886
2019-09-10 15:33:15
Java是什么?Java开发原理
在互联网行业经常会听到Java工程师,写Java的,在招聘和就业时Java工程师也是非常热门和抢手的岗位,那么Java究竟是什么呢?Java是一种为多个平台生成软件的编程语言。由Sun Microsystems的前计算机科学家James A. Gosling在20世纪90年代中期开发的。编译的代码可在大多数操作系统上运行。
4027
2020-05-26 10:07:35
如何利用免费Java视频教程学习?
如何利用免费Java视频教程学习?想要去学习JAVA编程,又不知道从哪儿下手,更想用最低的成本达到最明显的效果,这都成为了许多JAVA小白的烦恼之一。那么观看视频教程成为了许多人的首选方式,但是大多数人都倾向于选择免费的视频教程去学习。
5005
2020-06-02 10:26:22
博学谷Java培训课程怎么样?
参加在线Java培训已经被越来越多的人所认可,通过在线培训的方式,既不影响正常的工作,还能不断提升自己的技能。选择一个好的学习平台能为自己的在线学习增加更多的保障。
5490
2020-07-29 09:53:19
.NET和Java发展前景哪个好?
在编程语言中Java的出现频率远远高于.NET,Java语言一些特点的独立性,在各项服务器中应用程序的开发中所占具的独特优势,Java有非常广泛的应用市场,其生态系统几乎涵盖了目前市面上大部分的软硬件,Java几乎是万能的,能想到的Java基本都能实现,程序员都比较偏爱Java开发。
3659
2021-03-22 11:51:41