SpringBoot+MyBatis Plus+PageHelper+vue+mysql 实现用户信息增删改查功能

静态资源展示

(1)静态资源下载

(2)下载后文件放到resources/static 目录下

(3) main函数启动项目访问对应文件,http://127.0.0.1:8080/user-list.html


数据库添加表和数据

sql 复制代码
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for t_user
-- ----------------------------
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `sex` int(1) DEFAULT NULL,
  `phone` varchar(20) DEFAULT NULL,
  `email` varchar(255) DEFAULT NULL,
  `status` int(1) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4;

-- ----------------------------
-- Records of t_user
-- ----------------------------
INSERT INTO `t_user` VALUES ('1', '赵雨晴', '1', '13812345678', 'zhaoyuqing@example.com', '0');
INSERT INTO `t_user` VALUES ('2', '林志远', '0', '13987654321', 'linzhiyuan@example.com', '1');
INSERT INTO `t_user` VALUES ('3', '周思敏', '1', '13567891234', 'zhousimin@example.com', '2');
INSERT INTO `t_user` VALUES ('4', '郑建国', '0', '13345678901', 'zhengjianguo@example.com', '0');

项目结构

bash 复制代码
src/main/java/com/example/demo/
├── controller
│   └── UserController.java
├── entity
│   └── User.java
├── mapper
│   └── UserMapper.java
└── service
    ├── IUserService.java
    └── impl
        └── UserServiceImpl.java

添加依赖

在 pom.xml 中添加必要的依赖:

yaml 复制代码
		<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-j</artifactId>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.0</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper</artifactId>
            <version>5.1.10</version>
        </dependency>

配置数据库

yaml 复制代码
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springboot04?characterEncoding=utf-8&serverTimezone=Asia/Shanghai
    username: root
    password: root

# 开启SQL日志
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

创建实体类

实体类和数据库t_user字段做映射。

java 复制代码
@TableName("t_user")
@Data
public class User {
    @TableId(value = "id",type = IdType.AUTO)
    private Long id;
    private String name;
    private Integer sex;
    private String phone;
    private String email;
    private Integer status;
}

创建Mapper接口

java 复制代码
@Mapper
public interface UserMapper extends BaseMapper<User> {
 // 继承BaseMapper后,已经包含了基本的CRUD方法
}

创建Service层

java 复制代码
public interface IUserService extends IService<User> {
	// 可以在这里定义额外的业务方法
}

Service实现类

java 复制代码
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User>  implements IUserService{
	// 继承了ServiceImpl后,已经实现了IService接口的所有方法
}

创建Controller

根据静态页面中JS的url和参数编写controller方法

java 复制代码
@RestController
public class UserController {

    @Autowired
    private IUserService userService;

    @GetMapping("/user/list")
    public PageInfo<User> list(Integer pageNum) {
        PageHelper.startPage(pageNum, 5);
        List<User> list = userService.list();
        PageInfo<User> userPageInfo = new PageInfo<>(list);
        return userPageInfo;
    }

    @GetMapping("/user/search")
    public PageInfo<User> search(String text) {
        PageHelper.startPage(1,99);
        QueryWrapper<User> query = new QueryWrapper<User>()
                .like("name", text)
                .or()
                .like("id", text);
        List<User> list = userService.list(query);
        PageInfo<User> userPageInfo = new PageInfo<>(list);
        return userPageInfo;
    }

    @PostMapping("/user/add")
    public String add(User user){
        userService.save(user);
        return "添加用户成功:"+user;
    }

    @PostMapping("/user/edit")
    public String edit(User user){
        userService.saveOrUpdate(user);
        return "更新用户成功:"+user;
    }

    @GetMapping("/getUserById")
    public User getUserById(String id){
        return userService.getById(id);
    }

    @PostMapping("/user/delete")
    public void delete(String id){
        userService.removeById(id);
    }

}

运行效果

列表

添加用户


编辑用户


数据库t_user表

相关推荐
qq_124987075311 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
Coder_Boy_11 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
2301_8187320611 小时前
前端调用控制层接口,进不去,报错415,类型不匹配
java·spring boot·spring·tomcat·intellij-idea
汤姆yu15 小时前
基于springboot的尿毒症健康管理系统
java·spring boot·后端
暮色妖娆丶15 小时前
Spring 源码分析 单例 Bean 的创建过程
spring boot·后端·spring
biyezuopinvip16 小时前
基于Spring Boot的企业网盘的设计与实现(任务书)
java·spring boot·后端·vue·ssm·任务书·企业网盘的设计与实现
JavaGuide16 小时前
一款悄然崛起的国产规则引擎,让业务编排效率提升 10 倍!
java·spring boot
figo10tf17 小时前
Spring Boot项目集成Redisson 原始依赖与 Spring Boot Starter 的流程
java·spring boot·后端
zhangyi_viva17 小时前
Spring Boot(七):Swagger 接口文档
java·spring boot·后端
橙露17 小时前
Spring Boot 核心原理:自动配置机制与自定义 Starter 开发
java·数据库·spring boot