본문 바로가기

분류 전체보기120

Spring Data JPA - 쿼리 메서드(3) 7. 벌크성 수정 처리 벌크 업데이트란 단건 UPDATE, DELETE가 아닌 다건의 UPDATE, DELETE 연산을 하나의 쿼리로 하는 것을 말한다. // Bulk Update @Modifying(clearAutomatically = true) @Query("update Member m set m.age = m.age + 1 where m.age >= :age") int bulkAgePlus(@Param("age") int age); 벌크성 수정 쿼리 사용시 주의점 JPA에서 벌크 연산성 조심해야할 게 있다. JPA라는것은 영속성 컨텍스트에서 Entity들이 flush()를 통해서 DB에 반영이 되는건데 벌크연산은 영속성 컨테이너를 안거치고 직접 DB에 update 연산을 해버린다. 그래서 영속성 컨.. 2023. 4. 13.
Spring Data JPA - 쿼리 메서드(2) 5. 반환타입 JPA는 유연환 반환 타입을 지원한다. //컬렉션 -> 데이터가 없으면 빈 컬렉션 List findByUsername(String name); //단건 -> 데이터가 없으면 null Member findByUsername(String name); //단건 -> Optional 처리 Optional findByUsername(String name); - Member findByUsername(String name); 에서 반환값이 2개라면 예외발생 -> norrectResultSizeDataAccessException - JPA Exception은 스프링 Exception으로 변환된다. JPA를 사용하는 클라이언트 입장에서 동일하게 Exception 처리를 할 수 있다. - 반환 타입은 굉장.. 2023. 4. 13.
Spring Data JPA - 쿼리 메서드(1) 1. 메소드 이름으로 쿼리 생성 Distinct findDistinctByLastnameAndFirstname select distinct …​ where x.lastname = ?1 and x.firstname = ?2 And findByLastnameAndFirstname … where x.lastname = ?1 and x.firstname = ?2 Or findByLastnameOrFirstname … where x.lastname = ?1 or x.firstname = ?2 Is, Equals findByFirstname,findByFirstnameIs,findByFirstnameEquals … where x.firstname = ?1 Between findByStartDateBetween … .. 2023. 4. 12.
오픈스택: octavia 컨트롤러 노드에서 진행 옥타비아 설치 이후 검증은 바빠서 못했습니다... 참고용도로만 사용해주세요. $ mysql > CREATE DATABASE octavia; > GRANT ALL PRIVILEGES ON octavia.* TO 'octavia'@'localhost' IDENTIFIED BY 'a'; > GRANT ALL PRIVILEGES ON octavia.* TO 'octavia'@'%' IDENTIFIED BY 'a'; > exit # 유저 생성 및 도메인 연결 및 admin 권한부여 $ openstack user create --domain default --password-prompt octavia # a 비밀번호 $ openstack role add --project service --u.. 2023. 4. 10.
오픈스택: magnum 컨트롤러 노드에서 진행 ※ magnum을 설치하기 이전에 먼저 heat를 설치해야함 공식문서에서 추가적으로 제안하는 설치옵션 옵션1. Octavia(LbassS_v2) : multiple master cluster를 위한 옵션2. Ironic: 베어메탈 클러스터를 위한 옵션3. Swift: 유저가 private 도커 저장소 사용하기 하기위한 옵션4. Ceilometer: cluster의 metrix 지표를 전송하기 위한 옵션5. barbican: 보안을 위한 밑에 나오는 magnum.conf는 위의 설치옵션은 설치되어있지 않다고 가정한 설정 값들입니다. $ mysql > CREATE DATABASE magnum; > GRANT ALL PRIVILEGES ON magnum.* TO 'magnum'@'loc.. 2023. 4. 10.