云计算百科
云计算领域专业知识百科平台

Spring Boot + MyBatis 实现的简单用户管理项目的完整目录结构示例

在这里插入图片描述


📁 示例项目结构(基于 Maven)

user-management/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/example/usermanagement/
│ │ │ ├── controller/
│ │ │ │ └── UserController.java
│ │ │ ├── service/
│ │ │ │ ├── UserService.java
│ │ │ │ └── impl/
│ │ │ │ └── UserServiceImpl.java
│ │ │ ├── mapper/
│ │ │ │ └── UserMapper.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ └── UserManagementApplication.java
│ │ ├── resources/
│ │ │ ├── mapper/
│ │ │ │ └── UserMapper.xml
│ │ │ ├── application.yml
│ │ │ └── logback-spring.xml (可选)
│ └── test/
│ └── java/
│ └── com/example/usermanagement/
│ └── UserServiceTests.java
├── pom.xml


各部分说明:

🧱 User.java(实体类)

package com.example.usermanagement.entity;

public class User {
private Integer id;
private String name;
private String email;

// Getters & Setters
}


🧩 UserMapper.java(Mapper 接口)

package com.example.usermanagement.mapper;

import com.example.usermanagement.entity.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface UserMapper {
User findById(Integer id);
List<User> findAll();
int insert(User user);
int update(User user);
int deleteById(Integer id);
}


📄 UserMapper.xml(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.example.usermanagement.mapper.UserMapper">

<select id="findById" resultType="com.example.usermanagement.entity.User">
SELECT * FROM user WHERE id = #{id}
</select>

<select id="findAll" resultType="com.example.usermanagement.entity.User">
SELECT * FROM user
</select>

<insert id="insert">
INSERT INTO user(name, email) VALUES (#{name}, #{email})
</insert>

<update id="update">
UPDATE user SET name=#{name}, email=#{email} WHERE id=#{id}
</update>

<delete id="deleteById">
DELETE FROM user WHERE id=#{id}
</delete>

</mapper>


🧠 UserService.java 和 UserServiceImpl.java

public interface UserService {
User getUserById(Integer id);
List<User> getAllUsers();
void addUser(User user);
void updateUser(User user);
void deleteUser(Integer id);
}

@Service
public class UserServiceImpl implements UserService {

@Autowired
private UserMapper userMapper;

public User getUserById(Integer id) {
return userMapper.findById(id);
}

public List<User> getAllUsers() {
return userMapper.findAll();
}

public void addUser(User user) {
userMapper.insert(user);
}

public void updateUser(User user) {
userMapper.update(user);
}

public void deleteUser(Integer id) {
userMapper.deleteById(id);
}
}


🌐 UserController.java

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

@Autowired
private UserService userService;

@GetMapping("/{id}")
public User getUser(@PathVariable Integer id) {
return userService.getUserById(id);
}

@GetMapping
public List<User> getAllUsers() {
return userService.getAllUsers();
}

@PostMapping
public void addUser(@RequestBody User user) {
userService.addUser(user);
}

@PutMapping
public void updateUser(@RequestBody User user) {
userService.updateUser(user);
}

@DeleteMapping("/{id}")
public void deleteUser(@PathVariable Integer id) {
userService.deleteUser(id);
}
}


⚙️ application.yml

spring:
datasource:
url: jdbc:mysql://localhost:3306/user_db?useSSL=false&serverTimezone=UTC
username: root
password: yourpassword
driver-class-name: com.mysql.cj.jdbc.Driver

mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.example.usermanagement.entity


🚀 UserManagementApplication.java

@SpringBootApplication
public class UserManagementApplication {
public static void main(String[] args) {
SpringApplication.run(UserManagementApplication.class, args);
}
}


赞(0)
未经允许不得转载:网硕互联帮助中心 » Spring Boot + MyBatis 实现的简单用户管理项目的完整目录结构示例
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!