2021-05-27-TIL TIL 2021-05-27-TIL 쿼리별 메서드 오버로딩? vs 동적 쿼리 생성 public List<Room> findByFilter(String location) { return jdbcTemplate.query("SELECT * FROM room WHERE location = ?", roomRowMapper(), locati... 2021/05/27 2021-TIL
2021-05-26-TIL TIL 2021-05-26-TIL Subquery vs Join 같은 결과를 서브쿼리로도, 조인으로도 쓸 수 있을 때 어느 쪽이 나은지는 옵티마이저에 달려 있다. 오래된 MySQL에서는 WHERE id IN (SELECT ...) 형태의 서브쿼리가 바깥 행마다 반복 실행되는 식으로 처리되어 느린 경우가 많았고, 그래서 조인으로 바꾸라는 조언이 널리 퍼졌다... 2021/05/26 2021-TIL
2021-05-25-TIL TIL 2021-05-25-TIL 숙소 검색 필터를 SQL로 옮겼다. 조건을 하나씩 늘려 가며 쿼리를 확인했다. 날짜가 겹치는 예약 찾기 location, checkIn, checkOut 필터 검색 location은 ‘서울’이면서 checkIn 날짜가 ‘2021-08-01’과 ‘2021-08-30’사이에 예약된 정보가 없는 방... 2021/05/25 2021-TIL
2021-05-24-TIL TIL 2021-05-24-TIL Insert query using Spring JDBC Template JdbcTemplate은 JDBC의 반복 코드(커넥션 획득, PreparedStatement 생성, 자원 반납, SQLException을 Spring의 DataAccessException으로 변환)를 대신 처리한다. INSERT는 update() 메서... 2021/05/24 2021-TIL
2021-05-23-TIL TIL 2021-05-23-TIL Q. 테스트 코드로 insert한 결과는 db에 반영이 안되는가? 답은 아래 @Transactional 절에 정리했다. 테스트 클래스에 붙인 @Transactional 때문에 테스트가 끝날 때마다 롤백되고 있었다. CORS 문제 리액트로 실행되는 프론트 서버는 localhost:3000 주소를 사용하는데, JSON... 2021/05/23 2021-TIL
2021-05-19-TIL TIL 2021-05-19-TIL RESTful API naming https://www.ecma-international.org/publications-and-standards/standards/ecma-404/ https://devuna.tistory.com/79 https://sanghaklee.tistory.com/57 첫 번째 링... 2021/05/19 2021-TIL
2021-05-18-TIL TIL 2021-05-18-TIL RESTful search or filtering GET /rooms?checkIn="2021-05-10"&checkOut="2021-05-20"&min=10000&max=100000&guests=3 와 같이 url의 파라미터로 값을 포함시키는 것이 바람직한가? 또는 GET /rooms에서 r... 2021/05/18 2021-TIL
2021-05-17-TIL TIL 2021-05-17-TIL Spring Boot + Spring JDBC Template https://pyxispub.uzuki.live/?p=1715 https://mkyong.com/spring-boot/spring-boot-jdbc-examples/ https://www.baeldung.com/spring-jdbc-jdbctem... 2021/05/17 2021-TIL
2021-05-16-TIL TIL 2021-05-16-TIL Enum 사용 상태나 종류처럼 정해진 값 집합은 문자열이나 정수 상수 대신 enum으로 표현한다. 오타가 컴파일 오류로 잡히고, 상수마다 필드와 메서드를 둘 수 있어 값에 딸린 로직을 enum 안에 모을 수 있다. 링크된 글들은 enum으로 분기문을 없애고 상태별 계산을 enum 상수 안에 넣는 예를 보여 준다. DB에 ... 2021/05/16 2021-TIL
2021-05-15-TIL TIL 2021-05-15-TIL 예외처리 관련 SimpleDateFormat::parse에서 발생할 수 있는 예외인 ParseException에 대해서 처리하는데 고민되는 부분이 있었다. 계속 throws 하는것이 바람직한 해결방법인가? 중간에 stream이 있는데, stream으로 처리하는 코드상에서 예외 처리는 어떻게 하는가? 그냥 l... 2021/05/15 2021-TIL