下面是一个完整的新增接口示例,包含控制层(Controller)、数据访问层(Mapper)、XML配置(mapper.xml)、服务接口(Service)和服务实现类(ServiceImpl)。本例以“用户管理”为例。
1. 实体类 (User.java)
首先定义一个用户实体类:
public class User {
private Long id;
private String username;
private String password;
// Getters and Setters
public Long getId() {
return id;
}
public void setId(Long 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;
}
}
2. Mapper 接口 (UserMapper.java)
接下来是 Mapper 接口,用于数据库操作:
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface UserMapper {
void insertUser(User user);
}
3. Mapper XML 文件 (UserMapper.xml)
然后创建对应的 UserMapper.xml
文件,用于 SQL 配置。这个文件通常放在 resources/mappers/
目录下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-mapper-3.0.dtd">
<mapper namespace="com.example.mapper.UserMapper">
<insert id="insertUser">
INSERT INTO users(username, password)
VALUES(#{username}, #{password})
</insert>
</mapper>
4. 服务接口 (UserService.java)
接下来是服务接口,定义业务逻辑的方法:
public interface UserService {
void addUser(User user);
}
5. 服务实现类 (UserServiceImpl.java)
然后是服务实现类,实现具体的业务逻辑:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public void addUser(User user) {
userMapper.insertUser(user);
}
}
6. 控制层 (UserController.java)
最后是控制层,用于处理HTTP请求和响应:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api/users")
public class UserController {
@Autowired
private UserService userService;
@PostMapping("/add")
public ResponseEntity<String> addUser(@RequestBody User user) {
userService.addUser(user);
return ResponseEntity.ok("User added successfully");
}
}
7. 配置文件
在application.properties
中配置你的数据库连接信息,例如 MySQL 数据库:
spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name?useSSL=false&serverTimezone=UTC
spring.datasource.username=your_username
spring.datasource.password=your_password
mybatis.mapper-locations=classpath:mappers/*.xml
总结
以上代码展示了如何实现一个简单的新增用户接口。当你向/api/users/add
发送POST请求,并附带JSON格式的用户数据时,它会调用相应的方法将新用户插入到数据库中。
例如,发送以下JSON请求体来添加用户:
{
"username": "example_user",
"password": "secure_password"
}
希望这个示例对你有所帮助!如果还有其他问题,请随时问我!
内容由零声教学AI助手提供,问题来源于学员提问