0

0

SpringBoot怎么使用JdbcTemplate操作数据库

王林

王林

发布时间:2023-05-16 11:07:05

|

1665人浏览过

|

来源于亿速云

转载

JdbcTemplate 是 Spring 提供的一套 JDBC 模版框架,利用 AOP 技术来解决直接使用 JDBC 时大量重复代码的问题。虽然没有 MyBatis 那么灵活,但是比直接使用 JDBC 要方便很多。

一、创建表

CREATE TABLE `t_demo` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(120) NOT NULL,
  `num` int(11) NOT NULL,
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='demo表';

SpringBoot怎么使用JdbcTemplate操作数据库

二、添加依赖、配置

1、首先编辑 pom.xml 文件,添加相关依赖。



    org.springframework.boot
    spring-boot-starter-jdbc

 


    mysql
    mysql-connector-java

 


    com.alibaba
    druid
    1.1.9

2、编写配置

spring.datasource.type = com.alibaba.druid.pool.DruidDataSource
spring.datasource.url = jdbc:mysql://localhost:3306/PiaoDB?useUnicode=swater&characterEncoding=UTF-8
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.driver-class-name = com.mysql.jdbc.Driver

三、编写代码

明日B2C电子商务系统源码
明日B2C电子商务系统源码

对于典型的数据库管理系统,尤其是B2C电子商务网站这样数据流量比较大的网络管理系统,必须要满足使用方便、操作灵活等设计需求。

下载

1、编写实体类

@Data
@Accessors(chain = true)
public class Demo {

    private Integer id;

    private String name;

    private Integer num;

    private Date createTime;

}

2、编写Dao代码

@Repository
public class DemoDao {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    // 新增数据
    public int addDemo(Demo demo) {
        return jdbcTemplate.update("INSERT INTO t_demo(name, num) VALUE (?, ?)",
                demo.getName(), demo.getNum());
    }

    // 修改数据
    public int updateDemo(Demo demo) {
        return jdbcTemplate.update("UPDATE t_demo SET name=?, num=? WHERE id=?",
                demo.getName(), demo.getNum(), demo.getId());
    }

    // 删除数据
    public int deleteDemoById(Integer id) {
        return jdbcTemplate.update("DELETE FROM t_demo WHERE id=?", id);
    }

    // 获取单条数据
    public Demo getDemoById(Integer id) {
        return jdbcTemplate.queryForObject("SELECT * FROM t_demo WHERE id=?",
                new BeanPropertyRowMapper<>(Demo.class), id);
    }

    // 获取多条数据
    public List getAllDemos() {
        return jdbcTemplate.query("SELECT * FROM t_demo",
                new BeanPropertyRowMapper<>(Demo.class));
    }

}

3、编写Controller代码

@RestController
@RequestMapping("/demo")
public class DemoController {

    @Autowired
    private DemoDao demoDao;

    @RequestMapping("")
    public void test(){
        // 新增数据
        int num = demoDao.addDemo(new Demo().setName("piao").setNum(20));
        System.out.println("插入一条数据:" + num);

        // 修改数据
        int num2 = demoDao.updateDemo(new Demo().setId(15).setName("piao").setNum(22));
        System.out.println("更新一条数据:" + num2);

        // 删除数据
        int num3 = demoDao.deleteDemoById(13);
        System.out.println("删除一条数据:" + num3);

        // 查询单条数据
        Demo demo = demoDao.getDemoById(15);
        System.out.println("查询1条数据:" + demo.toString());

        // 查询多条数据
        List demos = demoDao.getAllDemos();
        System.out.println("查询多条数据:" + demos);
    }

}

四、验证结果

SpringBoot怎么使用JdbcTemplate操作数据库

相关专题

更多
spring框架介绍
spring框架介绍

本专题整合了spring框架相关内容,想了解更多详细内容,请阅读专题下面的文章。

111

2025.08.06

mybatis一级缓存和二级缓存
mybatis一级缓存和二级缓存

在MyBatis中,一级缓存和二级缓存是两种不同级别的缓存机制,它们都可以用来提高性能。本专题提供mybatis一级缓存和二级缓存相关文章,大家可以免费阅读。

296

2023.08.21

ibatis和mybatis有什么区别
ibatis和mybatis有什么区别

ibatis和mybatis的区别:1、基本信息不同;2、开发时间不同;3、功能与易用性;4、配置文件;5、入参类型与出参类型;6、返回结果集接受方式;7、语法差异;8、数据库方言支持;9、插件支持;10、社区活跃度;11、全球化支持。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

84

2024.02.23

mybatis如何配置数据库连接
mybatis如何配置数据库连接

mybatis配置数据库连接的方法:1、指定数据源;2、配置事务管理器;3、配置类型处理器和映射器;4、使用环境元素;5、配置别名。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

102

2024.02.23

mybatis工作原理及流程是什么
mybatis工作原理及流程是什么

mybatis工作原理及流程:1、配置文件;2、接口与映射;3、sql解析与生成;4、执行计划;5、结果处理;6、动态sql;7、缓存机制;8、插件;9、事务管理;10、日志与监控;11、扩展性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

153

2024.02.23

hibernate和mybatis有哪些区别
hibernate和mybatis有哪些区别

hibernate和mybatis的区别:1、实现方式;2、性能;3、对象管理的对比;4、缓存机制。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

141

2024.02.23

Java MyBatis框架
Java MyBatis框架

本专题专注于Java主流ORM框架MyBatis的应用,系统讲解SQL映射、动态SQL、结果映射、分页查询、缓存机制与多表关联等核心内容,并结合企业管理系统、电商平台和后台管理项目实战,帮助学员全面掌握高效的数据库持久层开发技能。

132

2025.08.26

pdf怎么转换成xml格式
pdf怎么转换成xml格式

将 pdf 转换为 xml 的方法:1. 使用在线转换器;2. 使用桌面软件(如 adobe acrobat、itext);3. 使用命令行工具(如 pdftoxml)。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1897

2024.04.01

c++ 根号
c++ 根号

本专题整合了c++根号相关教程,阅读专题下面的文章了解更多详细内容。

45

2026.01.23

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Redis6入门到精通超详细教程
Redis6入门到精通超详细教程

共47课时 | 5.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号