当前位置: 首页 > news >正文

Spring Boot 增删改查(mybatis-plus)

在GitHub上已经开源,有全部源码,有问题可以在GitHub上提问https://github.com/sky41/MySQL.git
1、创建(User) 实体类

package com.my.mysql.entity;  import lombok.*;  @Setter  
@Getter  
@Data  
@NoArgsConstructor  
//@AllArgsConstructor  
public class User {  private int id;  private String name;  private String passwd;  public User(int id, String name, String passwd) {  this.id = id;  this.name = name;  this.passwd = passwd;  }  public void updateUser(String name, String passwd) {  if (name != null) {  this.name = name;  }  if (passwd != null) {  this.passwd = passwd;  }  }  public static void main(String[] args) {  User user = new User(123, "Alice", "30");  System.out.println("Before update:");  System.out.println("Name: " + user.getName());  System.out.println("Passwd: " + user.getPasswd());  user.updateUser(null, "newPassword");  System.out.println("\nAfter update:");  System.out.println("Name: " + user.getName());  System.out.println("Passwd: " + user.getPasswd());  }  
}

2、创建(User) Mapper接口

package com.my.mysql.mapper;  import com.my.mysql.entity.User;  
import org.apache.ibatis.annotations.Mapper;  
import org.springframework.stereotype.Repository;  import java.util.List;  @Mapper  
@Repository  
public interface UserMapper {  List<User> queryUserList();  User queryUserById(int id);  void addUser(User user);  void deleteUserById(int id);  void updateUser(User user);  
//    void login(User user);  
//    void register(User user);  }

3、配置(User)Mapper.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.my.mysql.mapper.UserMapper">  <select id="queryUserList" resultType="User">  select * from mysqluser.user  </select>  <select id="queryUserById" resultType="User" parameterType="int">  select * from mysqluser.user where id = #{id};  </select>  <insert id="addUser">  insert into mysqluser.user (id, name,passwd) VALUES (#{id},#{name},#{passwd})  </insert>  <delete id="deleteUserById">  delete from mysqluser.user where id=#{id}  </delete>  <update id="updateUser" parameterType="User">  UPDATE mysqluser.user  
#         UPDATE mysqluser.user user是使用的数据库里面数据表  SET  id = #{id},        name = #{name},        passwd = #{passwd}        WHERE id = #{id}    </update>  </mapper>

4、创建(User) service类
service接口可以分出来实现类单独编写

package com.my.mysql.service;  import com.my.mysql.entity.User;  import java.util.List;  public interface UserService {  List<User> queryUserList();  User queryUserById(int id);  String addUser(User user);  String deleteUserById(int id);  String updateUser(User user);  }

4.1创建(User)实现类

package com.my.mysql.service.Impl;  import com.my.mysql.controller.UserController;  
import com.my.mysql.entity.User;  
import com.my.mysql.mapper.UserMapper;  
import com.my.mysql.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;  @Autowired  private UserController userController;  @Override  public List<User> queryUserList() {  return userMapper.queryUserList();  }  @Override  public User queryUserById(int id) {  return userMapper.queryUserById(id);  }  @Override  public String addUser(User user) {  userMapper.addUser(user);  return "新增成功";  }  @Override  public String deleteUserById(int id) {  userMapper.deleteUserById(id);  return "删除成功";  }  @Override  public String updateUser(User user) {  if (user != null) {  userMapper.updateUser(user);  return "更新成功";  } else {  return "用户信息为空,更新失败";  }  }  
//    @Override  
//    public User login(String name, String passwd) {  
//        // 根据用户名在数据库中查询用户信息  
//        userMapper.login();  
//  
//        if (user != null && user.getPasswd().equals(passwd)) {  
//            return user; // 返回用户信息表示登录成功  
//        } else {  
//            return null; // 返回null表示登录失败  
//        }  
//    }  
//    public String register(User newUser) {  
//        // 检查用户是否已经存在  
//        userMapper.register(newUser);  
//        if (userExists(newUser.getUsername())) {  
//            return "User already exists"; // 返回用户已存在的信息  
//        } else {  
//            // 在这里执行注册逻辑,向数据库中添加新用户  
//            addUser(newUser);  
//            return "Registration successful"; // 返回注册成功信息  
//        }  
//    }  
}

5、创建(User) Controller类

package com.my.mysql.controller;  import com.my.mysql.entity.User;  
import com.my.mysql.service.UserService;  
import org.springframework.beans.factory.annotation.Autowired;  
import org.springframework.web.bind.annotation.*;  import java.util.List;  @RestController  
public class UserController {  @Autowired  UserService userService;  @GetMapping("/queryUserList")  public List<User> queryUserList(){  return userService.queryUserList();  }  @GetMapping ("/queryUserById")  public User queryUserById(int id){  return userService.queryUserById(id);  }  @GetMapping("/addUser")  public String addUser(User user){  return userService.addUser(user);  }  @GetMapping("/deleteUserById")  public String deleteUserById(int id){  return userService.deleteUserById(id);  }  
//    @PutMapping("/updateUser")  
//    public String updateUser(@RequestBody User user) {  
//        userService.updateUser(user);  
//        System.out.println("更新成功");  
//        return "更新成功";  
//    }  @PutMapping("/updateUser")  public String updateUser(@RequestBody User user) {  return userService.updateUser(user);  
}  
//    @PostMapping("/login")  
//    public String login(@RequestBody User user) {  
//        return userService.login(String name,String passwd);  
//    }  
//    @PostMapping("/register")  
//    public String register(@RequestBody User user) {  
//        return userService.register(user);  
//    }  }

相关文章:

  • MSPM0G3507——PWM
  • Elasticsearch Range 查询:范围搜索
  • ARM32常见指令
  • JAVA学习笔记DAY11——Java 与 Spring框架发展
  • Scala 中的匿名函数
  • 探索数据结构:集合、线性结构、树状结构和图形结构
  • 一文搞懂Linux信号【下】
  • 【网络安全的神秘世界】关于Linux中一些好玩的字符游戏
  • C# Winform Datagridview查询项目实例
  • vcpkg安装g2o,提示找不到cs.h,debug模式运行提示找不到libcxsparse.dll
  • 注解详解系列 - @Conditional:条件化配置的利器
  • ai assistant激活成功后,如何使用
  • React的Redux的状态管理
  • 如何处理Android应用程序的内存泄漏
  • 聊聊 Mybatis 动态 SQL
  • 230. Kth Smallest Element in a BST
  • Apache Zeppelin在Apache Trafodion上的可视化
  • JDK9: 集成 Jshell 和 Maven 项目.
  • Joomla 2.x, 3.x useful code cheatsheet
  • js学习笔记
  • linux学习笔记
  • mysql innodb 索引使用指南
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • nodejs实现webservice问题总结
  • Redis学习笔记 - pipline(流水线、管道)
  • Webpack 4x 之路 ( 四 )
  • Zepto.js源码学习之二
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 前嗅ForeSpider教程:创建模板
  • 区块链分支循环
  • 日剧·日综资源集合(建议收藏)
  • 如何合理的规划jvm性能调优
  • 树莓派 - 使用须知
  • 算法-图和图算法
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • 在electron中实现跨域请求,无需更改服务器端设置
  • 在weex里面使用chart图表
  • scrapy中间件源码分析及常用中间件大全
  • #pragma once
  • (52)只出现一次的数字III
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (vue)页面文件上传获取:action地址
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (十七)Flink 容错机制
  • (一)十分简易快速 自己训练样本 opencv级联haar分类器 车牌识别
  • (转) Android中ViewStub组件使用
  • (转)【Hibernate总结系列】使用举例
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (转)Linux下编译安装log4cxx
  • (转)linux下的时间函数使用
  • (轉貼) UML中文FAQ (OO) (UML)
  • .net core Redis 使用有序集合实现延迟队列
  • .Net 基于.Net8开发的一个Asp.Net Core Webapi小型易用框架
  • .NET/C# 使用 SpanT 为字符串处理提升性能