Java 超详细讲解核心类Spring JdbcTemplate

2023-01-21 0 3,113

目录

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
name varchar(20)
money varchar(20)

Java 超详细讲解核心类Spring JdbcTemplate

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)

:本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可, 转载请附上原文出处链接。
1、本站提供的源码不保证资源的完整性以及安全性,不附带任何技术服务!
2、本站提供的模板、软件工具等其他资源,均不包含技术服务,请大家谅解!
3、本站提供的资源仅供下载者参考学习,请勿用于任何商业用途,请24小时内删除!
4、如需商用,请购买正版,由于未及时购买正版发生的侵权行为,与本站无关。
5、本站部分资源存放于百度网盘或其他网盘中,请提前注册好百度网盘账号,下载安装百度网盘客户端或其他网盘客户端进行下载;
6、本站部分资源文件是经压缩后的,请下载后安装解压软件,推荐使用WinRAR和7-Zip解压软件。
7、如果本站提供的资源侵犯到了您的权益,请邮件联系: 442469558@qq.com 进行处理!

猪小侠源码-最新源码下载平台 Java教程 Java 超详细讲解核心类Spring JdbcTemplate http://www.20zxx.cn/463444/xuexijiaocheng/javajc.html

猪小侠源码,优质资源分享网

常见问题
  • 本站所有资源版权均属于原作者所有,均只能用于参考学习,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,建议提前注册好百度网盘账号,使用百度网盘客户端下载
查看详情

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务