기존 고x몰이라는 PHP 쇼핑몰을 Java/JPA로 전환하는중 DB 테이블에 1:1 매핑된 Entity로는 뭔가 CUD 관련 처리 하는게 불안해서,
(실제 type이 망.. 단순 true/false가 고x몰 DB 하나의 테이블에 어떤 컬럼은 y / n 어떤 컬럼은 o / null 어떤 컬럼은 1 / 0 어떤 컬럼은 Y / N.....으..)
그래서.. 가능하면 update시에 필요 entity를 별도 생성하거나 컬럼별 update를 하도록 하고 있다.
컬럼별 업데이트를 할 경우 여러개의 param을 사용하기도 하는데, 그냥 Object를 넘겨서 처리하는 것이 좀 더 깔끔해 보였다.
(라고 나는 주장한다~~~~)
간단 간단한 업뎃의 예로..
기존 :
@Modi..
@Query("update User set name = :name, age = :age, ssn = :ssn where id = :id")
int updateSpecificAttribute(@Param("name") String name, @Param("age") Integer age, @Param("ssn") String ssn, @Param("id") Long id );
2B :
@Modi..
@Query("update User set name = :#{#paramUser.name}, age = :#{#paramUser.age}, ssn = :#{#paramUser.ssn} where id = :#{#paramUser.id}")
int updateSpecificAttribute(@Param("paramUser") User user );