Skip to content

Commit 13e53d7

Browse files
committed
增加kotlin填充示例.
baomidou/mybatis-plus#6713
1 parent 4813387 commit 13e53d7

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

src/content/docs/guides/auto-fill-field.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,24 +33,47 @@ public class User {
3333
创建一个类来实现 `MetaObjectHandler` 接口,并重写 `insertFill``updateFill` 方法。
3434

3535
```java
36+
// java example
3637
@Slf4j
3738
@Component
3839
public class MyMetaObjectHandler implements MetaObjectHandler {
3940

4041
@Override
4142
public void insertFill(MetaObject metaObject) {
4243
log.info("开始插入填充...");
44+
this.strictInsertFill(metaObject, "createUserId", Long.class, 123456L)
4345
this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now());
4446
}
4547

4648
@Override
4749
public void updateFill(MetaObject metaObject) {
4850
log.info("开始更新填充...");
51+
this.strictInsertFill(metaObject, "updateUserId", Long.class, 123456L)
4952
this.strictUpdateFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now());
5053
}
5154
}
5255
```
56+
```kotlin
57+
// kotlin example
58+
@Slf4j
59+
@Component
60+
class MyMetaObjectHandler : MetaObjectHandler {
61+
62+
// 注意将kotlin类型转为java类型请使用 xxx::class.javaObjectType,防止部分类型使用xxx::class.java转换为基本类型导致类型不一致无法填充
63+
override fun insertFill(metaObject: MetaObject) {
64+
log.info("开始插入填充...");
65+
this.strictInsertFill(metaObject, "createUserId", Long::class.javaObjectType, 123456L)
66+
this.strictInsertFill(metaObject, "createTime", LocalDateTime::class.javaObjectType, LocalDateTime.now())
67+
}
5368

69+
override fun updateFill(metaObject: MetaObject) {
70+
log.info("开始更新填充...");
71+
this.strictInsertFill(metaObject, "updateUserId", Long::class.javaObjectType, 123456L)
72+
this.strictInsertFill(metaObject, "updateTime", LocalDateTime::class.javaObjectType, LocalDateTime.now())
73+
}
74+
75+
}
76+
```
5477
### 3. 配置自动填充处理器
5578

5679
确保你的 `MyMetaObjectHandler` 类被 Spring 管理,可以通过 `@Component``@Bean` 注解来实现。

0 commit comments

Comments
 (0)