整合SpringBoot + mybatis

## 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}

![在这里插入图片描述](https://img-blog.csdnimg.cn/20191021200132731.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyOTk5MTI2,size_16,color_FFFFFF,t_70)

最后来设置我们的数据库链接
在这里插入图片描述

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值