mybatisplus单表查询的更新人创建人如何查
时间: 2023-07-18 08:05:22 浏览: 131
mybatisplus分页查询
MybatisPlus 提供了自动填充功能,可以在插入或更新实体时自动填充创建人和更新人信息。具体实现如下:
1. 定义实体类时,需要定义创建人和更新人的属性,并使用注解 `@TableField(fill = FieldFill.INSERT)` 和 `@TableField(fill = FieldFill.UPDATE)` 指定自动填充的类型。
```java
public class User {
@TableId
private Long id;
private String name;
private Integer age;
@TableField(fill = FieldFill.INSERT)
private String createdBy;
@TableField(fill = FieldFill.UPDATE)
private String updatedBy;
// getter and setter
}
```
2. 配置自动填充处理器,在 MybatisPlus 的配置文件中添加如下配置:
```xml
<bean id="myMetaObjectHandler" class="com.baomidou.mybatisplus.extension.handlers.MybatisPlusDefaultMetaObjectHandler"/>
```
3. 在 SQL 语句中可以通过 `${}` 占位符来获取自动填充的值。例如:
```xml
<update id="updateUserById" parameterType="User">
update user
set name = #{name},
age = #{age},
updated_by = ${updatedBy}
where id = #{id}
</update>
```
注意:更新操作时,需要手动设置更新人的值,MybatisPlus 才能正确地自动填充更新人信息。
查询操作时,可以通过实体类的属性来查询创建人和更新人信息。例如:
```java
List<User> userList = userMapper.selectList(new QueryWrapper<User>().eq("created_by", "admin"));
```
这样就可以查询创建人为 "admin" 的所有用户信息了。
阅读全文