系列文章目录
文章目录
项目结构

一、创建springboot工程

二、引入依赖
- mysql 小编使用8.0驱动,在配置文件的url需要加上useSSL=false
- jdbc
- druid
- mybatis
<!--mysql驱动包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.12</version>
</dependency>
<!--整合jdbc-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!--整合druid连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.2.1</version>
</dependency>
<!--整合mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
三、配置文件(application.properties)
# 应用名称
spring.application.name=db_safe
# 应用服务 WEB 访问端口
server.port=7894
# 配置MySQL数据库连接(注:小编用的mysql8的驱动,所以url需要加上&useSSL=false)
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test01?rewriteBatchedStatements=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
# druid数据库连接池
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
# mybatis指定xml位置
mybatis.mapper-locations=classpath:mapper/**/*Mapper.xml
四、分层的代码
4.1 、pojo
package sqy.db_safe.pojo;
/**
* @author suqinyi
* @Date 2021/7/9
*/
public class User {
private Long id;
private String username;
private String password;
public User() {
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
public User(Long id, String username, String password) {
this.id = id;
this.username = username;
this.password = password;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
4.2 、controller
package sqy.db_safe.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import sqy.db_safe.pojo.User;
import sqy.db_safe.service.UserService;
import java.util.List;
/**
* @author suqinyi
* @Date 2021/7/9
*/
@RestController
public class UserController {
@Autowired
UserService userService;
@GetMapping("/findALL")
public Object findALL(){
List<User> list=userService.findALL();
return list;
}
}
4.3 、service和impl
UserService
package sqy.db_safe.service;
import sqy.db_safe.pojo.User;
import java.util.List;
/**
* @author suqinyi
* @Date 2021/7/9
*/
public interface UserService {
List<User> findALL();
}
UserServiceImpl
package sqy.db_safe.service.impl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import sqy.db_safe.mapper.UserMapper;
import sqy.db_safe.service.UserService;
import java.util.List;
/**
* @author suqinyi
* @Date 2021/7/9
*/
@Service
public class UserServiceImpl implements UserService {
@Autowired
UserMapper userMapper;
@Override
public List findALL() {
return userMapper.findALL();
}
}
4.4、mapper接口和xml
接口
package sqy.db_safe.mapper;
import org.springframework.stereotype.Repository;
import sqy.db_safe.pojo.User;
import java.util.List;
/**
* @author suqinyi
* @Date 2021/7/9
*/
@Repository
public interface UserMapper {
List<User> findALL();
}
xml内容
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="sqy.db_safe.mapper.UserMapper">
<select id="findALL" resultType="sqy.db_safe.pojo.User">
select * from user
</select>
</mapper>
五、细节说明
1、启动类上使用@MapperScan注解,指定扫描包的位置
2、配置文件中要指定xml文件的包的位置
3、小编引入的MySQL依赖版本是8.0+
所以配置文件的url要加上useSSL=false
spring.datasource.url=jdbc:mysql://localhost:3306/test01?rewriteBatchedStatements=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false
六、启动项目访问

版权声明:本文为qq_44413835原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。