質問
Mybatis-Plus を使用して、データを追加するときに時刻を自動的に入力します。コードは次のとおりです。
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
// 属性名称
this.strictInsertFill(metaObject, "createTime", Date.class, new Date());
this.strictInsertFill(metaObject, "updateTime", Date.class, new Date());
}
@Override
public void updateFill(MetaObject metaObject) {
this.strictUpdateFill(metaObject, "updateTime", Date.class, new Date());
}
}
その結果、クエリされたデータは次のようになり、時間関連のフィールドに形式の問題があることがわかります。
解決
対応するエンティティ クラスの time フィールドに次の注釈を追加します。
@JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
再度クエリを実行すると、結果は次のようになります。時刻の書式設定が有効になっていることがわかります。