Ruoyi Vue实现单表CURD简单示例
使用Postman工具来执行Ruoyi项目中的user表的CRUD操作
·
在学习本博客前需要先熟悉rouyi的CSMD并成功将ruoyi拉起。
目录
1.确定需求
使用Postman工具来执行Ruoyi项目中的user表的CRUD操作
2.配置数据库并添加数据

在ruoyi的数据库中新建查询,执行sql代码
2.1建立users表
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255),
age INT,
sex VARCHAR(10),
create_time TIMESTAMP
);
2.2向users表中插入数据
INSERT INTO users (name, age, sex, create_time)
VALUES ('John Doe', 30, 'Male', NOW());
INSERT INTO users (name, age, sex, create_time)
VALUES ('Jane Smith', 25, 'Female', NOW());
新建完成后数据库的呈现应该是这个样子的

3. 添加CSMD 相关文件代码
3.1 Controller层

package com.ruoyi.web.controller.system;
import com.ruoyi.system.domain.vo.User;
import com.ruoyi.system.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.List;
@RestController
public class HelloController {
@Autowired
private UserService userService;
// 获取所有用户信息
@GetMapping("/hello")
public List<User> getAllUsers() {
return userService.selectAllUser();
}
// 获取特定用户信息
@GetMapping("/hello/{id}")
public User getUserById(@PathVariable Long id) {
return userService.selectUserById(id);
}
// 创建新用户
@PostMapping("/hello")
public User createUser(@RequestBody User user) {
// 设置 create_time 为当前时间
user.setCreateTime(String.valueOf(LocalDateTime.now()));
userService.createUser(user);
return user;
}
// 更新用户信息
@PutMapping("/hello/{id}")
public User updateUser(@PathVariable Long id, @RequestBody User user) {
user.setId(Math.toIntExact(id));
userService.updateUser(user);
return user;
}
// 删除用户
@DeleteMapping("/hello/{id}")
public void deleteUser(@PathVariable Long id) {
userService.deleteUser(id);
}
}
3.2 Service层

package com.ruoyi.system.service;
import com.ruoyi.system.domain.vo.User;
import com.ruoyi.system.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public List<User> selectAllUser() {
return userMapper.selectAllUser();
}
public User selectUserById(Long id) {
return userMapper.selectUserById(id);
}
public void createUser(User user) {
userMapper.createUser(user);
}
public void updateUser(User user) {
userMapper.updateUser(user);
}
public void deleteUser(Long id) {
userMapper.deleteUser(id);
}
}
3.3 Mapper层

package com.ruoyi.system.mapper;
import com.ruoyi.system.domain.vo.User;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface UserMapper {
List<User> selectAllUser();
User selectUserById(Long id);
void createUser(User user);
void updateUser(User user);
void deleteUser(Long id);
}

<?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.ruoyi.system.mapper.UserMapper">
<resultMap id="UserResult" type="User">
<id property="id" column="id" />
<result property="name" column="name" />
<result property="age" column="age" />
<result property="sex" column="sex" />
<result property="createTime" column="create_time" />
</resultMap>
<select id="selectAllUser" resultMap="UserResult">
select * from users
</select>
<select id="selectUserById" resultMap="UserResult">
select * from users where id = #{id}
</select>
<insert id="createUser">
insert into users (name, age, sex, create_time)
values (#{name}, #{age}, #{sex}, #{createTime})
</insert>
<update id="updateUser">
update users
set name = #{name},
age = #{age},
sex = #{sex},
create_time = #{createTime}
where id = #{id}
</update>
<delete id="deleteUser">
delete from users where id = #{id}
</delete>
</mapper>
3.4 Domain层

package com.ruoyi.system.domain.vo;
public class User {
public int id;
private String name;
private int age;
public String sex;
public String createTime;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
}
4.屏蔽新加接口安全防护策略

5. Postman 测试新接口
5.1 GET操作
5.1.1获得所有用户信息

5.1.2获得特定用户信息

5.2 POST操作

{
"name": "Alice Johnson",
"age": 28,
"sex": "Female",
"create_time": "2023-10-26T23:07:58.857+08:00"
}

5.3 DEL操作


5.4 PUT操作


更多推荐




所有评论(0)