第六章 SpringBoot系列使用JdbcTemplate操作数据

系列文章目录

第一章 SpringBoot系列之从0搭建项目
第二章 SpringBoot系列返回json数据
第三章 SpringBoot系列GlobalException全局异常捕获
第四章 SpringBoot系列整合Mybatis做增删改查
第五章 SpringBoot系列配置JPA访问数据
第六章 SpringBoot系列使用JdbcTemplate操作数据
第七章 SpringBoot系列静态资源处理,访问磁盘文件


前言

有些项目可能操作数据库极少,或者都是极其简单的语句,那么我们就可以使用JdbcTemplate类中的API来操作,只需要在pom引入JdbcTemplate依赖,dao层类加上@Repository注解,使用@Autowired依赖注入JdbcTemplate对象即可。


提示:以下是本篇文章正文内容,下面案例可供参考

一、代码编写步骤

1.mysql建表

/*
Navicat MySQL Data Transfer

Source Server         : test
Source Server Version : 50718
Source Host           : localhost:3306
Source Database       : demo

Target Server Type    : MYSQL
Target Server Version : 50718
File Encoding         : 65001

Date: 2020-10-27 10:04:01
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `person`
-- ----------------------------
DROP TABLE IF EXISTS `person`;
CREATE TABLE `person` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL,
  `age` int(3) NOT NULL,
  `sex` char(1) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4;

-- ----------------------------
-- Records of person
-- ----------------------------
INSERT INTO `person` VALUES ('1', 'lc', '18', '男');

2.pom.xml加入jdbcTemplate,mysql驱动包的依赖

<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
	<version>5.1.47</version>
</dependency>
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>

3.application.properties配置文件中加入数据库连接配置

########################################################
###datasource
########################################################
#数据库连接地址
spring.datasource.url = jdbc:mysql://cdb-khlq4cod.gz.tencentcdb.com:10157/demo?useSSL=false
#用户名
spring.datasource.username = root
#密码
spring.datasource.password = Iccc@2020
#驱动包
spring.datasource.driver-class-name = com.mysql.jdbc.Driver
#指定连接池中最大的活跃连接数.
spring.datasource.max-active=20
#指定连接池最大的空闲连接数量.
spring.datasource.max-idle=8
#指定连接池最小的空闲连接数量.
spring.datasource.min-idle=0

4.编写dao层,controller层代码,简单点就不写service了。

JdbcPersonDao.java

package com.example.demo.dao;

import com.example.demo.model.PersonDO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

@Repository
public class JdbcPersonDao {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    public PersonDO getPersonDO(Long id) {
        return jdbcTemplate.queryForObject("select * from person where id = :id", PersonDO.class, new Object[]{id});
    }
}

DemoController.java

package com.example.demo.controller;

import com.example.demo.dao.JdbcPersonDao;
import com.example.demo.dto.JsonDataDTO;
import com.example.demo.model.PersonDO;
import com.example.demo.service.PersonService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

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

    @Autowired
    private JdbcPersonDao jdbcPersonDao;

    @RequestMapping("/queryDataForJdbc")
    public PersonDO queryDataForJdbc(@RequestParam("id") Long id) {
        return personService.selectPersonInfoJpaDemo(id);
    }

}

二、demo演示

启动项目,浏览器访问:http://localhost:8080/queryDataForJdbc?id=1
在这里插入图片描述


总结

又到了总结的时刻了,对比前两章所写的ORM映射框架,今天的JdbcTemplate更简单便捷,很适用表少,SQL简单的项目引入,代码也非常的简单易学,简单配置即可使用,本章就到这了喜欢的同学点赞关注哈!下章见。

原文地址:https://www.cnblogs.com/javakfz/p/13938206.html