zoukankan      html  css  js  c++  java
  • MybatisPlus自动填充

    1.注解填充字段 @TableField(.. fill = FieldFill.INSERT) 生成器策略部分也可以配置!

        /**
         * 主键ID
         */
        @TableId(value = "id", type = IdType.AUTO)
        private Integer id;
        /**
         * 注册时间
         */
        @TableField(fill = FieldFill.INSERT)
        private Integer createTime;
    
        /**
         * 更新时间
         */
        @TableField(fill = FieldFill.INSERT_UPDATE)
        private Integer updateTime;

    2.自定义实现类 MyMetaObjectHandler,我的数据表中时间字段类型是int类型,单位是秒。新建类文件目录如下:

    @Component
    public class MyMetObjectHandler implements MetaObjectHandler {
    
        @Override
        public void insertFill(MetaObject metaObject) {
            //setFieldValByName(String fieldName, Object fieldVal, MetaObject metaObject)
            this.setFieldValByName("createTime",(int) (System.currentTimeMillis() / 1000),metaObject);
            this.setFieldValByName("updateTime",(int) (System.currentTimeMillis() / 1000),metaObject);
        }
    
        @Override
        public void updateFill(MetaObject metaObject) {
            this.setFieldValByName("updateTime",(int) (System.currentTimeMillis() / 1000),metaObject);
        }
    }

    3.测试Insert和Update。

    @RequestMapping(value = "/edit",method = RequestMethod.POST)
        public Object editUser(@ModelAttribute UserInfo user){
    
            //updateById方法在修改时,会根据实体类的每个属性进行非空判断,只有非空的属性对应的字段才会出现到SQL语句中
            Integer id = user.getId();
            boolean res;
            if (id > 0) {
                res = userInfoService.updateById(user);
            } else {
                res = userInfoService.save(user);
            }
    
            System.out.println(res);
    
            return "redirect:/user/userList";
    
        }
  • 相关阅读:
    BZOJ1251: 序列终结者
    BZOJ1014 [JSOI2008]火星人prefix
    NOI模拟赛Day6
    NOI模拟赛Day5
    BZOJ2329: [HNOI2011]括号修复
    NOI模拟赛Day4
    状压dp题目总结
    BZOJ2097[Usaco2010 Dec] 奶牛健美操
    BZOJ4027: [HEOI2015]兔子与樱花 贪心
    BZOJ1443: [JSOI2009]游戏Game
  • 原文地址:https://www.cnblogs.com/wjs2019/p/15592341.html
Copyright © 2011-2022 走看看