목록전체 글 (15)
공부 기록
5개월 반의 자바 백엔드 국비지원 과정을 끝내고 SI회사에 취업한 지 한달이 지났다. 그럼에도 오늘 글의 주제가 개발자가 '된' 이유가 아닌 '되고 싶은' 이유인 까닭은 한 달 반의 적응기간 끝에 하게 된 업무가 백엔드개발이 아니기 때문이다. (데이터 관련 업무라 아예 관련이 없는 건 아니지만 자바를 사용할 기회는 없을 것 같다ㅠ) 하지만 나는 자바라는 언어에 매력을 느끼고, 백엔드 개발을 하고 싶기 때문에 굳이 취업을 했음에도 왜 내가 개발자가 되고 싶은지 (그러기 위해 이직을 고민하는지)에 대해서 생각해보는 시간을 가졌다. 나는 초중고에 단 한번도 내가 문과라는 것에 의심이 없었고, 대학교 전공도 어문계열로 찐문과(?)라고 할 수 있다. 졸업 후에도 교육관련 회사에서 일하면서 개발과는 먼 직무에서 일..

✅ 들어가며 JPA에서는 클래스에 필드로 클래스를 선언함으로써 연관관계를 매핑할 수 있다. 이번 프로젝트에서 아래와 같이 외래키를 연결하고 싶어 우선 N:1 단방향 연관관계를 매핑하는 방법에 대해 공부해보았다. ✅ N:1 연관 관계 매핑 객체지향 프로그램에서의 객체와 RDB에서의 테이블이 서로 연관관계를 맺는 방법이 다르다. 이 둘의 차이를 채우기 위해 매핑과정이 필요하고 이를 JPA가 수행하게 된다. N:1 연관관계는 간단히 @ManyToOne, @JoinColumn 어노테이션을 이용하면 된다. public class Food { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column private long foodId; @Column(null..
✅ 들어가며 학원에서 프로젝트를 진행했을 때 유효성 검사를 제대로 진행해보지 않아 이번 프로젝트에서 간단하게라도 유효성 검사 코드를 작성해보고자 한다. 스프링 부트에서 유효성 검사를 위한 어노테이션을 제공하고 있어서 프로젝트에 적용하기 위해 정리해보았다. ✅ 유효성 검사 📌 유효성 검사란? 데이터의 값이 유효한지, 조건이 타당한지 확인하는 것으로 올바르지 않은 데이터가 서버나 DB에 전송되는 것을 막기 위해 실시한다. 스프링부트에서는 @Valid나 @Validated 어노테이션을 이용하여 쉽게 유효성 검사를 진행할 수 있다. 📌 사용방법 0. 의존성 추가하기 implementation 'org.springframework.boot:spring-boot-starter-validation' 1. @Valid..
✅ 들어가며 프로젝트의 Food도메인에서 Entity와 DTO의 변환 계층으로 Service계층을 선택하였다. 선택의 이유는, Controller계층은 요청을 받고 메서드를 호출하여 그 결과를 응답하는 역할을 하므로 Entity와 DTO의 변환 코드는 Service에 있어야 한다고 생각하였고, Service에서 유효성 검사를 하게 될 것이라고 생각했기 때문이다. 앞으로 식당, 주문 도메인을 진행하면서도 Entity와 DTO 변환을 해야하므로 어느 계층에서 변환을 하는 것이 좋을지 고민해보았다. ✅ Entity와 DTO의 변환 계층(Layer) 여러 블로그 글을 읽어 보았을 때 Entity와 DTO 변환을 Controller에서 하는 방법, Service에서 하는 방법은 각각의 장단점이 있고 상황에 따라 ..