我发现 jpa 在自己创建一个中间表的时候,很多注解都失效了。
比如无法自己设置一个主键,这个还好理解,使用联合主键。
但是 @CreatedDate 这个注解也失效是为什么呢?该怎么解决呢
附上代码:
/* 课程的学生中间表 */ @Table(name = "t_course_student") @Entity @IdClass(CourseStudentKey.lass) @EntityListeners(AuditingEntityListener.class) public class CourseStudent { /* 创建时间 */ @Column(name = "created_at") @CreatedDate private Long createdTime; ... }
失效指的是无法在插入数据的时候自动带上时间了,created_at 这个字段为空。
![]() | 1 vansl OP 我发现 jpa 会自动忽略自己定义的字段,那么这种自定义中间表是不是只能另写 sql 语句或者数据库函数操作了。 |
![]() | 2 wdlth 2018-07-22 18:49:45 +08:00 是不是少了 @EnableJpaAuditing |