본문 바로가기

개발TIL31

[프로그래머스] 240225 콜라츠 추측 문제 문제 설명 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 –1을 반환해 주세요. 제한 조건.. 2024. 2. 25.
[프로그래머스] 240224 프로그래머스 두 정수 사이의 합| 등차수열의 합 문제 문제 설명 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. 입출력 예abreturn 3 5 12 3 3 3 5 3 12 답 나의 풀이 class Solution { public long solution(int a, int b) { long answer = 0; int betweenNum = 0; if (a == b) { answer = a; } else i.. 2024. 2. 24.
[TIL] 240205 코드 리뷰/프로젝트 복습 Product 별점 평균 동적 계산 @Formula("(SELECT AVG(r.star) FROM reviews r WHERE r.product_id = id)") private Double averageRating; 🔼 ProductEntity - @Formula : db의 데이터를 기반으로 값을 계산하는 sql표현식을 지정하게 하는 어노테이션 - ("(SELECT AVG(r.star) FROM reviews r WHERE r.product_id = id)") //averageRating을 계산하는 SQL표현식 - averageRating 속성에 액세스 할 때마다 해당 값을 Hibernate이 db에서 관련 데이터를 기반으로 편균 평점을 동적으로 계산 상품 검색 쿼리 public Page getProductsBySe.. 2024. 2. 5.
[TIL] 240203 WAS Web Server Apache, Nginx 등 정적 컨텐츠 WAS Tomcat 동적 컨텐츠 처리 https://sehun-kim.github.io/sehun/spring-short-story/ [Spring] Request 흐름과 WAS에 대한 아주 짧은 이야기 Spring은 Servlet이다? Tomcat은 WAS다?, JDBC와 ORM은? sehun-kim.github.io 2024. 2. 4.
[TIL] 240125 Spring @Transactional Transaction: 하나의 작업 Rollback: not happen at all @Transactional Transaction을 관리하는 가장 작은 단위 트렌젝션 롤백 예외 - 런타임 예외가 발생하면 롤백한다 - 예외가 발생하지 않으면 커밋한다 쉽게 이야기하면 될거면 다 되고, 안될거면 다 안된다 계좌 조회에서 예를 들면, 잔액 확인 -> 상대방 계좌 확인 -> 금액 전송 -> 내 계좌에서 금액 마이너스 -> 상대방 계좌에서 들어온 금액만큼 더해줌 등의 과정이 있다고 했을 때 이 중 하나라도 안되면 롤백 즉 마지막 작업까지 수행하지 않고 실패함 //사진 삭제 @Transactional public ReviewResponseDto deleteReviewImage(Long categoryId, Lon.. 2024. 1. 25.
[TIL] 240123 최종 프로젝트: 키워드 기반 상품 검색 상품 검색 전체 상품의 이름과 상품 설명 중 사용자가 입력한 문자열이 있으면 다 반환한다. 상품검색 * 키워드를 기반으로 상품을 검색합니다. 페이지네이션과 정렬 기능을 제공합니다. * @param keyword 검색할 키워드 * @param pageable 페이지네이션 정보 * @return 검색 결과와 상태 정보를 담은 ApiResponse ProductService // 상품 검색 public Page getProductsBySearch(String keyword, Pageable pageable) { if (!StringUtils.hasText(keyword)) { throw new ApiException("검색어를 입력해주세요.", HttpStatus.BAD_REQUEST); } Page prod.. 2024. 1. 23.