SpringBoot 整合 JDBC 实例
0、数据库表
CREATE DATABASE springboot;
USE springboot;
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`name` varchar(50) DEFAULT NULL COMMENT '姓名',
`age` int(11) DEFAULT NULL COMMENT '年龄',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; INSERT INTO user values (1,"村雨遥",25);
INSERT INTO user values (2,"张三",26);
INSERT INTO user values (3,"李四",27);
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <groupId>com.example</groupId>
<artifactId>JDBCPrac</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>JDBCPrac</name>
<description>Demo project for Spring Boot</description> <properties>
<java.version>1.8</java.version>
</properties> <dependencies>
<!-- Web 模块依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- SQL 模块依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<!-- Jdbc Template 模块依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency> <dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-test</artifactId>
<version>3.0.2</version>
<scope>test</scope>
</dependency> <dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.9.2</version>
<scope>test</scope>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> </project>
1、
package com.cunyu.controller; import com.cunyu.pojo.User;
import com.cunyu.service.UserService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView; import java.util.List; /**
* @author : cunyu
* @version : 1.0
* @className : UserController
* @date : 2020/7/29 16:22
* @description : UserController
*/ @RequestMapping("/user")
@RestController
public class UserController {
private static final Logger logger = LoggerFactory.getLogger(UserController.class); private final UserService userService; public UserController(UserService userService) {
this.userService = userService;
} @GetMapping("/list")
public List<User> getUsers() {
logger.info("从数据库读取数据");//打印到console
return userService.getList();
}
}
2、User Bean
package com.cunyu.pojo; import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.stereotype.Component; /**
* @author : cunyu
* @version : 1.0
* @className : Author
* @date : 2020/7/29 16:20
* @description : User 实体类
*/ @Component
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private Long id;
private String name;
private Integer age;
}
3
package com.cunyu.service; import com.cunyu.pojo.User; import java.util.List; /**
* @author : cunyu
* @version : 1.0
* @className : UserService
* @date : 2020/7/29 21:12
* @description : TODO
*/ public interface UserService {
/**
* @param
* @return
* @description 获取所有数据列表
* @date 2020/7/29 21:57
* @author cunyu1943
* @version 1.0
*/
public List<User> getList();
}
4
package com.cunyu.service.Impl; import com.cunyu.pojo.User;
import com.cunyu.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Service; import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List; /**
* @author : cunyu
* @version : 1.0
* @className : UserServiceImpl
* @date : 2020/7/29 21:13
* @description : TODO
*/ @Service
public class UserServiceImpl implements UserService { private final JdbcTemplate jdbcTemplate; public UserServiceImpl(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
} @Override
public List<User> getList() {
String sql = "SELECT id, name, age FROM user";
return (List<User>) jdbcTemplate.query(sql, new RowMapper<User>() { @Override
public User mapRow(ResultSet resultSet, int i) throws SQLException {
User user = new User();
user.setId(resultSet.getLong("id"));
user.setName(resultSet.getString("name"));
user.setAge(resultSet.getInt("age"));
return user;
}
});
}
}
5
package com.cunyu; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class JdbcPracApplication { public static void main(String[] args) {
SpringApplication.run(JdbcPracApplication.class, args);
} }
浏览器访问 localhost:8080/user/list
项目代码:https://github.com/bfx1000/SpringBoot_JDBC
SpringBoot 整合 JDBC 实例的更多相关文章
- springboot整合JDBC出现Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.
今天使用springboot整合JDBC的使用,开始使用的是 com.mysql.jdbc.Driver驱动 结果运行出现此异常 那我们根据提示要求来修改即可 把驱动改成最新的com.mysql.cj ...
- 3、SpringBoot整合之SpringBoot整合JDBC
SpringBoot整合JDBC 一.创建SpringBoot项目 选择Spring Web.JDBC API.MySQL Driver 二.在pom配置文件中修改JDBC版本,导入lombok &l ...
- SpringBoot 整合jdbc和mybatis
摘要 该文章主要为记录如何在SpringBoot项目中整合JDBC和MyBatis,在整合中我会使用简单的用法和测试用例,毕竟该文章目的是为了整合,而不是教大家如何去使用.希望大家多多包涵. 通用配置 ...
- SpringBoot整合jdbc及整合Druid数据源
一.整合jdbc 1.创建一个springInitializr项目 勾选 web----springweb.SQL----JDBC API,MYSQL Diver 2.连接数据库 3.创建yml 4. ...
- 9 — springboot整合jdbc、druid、druid实现日志监控 — 更新完毕
1.整合jdbc.druid 1).导入依赖 <dependency> <groupId>org.springframework.boot</groupId> &l ...
- SpringBoot整合Jdbc
(1).添加相关依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId ...
- SpringBoot整合JDBC模板
目录 Grade实体类 public class Grade { private Integer gradeId; private String gradeName; public Grade(){ ...
- SpringBoot整合JDBC-调用数据库
SpringData 对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 底层都是采用 Spring Data 的方式进行统一处理. Sprin ...
- SpringBoot整合mybatis、shiro、redis实现基于数据库的细粒度动态权限管理系统实例
1.前言 本文主要介绍使用SpringBoot与shiro实现基于数据库的细粒度动态权限管理系统实例. 使用技术:SpringBoot.mybatis.shiro.thymeleaf.pagehelp ...
- SpringBoot整合Quartz及log4j实例
SpringBoot整合Quartz及log4j实例 因为之前项目中经常会做一些定时Job的东西,所以在此记录一下,目前项目中已经使用elastic-job,这个能相对比Quartz更加简单方便一些, ...
随机推荐
- Python生态工具
Python内置小工具 1秒钟启动一个下载服务器 在实际工作中,时常会有这样的一个需求:将文件传给其他同事.将文件传给同事本身并不是一个很繁琐的工作,现在的聊天工具一般都支持文件传输.但是,如果需要传 ...
- vs xamarin获取sha1申请百度sdk密钥
请查看微软帮助文档 查找密钥存储的签名 - Xamarin | Microsoft Docs
- java mysql删除表中多余的重复记录(多个字段),只留有id最小的记录
mysql 删除表中多余的重复记录(多个字段),只留有id最小的记录 DELETE FROM 表1 f WHERE (f.字段1,f.字段2) IN ( SELECT 字段1,字段2 FROM 表1 ...
- 2003031120—廖威—Python数据分析第三周作业—numpy的简单操
项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/pexy/20sj 这个作业要求链接 https://edu.cnblogs.com/campus/pexy ...
- js 将多层json对象 转化为一层json
const parse = data => { const uid = `uid_${Date.now()}`; const process = (input, prefix = '', jso ...
- Docker In Action 学习笔记 根据第二版有所更新
第一章 最简单的 hello_world/Dockerfile FROM busybox:latest CMD ["echo", "hello world"] ...
- OSIDP-I/O管理和磁盘调度-11
I/O设备 I/O设备分类:人可读.机器可读和远程通信三类. I/O设备之间的差别: 1.数据传送速率 2.应用领域 3.控制的复杂性 4.传送单位 5.数据表示形式 6.错误条件 I/O功能的组织 ...
- 关于PLC的脉冲输出(S7-300)
1. 关于脉冲输出 脉冲输出的方法有很多: 如果要产生占空比为50%的脉冲信号: ① 用S7-300PLC的时钟存储器 右键点击PLC,选中时钟存储器,默认存储字节为0. 各时钟存储器的周 ...
- 120、商城业务---订单服务---rabbitTemplate循环依赖问题
https://blog.csdn.net/qq_41731316/article/details/119803796
- 获取请求结果中json数据的值
import json with open("config.json", "r") as f: your_dict = json.loads( ...