请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

无法自动插入时间

图片描述
图片描述

数据库已经把create_time设置为CURRENT_TIMESTAMP了,但是跑单测的时候还是无法自动插入时间

@Test
    public void register() {

        User user = new User();
        user.setUsername("jackaaa");
        user.setPassword("12345");
        user.setEmail("aaa@abc.com");
        user.setRole(RoleEnum.ADMIN.getCode());
        // 要手动插入时间才行。。
//        user.setCreateTime(new Date());
//        user.setUpdateTime(new Date());
        iUserService.register(user);
    }

正在回答

2回答

可能有以下几个原因:
1、你的mysql数据库版本低于5.6

2、你在实现类中写入数据库用的是insert方法

如果是1,升级版本即可,如果是2,应该使用insertSelective方法,因为insert方法会将creatTime作为null值传过去

2 回复 有任何疑惑可以回复我~
廖师兄助理 2020-04-24 15:18:04

同学你却少了注解,仔细看下视频你就会看到,自己找可以加强你的印象

0 回复 有任何疑惑可以回复我~
  • 提问者 无情慕 #1
    你是说缺少@Transactional吗?跟@Transactional无关啊
    回复 有任何疑惑可以回复我~ 2020-04-24 15:27:13
  • 廖师兄助理 回复 提问者 无情慕 #2
    @Data在实体类上加上这个注解,你看看你lombok有没有引入
    回复 有任何疑惑可以回复我~ 2020-04-29 12:45:06
  • 提问者 无情慕 回复 廖师兄助理 #3
    有的啊,其实加不加这个注解都不影响吧,自动生成本来就有Getter和Setter方法
    回复 有任何疑惑可以回复我~ 2020-04-30 12:37:03
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信