평소 엔티티 정의할 때 자동 생성 PK 타입을 non-nullable 타입으로 하는걸 선호함
이번에 PK를 hypersistence-utils-hibernate-xx 이용해서 tsid로 하기로 했는데
Long 같은 non-nullable 타입 지정하면 에러남..
@Id
@Tsid
var id: Long = 0L
protected set
이러면 에러나고
@Id
@Tsid
var id: Long? = null
protected set
이래야 정상작동함
코틀린 고려 없는 라이브러리라 non-nullable 타입에 대한 고려도 당연히 없어서 그런거 같은데
비슷한 다른 라이브러리 없냐...... 찾아도 안 나온다..
째째한걸로 고집부리지 말고 자바의 법도를 따르는게 답이다
근데 JPA 비의존적으로 그냥 생성자에서 직접 tsid 만들면 안되냐? 모노토닉한 ulid id 사용할때 그렇게들 하던데
나도 이렇게함 그냥 ulid 생성자에서 만들면 그만임 - dc App
lateinit var 안됨?
본문 어차피 양쪽다 var에 초기값 넣어주는 경우라 상관 없을 듯