Repository
BackEnd/Spring 2023. 11. 22. 11:21

리포지터리는 엔티티에 의해 생성된 DB 테이블에 접근하는 메서드들을 사용하기 위한 인터페이스 데이터 처리를 위해서는 테이블에 어떤 값을 넣거나 값을 조회하는 등의 CRUD(CREATE, READ, UPDATE, DELETE)가 필요하다. 이 때 이러한 CRUD를 어떻게 처리할지 정의하는 계층이 바로 리포지터리이다. 내가 리포지터리와 테스트코드를 작성하면서 놀란 점은 바로 테스트 코드를 작성할 때 JpaRepository를 상속한 ~ 객체가 생성될 때 findBy + 엔티티 속성명 (findBySubject)과 같은 리포지터리 메서드를 작성하면 해당 속성의 값으로 데이터를 조회할 수 있는 게 놀라웠다.. 아니 이렇게 굉장한 기능이 있다니.. 스프링 놀랍다.. 아니 C#에서는 이러한 메서드들을 직접 구현을 ..

Entity
BackEnd/Spring 2023. 11. 22. 01:56

Entity는 데이터베이스 테이블과 매핑되는 자바 객체를 의미합니다. 주로 JPA와 함께 사용되며, 데이터베이스와 애플리케이션 사이의 데이터를 효과적으로 조작하고 관리하기 위한 객체 지향적인 프로그래밍 방식을 제공합니다. 되도록이면 엔티티는 Setter 메서드를 구현하지 않고 사용. 엔티티는 db와 바로 연결되어 있으므로 안전상의 문제가 발생 가능성이 높다. 엔티티를 생성할 경우에는 롬복의 @Builder 어노테이션을 통한 빌드패턴을 사 @Id 애너테이션 - SQL에서 Primary Key와 같은 특징을 가집니다. 고유 번호를 기본 키로 함으로써 동일한 값으로 저장할 수 없게합니다. @GeneratedValue - GenerationType.IDENTITY는 SQL에서 Auto_Increment와 같은 ..

백준 23.10.19 ~ 23.11.20 코딩 테스트 1달간 회고록
코딩테스트/백준(Baekjoon) 2023. 11. 20. 23:19

23.10.19일에 코딩 테스트를 시작하여 골드4를 찍는데 한 달 넘짓 걸렸다. 이 한 달이라는 기간 동안 꾸준히 풀었는데 코딩 테스트가 정말 많이 늘었다. BFS, DFS, 소트, 슬라이딩 윈도우, 이분 탐색, 해시, 우선순위 큐, 그리디 등등.. 사실 아직 부족한 부분도 많다. DFS와 백트래킹 문제는 아직 어렵게 느껴진다. 나는 이전에 4개월간 코딩 테스트를 C#으로 푼 적이 있다. 그때는 4개월 동안 했지만 수학, String에만 집중적으로 되어있었다. 이를 보니 이때 코딩 테스트를 위해서 한 건지 티어를 올리기 위해서 코딩 테스트를 한 건지 확실하게 알 수 있었다. 물론 구현/ 수학 문제가 많기 때문에 어쩔 수 없이 Math, Implementation, String에 관한 그래프가 높긴 하지만..