## SpringBoot + mybatis的整合
所需要的环境 本人的mysql是8.0.13 所以需要修改时区
allowMultiQueries=true&useUnicode=true&characterEncoding=UTF8&useSSL=false&serverTimezone=UTC&serverTimezone=Asia/Shanghai
整合工具以及环境
1 IDEA
2 mysql数据库8.0.13
3 jdk 8+
4 maven 3.6
接下来就让我们一起来做
第一步 找到他 然后 next
在这里可以填写项目的名称 路径 然后点击next
点击web然后吧他们全部勾上(因为本人也是第一次整和这个 并不知道有什么有 ,为了避免麻烦最好全部勾上)
在这里呢勾上这几个 jdbc的api 等等 然后next
他就生成 成功了
打开我们的pom文件 因为在这用的是8.0.13的数据库所以要吧一下代码放到pom的中去
mysql
mysql-connector-java
8.0.13
接下来就来编写我们的 个个数据层
先来创建数据库
/*
SQLyog Ultimate v12.09 (64 bit)
MySQL - 8.0.13 : Database - test1
*/
/*!40101 SET NAMES utf8 */;
/!40101 SET SQL_MODE=’’/;
/!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 /;
/!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 /;
/!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE=‘NO_AUTO_VALUE_ON_ZERO’ /;
/!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 /;
CREATE DATABASE /!32312 IF NOT EXISTS/test1
/*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */;
USE test1
;
/*Table structure for table user
*/
DROP TABLE IF EXISTS user
;
CREATE TABLE user
(
id
int(32) NOT NULL AUTO_INCREMENT,
userName
varchar(32) NOT NULL,
passWord
varchar(50) NOT NULL,
realName
varchar(32) DEFAULT NULL,
PRIMARY KEY (id
)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE /;
/!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS /;
/!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS /;
/!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
接下来就编写我们的实体
entity.java
package com.example.demo.entity;
public class User {
private int id;
private String userName;
private String possWord;
private String realName;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPossWord() {
return possWord;
}
public void setPossWord(String possWord) {
this.possWord = possWord;
}
public String getRealName() {
return realName;
}
public void setRealName(String realName) {
this.realName = realName;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", possWord='" + possWord + '\'' +
", realName='" + realName + '\'' +
'}';
}
}
mapper.java
package com.example.demo.mapper;
import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper //这个注解必须要有 作为一个接口
public interface UserMapper {
public List<User> findUserInfo();
public int addUserInfo(User user);
public int delUserInfo(int id);
}
UserService.java
package com.example.demo.service;
import com.example.demo.entity.User;
import java.util.List;
public interface UserService {
public List getUserInfo(); //查询
public void insert(User user); //添加
public int delete(int id); //删除
}
UserServiceImpl.java
package com.example.demo.service.impl;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public List<User> getUserInfo() {
return userMapper.findUserInfo();
}
@Override
public void insert(User user) {
userMapper.addUserInfo(user);
}
@Override
public int delete(int id) {
return userMapper.delUserInfo(id);
}
}
userController.java
package com.example.demo.controller;
import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping(“user”)
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/getUserInfo")
public List<User> getUserInfo()
{
List<User> user = userService.getUserInfo();
System.out.println(user.toString());
return user;
}
@RequestMapping("/addUserInfo")
public String addUserInfo()
{
User user = new User();
user.setUserName("niuniu");
user.setPossWord("123456");
user.setRealName("guanjia");
return "添加成功";
}
@RequestMapping("delUserInfo")
public String delUserInfo(int id)
{
userService.delete(id);
return "删除成功";
}
}
UserMapper.xml
<?xml version="1.0" encoding="UTF-8"?><select id="findUserInfo" resultType="com.example.demo.entity.User">
select * from user;
<insert id="addUserInfo" parameterType="com.example.demo.entity.User">
insert into user (id, userName,passWord,realName)
values (#{id},#{userName},#{passWord},#{realName})
<delete id="delUserInfo" parameterType="java.lang.Integer">
delete from user where id = #{id}
最后来设置我们的数据库链接
spring.datasource.url=jdbc:mysql://localhost:3306/test1?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
\u521D\u59CB\u5316\u5927\u5C0F\uFF0C\u6700\u5C0F\uFF0C\u6700\u5927
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
\u914D\u7F6E\u83B7\u53D6\u8FDE\u63A5\u7B49\u5F85\u8D85\u65F6\u7684\u65F6\u95F4
spring.datasource.maxWait=60000
mybatis.mapper-locations=classpath*:mappering/*Mapper.xml
mybatis.type-aliases-package=com.example.demo.entity
然后就可以运行项目
输入localhost:8080/user/get/getUserInfo