본문 바로가기

Java56

Java region 다른 언어에서 사용했던 코드 범위. 테스트 코드 작업 중 삭제 처리를 위해 Todo를 처리했는데 5분간 기억이 안나서 기록용으로 만듬. //region 230216 nhm, TODO 테스트 후 삭제 Map headers = Collections.list(request.getHeaderNames()) .stream() .collect(Collectors.toMap(h -> h, request::getHeader)); headers.forEach((key, value) -> { logAccess("addressSearch, request email : {}, header name : {}, value : {}", adminUser.getEmail(), key, value); }); //endregion 2023. 2. 16.
자바 열거형 Find Value 예전 코드와 데이터베이스에서 레거시 발견. 아무런 부가설명없이 1,2로 나눠져 있어서 유지보수에 어려움이 생길거라 생각. public enum PartnerInquiryTypes { Account(1), Name(2); private int value; PartnerInquiryTypes(int value) { this.value = value; } public static PartnerInquiryTypes findByValue(final int findValue){ return Arrays.stream(values()).filter(value -> value.value == findValue).findFirst().orElse(null); } public int getValue() { return v.. 2022. 9. 23.
자바 Jpa Entity -> Sql Default Value 별로 중요하지 않다고 생각하는 내용이었지만 작업 중 1분간 생각이 안나서 정리 create_time에 기본값을 설정하려 한다. 하지만 Jpa에서 Insert를 할 경우. null 값으로 인한 오류가 발생. @Data @DynamicInsert public class BuildingMaterialsEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int idx; Entity에 @DynamicInsert를 추가한다. DynamicUpdate도 있는걸로 보아, update시 사용하면 될듯. 2022. 9. 21.
자바 Jpql dynamic query @Query(value = "SELECT * FROM t_building_materials WHERE partner_code = :partnerCode ", nativeQuery = true) List getBuildingMaterialsEntityByNumber(@Param("partnerCode") String partnerCode); 일반적으로 Repository에 간단하게 추가하면 됨. 기본 동작이 아닌 경우 조회인 경우 매개변수가 없을 경우가 존재하므로 따로 조회해야 함. @PersistenceContext EntityManager entityManager; String partnerCode = redisUserInformation.getPartnerCode(); String jpql = " S.. 2022. 9. 21.