mybatisplus用service查询数据库数据
时间: 2023-11-24 20:05:13 浏览: 79
MyBatisPlus.md
在 MyBatis-Plus 中,可以使用 Service 进行数据库操作。Service 是一个封装了常用 CRUD 操作的通用 Service 接口,继承该接口后即可使用其中的方法,包括增删改查等操作。
首先需要在项目中引入 MyBatis-Plus 的依赖,然后定义一个 Service 接口,如下所示:
```java
public interface UserService extends IService<User> {
}
```
其中,`User` 是实体类,继承了 `Model` 类,`IService` 是 MyBatis-Plus 中封装的通用 Service 接口。
接下来可以在 Service 接口中定义需要的方法,例如:
```java
public interface UserService extends IService<User> {
List<User> getUserList();
User getUserById(Long id);
void addUser(User user);
void updateUser(User user);
void deleteUser(Long id);
}
```
然后在 Service 接口的实现类中实现这些方法,如下所示:
```java
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
@Override
public List<User> getUserList() {
return this.list();
}
@Override
public User getUserById(Long id) {
return this.getById(id);
}
@Override
public void addUser(User user) {
this.save(user);
}
@Override
public void updateUser(User user) {
this.updateById(user);
}
@Override
public void deleteUser(Long id) {
this.removeById(id);
}
}
```
在 Service 实现类中,继承了 `ServiceImpl` 类,该类是 MyBatis-Plus 中封装的通用 Service 实现类,它提供了常用的 CRUD 操作方法。
最后,就可以在 Controller 中通过自动注入 Service 来调用 Service 中定义的方法,实现对数据库的操作了。例如:
```java
@RestController
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/users")
public List<User> getUserList() {
return userService.getUserList();
}
@GetMapping("/users/{id}")
public User getUserById(@PathVariable("id") Long id) {
return userService.getUserById(id);
}
@PostMapping("/users")
public void addUser(@RequestBody User user) {
userService.addUser(user);
}
@PutMapping("/users")
public void updateUser(@RequestBody User user) {
userService.updateUser(user);
}
@DeleteMapping("/users/{id}")
public void deleteUser(@PathVariable("id") Long id) {
userService.deleteUser(id);
}
}
```
这样就可以通过 Service 对数据库进行增删改查操作了。
阅读全文