분류 전체보기
백준 2073[자바] java 수도배관공사
백준 2073[자바] java 수도배관공사
2022.03.24문제 링크: https://www.acmicpc.net/problem/2073 2073번: 수도배관공사 아기염소들이 언덕에서 풀을 뜯고 놀다 보면 항상 도중에 목이 마르곤 했다. 그들은 불편함을 참지 못하고 수도관을 설치하여 거리 D(7 ≤ D ≤ 100,000)만큼 떨어진 곳의 강에서 물을 끌어오기로 www.acmicpc.net ▶문제 아기 염소들이 언덕에서 풀을 뜯고 놀다 보면 항상 도중에 목이 마르곤 했다. 그들은 불편함을 참지 못하고 수도관을 설치하여 거리 D(7 ≤ D ≤ 100,000)만큼 떨어진 곳의 강에서 물을 끌어오기로 했다. 근처의 인간 마을에서 P개(1 ≤ P ≤ 350)의 파이프를 매입했는데, 각각은 길이 Li와 용량 Ci로 나타낼 수 있다. (Li와 Ci는 모두 223보다 작거나 ..
백준 2758[자바] java 로또
백준 2758[자바] java 로또
2022.03.24문제 링크: https://www.acmicpc.net/problem/2758 2758번: 로또 선영이는 매주 엄청난 돈을 로또에 투자한다. 선영이가 하는 로또는 1부터 m까지 숫자 중에 n개의 수를 고르는 로또이다. 이렇게 열심히 로또를 하는데, 아직까지 한 번도 당첨되지 않은 이유는 www.acmicpc.net ▶문제 선영이는 매주 엄청난 돈을 로또에 투자한다. 선영이가 하는 로또는 1부터 m까지 숫자 중에 n개의 수를 고르는 로또이다. 이렇게 열심히 로또를 하는데, 아직까지 한 번도 당첨되지 않은 이유는 수를 고를 때 각 숫자는 이전에 고른 수보다 적어도 2배가 되도록 고르기 때문이다. 예를 들어, n=4, m=10일 때, 선영이는 다음과 같이 고를 수 있다. 1 2 4 8 1 2 4 9 1 2 4..
Spring-data-JPA [4] Update와 @Query
Spring-data-JPA [4] Update와 @Query
2022.03.231. @Query Repository의 메서드 위에 선엄함으로써 sql 쿼리를 작성할 수 있습니다. 명명법으로 해결하기 힘든 쿼리를 사용할 때 유용합니다. 1-1. 기본 사용법 메서드 위에 @Query(sql)을 해주시면 됩니다. @Query("select m from Member m") List findMemberBy(); @Query 안에 들어가는 테이블은 별칭을 부여해서 사용할 수 있습니다. Member 객체를 m이라는 별칭을 이용했습니다. @Test @DisplayName("@Query 사용 basic") void selectAll(){ List members = createMember(); for(Member member: members){ memberRepository.save(member);..
Spring-data-JPA [3] 명명법
Spring-data-JPA [3] 명명법
2022.03.22Springboot-Data-JPA 명명법 JPA는 반복적인 SQL 작성과 객체를 SQL에 맵핑하는 것을 대신 수행해줍니다. 따라서 개발자는 JPA를 통해서 단순 코드 작성, 맵핑하는 것에 초점을 두지 않고, 비즈니스 개발에 집중할 수 있게 되었습니다. 그중에서 SQL을 직접 작성하지 않고 메서드의 명명으로 쿼리를 사용할 수 있게 해주는 명명법에 대해서 알아보겠습니다. 명명법이 동작하는 원리도 포스팅하려 했지만, Hibernate 구현체에 디버깅 걸어도 보고 구글링도 했지만 찾지 못했습니다.. 추후에 찾게 된다면 동작 원리에 대해서도 포스팅 하겠습니다. 2022.04.10 추가 명명법의 동작 과정을 살펴보겠습니다. 사용된 query는 아래와 같습니다. Optional findByName(String na..
백준 2228[자바] java 구간 나누기
백준 2228[자바] java 구간 나누기
2022.03.21문제 링크: https://www.acmicpc.net/problem/2228 2228번: 구간 나누기 N(1 ≤ N ≤ 100)개의 수로 이루어진 1차원 배열이 있다. 이 배열에서 M(1 ≤ M ≤ ⌈(N/2)⌉)개의 구간을 선택해서, 구간에 속한 수들의 총 합이 최대가 되도록 하려 한다. 단, 다음의 조건들이 만족되 www.acmicpc.net ▶문제 N(1 ≤ N ≤ 100)개의 수로 이루어진 1차원 배열이 있다. 이 배열에서 M(1 ≤ M ≤ ⌈(N/2)⌉)개의 구간을 선택해서, 구간에 속한 수들의 총 합이 최대가 되도록 하려 한다. 단, 다음의 조건들이 만족되어야 한다. 각 구간은 한 개 이상의 연속된 수들로 이루어진다. 서로 다른 두 구간끼리 겹쳐있거나 인접해 있어서는 안 된다. 정확히 M개의..
Springboot Test 코드 작성
Springboot Test 코드 작성
2022.03.18Test 코드를 작성하는 법을 알아보기 전에 Test 코드의 필요성에 대해서 알아보겠습니다. 1. 왜 Test 코드를 작성하는가? 크게 2가지 이유가 있습니다.' 1-1. Test 코드를 작성하지 않고 결과를 검증하는 과정은 비용이 많이 든다. Test코드 사용 X (싱글 애플리케이션 (Monolithic Arichitecture)에서의 모습) 검증 코드 작성 애플리케이션 실행 PostMan 혹은 브라우저 Request 요청 log 혹은 print로 결과 검증 원하지 않는 결과 발생 시 애플리케이션 종료 다시 코드 작성 위와 같은 로테이션이 원하는 결과를 얻을 때까지 돌아가게 됩니다. 간단한 애플리케이션이라도 실행하고 종료하는데 비용이 많이 듭니다. 하지만 Test 코드를 작성한다면 이야기가 달라집니다...