首页 > 其他分享 >Springboot+Mybatis实现最简单的增删改查

Springboot+Mybatis实现最简单的增删改查

时间:2024-08-10 11:26:16浏览次数:15  
标签:username Springboot 改查 public mybatis user Mybatis password id

1.创建一个SpringBoot项目

 2.导入依赖

勾选上web下面的SpringWeb和sql下面的MySQL和Mybatis 依赖  然后等待依赖下载导入

2.1 依赖导入后的页面

3.创建需要的包和Mybatis配置文件 
3.1在原来的com.mybatis包下创建了entity,controller,service,mapper四个包
3.2在resource下创建了mybatis-config.xml为Mybatis核心配置文件
3.3还在resource下创建了一个包com.mybatis.mapper   (注意)

resource下创建包的格式  为 com/mybatis/mapper  

3.4将application.properties改为application.yml  后缀名改为yml

4.数据库的创建和连接
4.1数据库SQL语句

先创建名为mybatis的数据库然后执行以下sql语句

/*
 Navicat Premium Data Transfer

 Source Server         : localhost_3306
 Source Server Type    : MySQL
 Source Server Version : 80033
 Source Host           : localhost:3306
 Source Schema         : mybatis

 Target Server Type    : MySQL
 Target Server Version : 80033
 File Encoding         : 65001

 Date: 10/08/2024 11:15:28
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user`  (
  `id` int(0) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES (1, '李四', '123456', '17896325478');
INSERT INTO `user` VALUES (2, 'username', 'password', '17896325478');
INSERT INTO `user` VALUES (3, 'username', 'password', '17896325478');

SET FOREIGN_KEY_CHECKS = 1;
4.2 application.yml的配置
#设置端口号
server:
  port: 8282
#设置数据配置信息
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/mybatis
    username: root
    password: 123456

4.3mybatis-config,xml的配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <!--将表中下划线的字段自动转成驼峰命名-->
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>
    <typeAliases>
        <!--给所有返回结果起别名-->
        <package name="com.mybatis.entity"/>
    </typeAliases>
    <mappers>
        <!--xml需和mapper接口同样的目录-->
        <package name="com.mybatis.mapper"/>
    </mappers>
</configuration>
5.实体层,controller层,service层和mapper层的编写
5.1实体层(entity)

根据数据库字段创建对应的属性

package com.mybatis.entity;

public class User {
    private   Integer id;
    private   String username;
    private   String password;
    private   String phone;

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", phone='" + phone + '\'' +
                '}';
    }

    public User() {
    }

    public User(Integer id, String username, String password, String phone) {
        this.id = id;
        this.username = username;
        this.password = password;
        this.phone = phone;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer 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;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }
}
5.2mapper层(接口)
package com.mybatis.mapper;

import com.mybatis.entity.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
@Mapper
public interface UserMapper {
    /*
    * 查询所有用户
    * */
    List<User> getAllUser();
    /*
    * 添加用户
    * */
    Integer addUser(User user);
    /*
    * 更新用户信息
    * */
    Integer updateUser(User user);
    /*
    * 删除用户信息
    * */
    Integer deleteUser(Integer id);

}
5.3 service层
package com.mybatis.sevice;

import com.mybatis.entity.User;
import com.mybatis.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService {

    @Autowired
    UserMapper userMapper;

    public List<User> getAllUser(){
        return userMapper.getAllUser();
    }
    public Integer addUser(User user){
        return userMapper.addUser(user);
    }
    public Integer updateUser(User user){
        return userMapper.updateUser(user);
    }
    public Integer deleteUser(Integer id){
        return userMapper.deleteUser(id);
    }
}
5.4controller层
package com.mybatis.controller;

import com.mybatis.entity.User;
import com.mybatis.sevice.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/api")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("/all")
    public List<User> getAllUser(){
        return userService.getAllUser();
    }
    @PostMapping("/add")
    public Integer addUser(@RequestBody User user){
        return userService.addUser(user);
    }
    @PutMapping("/update")
    public Integer updateUser(@RequestBody User user){
        return userService.updateUser(user);
    }
    @DeleteMapping("/delete/{id}")
    public Integer deleteUser(@PathVariable("id") Integer id){
        return userService.deleteUser(id);
    }
}
5.5UserMapper.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="com.mybatis.mapper.UserMapper">


   <!-- List<User> getAllUser();-->
  <select id="getAllUser" resultType="com.mybatis.entity.User">
      select * from user
  </select>
   <!-- Integer addUser(User user);-->
  <insert id="addUser" parameterType="com.mybatis.entity.User">
      insert into user (username,password,phone)
      values (#{username},#{password},#{phone})
  </insert>

<!--    Integer updateUser(User user);-->
  <update id="updateUser" parameterType="com.mybatis.entity.User">
      update user set username = #{username},password =#{password},phone=#{phone}
      where id = #{id}
  </update>
<!--    Integer deleteUser(Integer id);-->
   <delete id="deleteUser" parameterType="java.lang.Integer">
       delete from user where id =#{id}
   </delete>
</mapper>
5.6整体页面 

6.测试接口

发现都能正常使用

标签:username,Springboot,改查,public,mybatis,user,Mybatis,password,id
From: https://blog.csdn.net/yununsyang/article/details/141086192

相关文章

  • 基于Springboot的仿淘宝系统(有报告)。Javaee项目,springboot项目。
    演示视频:基于Springboot的仿淘宝系统(有报告)。Javaee项目,springboot项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringBoot+Mybatis+Vue+Maven来实现。MySQL数据库作为系统数据储存平台,实现了基于B/S结构的Web系统。界面简洁,操作简单。......
  • Kafka整合SpringBoot
    前文Kafka客户端详解引入依赖<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target>......
  • SpringBoot+Vue房屋租赁(租房)系统 - 附源码已配套论文
    摘 要在网络高速发展的时代,众多的软件被开发出来,给用户带来了很大的选择余地,而且人们越来越追求更个性的需求。在这种时代背景下,房东只能以用户为导向,所以开发租房网站是必须的。系统采用了Java技术,将所有业务模块采用以浏览器交互的模式,选择MySQL作为系统的数据库,开发工具......
  • SpringBoot+Vue宠物医院管理系统-附源码与配套论文
    1.1课题背景在信息技术高速发展的今天,新知识、新技术层出不穷,计算机技术早已广泛的应用于各行各业之中,利用计算机的强大数据处理能力和辅助决策能力叫,实现行业管理的规范化、标准化、效率化。管理信息系统(ManagementInformationSystem,简称MIS〉是一个以人为主导,利用计算......
  • 从maven到SpringBootWeb入门
    Maven-SpringBootWeb入门maven安装安装步骤测试配置Maven环境当前工程全局IDEA创建Maven项目IDEA导入Maven项目依赖管理依赖配置依赖传递排除依赖 依赖范围生命周期Web入门SpringBootWeb快速入门HTTP协议请求协议响应协议Tomcat基本使用maven......
  • SpringBoot日志的使用
    背景:在生产环境中,排程问题都是通过日志,所以日志很重要。日志有三个部分组成LoggerAppenderLayout一般日志都会有对应的配置文件,log4j2.xml或者是logback-spring.xml,日志的输出格式在Pattern标签中1、确认日志框架:确认日志框架是log4j2、logback还是其他的......
  • SpringBoot基础 - 准备工作(打包成可运行的jar)
    目录A.简介B.下载一.配置本地Maven二.修改阿里云maven镜像三. 导入SpringBoot的相关依赖C.例子D.快捷使用A.简介SpringBoot是一种用于简化Spring应用开发的框架,它具有以下特点和优势:一、简化配置传统Spring应用配置的复杂性:在传统的Spring......
  • com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: can not find lamb
    异常提示:com.baomidou.mybatisplus.core.exceptions.MybatisPlusException:cannotfindlambdacacheforthisentity 使用mockito框架做单元测试:mybatisplus使用Lambda表达式做条件查询、条件更新时会遇到mybatis拿不到缓存问题:错误1:com.baomidou.mybatisplus......
  • Springboot+logback+druid +密码加密 实现业务日志入库
    springboot配置spring:datasource:type:com.alibaba.druid.pool.DruidDataSourcedruid:#主库数据源master:driverClassName:com.mysql.cj.jdbc.Driverurl:jdbc:mysql://xxx:3306/dbName?useUnicode=true&characterEncoding=u......
  • 一个基于SpringBoot实现的图像托管程序
    大家好,我是Java陈序员。今天,给大家介绍一个基于SpringBoot实现的开源图床项目。关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。项目介绍Tbed——一个由Java语言编写、SpringBoot框架开发的开源图像托管程序。具备多对象......