profile
백엔드 개발자 지망생입니다.
post-thumbnail

@RequestBody에 왜 기본 생성자는 필요하고, Setter는 필요 없을까? #3

이전 글에서는 RestController에서 @RequestBody 바인딩을 Jackson 라이브러리의 ObjectMapper가 하는 것을 확인했습니다.그리고 RequestBody를 생성할 때, DTO가 Property기반이 아니거나 Delegate를 한 상태가 아니라

2020년 2월 18일
·
0개의 댓글

[OS] 세마포어와 뮤텍스

세마포어와 뮤텍스은"여러 프로세스나 쓰레드가 공유 자원에 접근하는 것을 제어하기 위한 방법"으로 정의할 수 있습니다. 즉, 병행 처리를 위한 프로세스 동기화 기법입니다. 예를 들자면 교차하는 철도에서 열차의 진행가능 여부를 나타내는 신호등이 세마포어나 뮤텍스가 될 수

2020년 2월 14일
·
0개의 댓글

@RequestBody에 왜 기본 생성자는 필요하고, Setter는 필요 없을까? #2

이전 글에서는 어떻게 @RequestBody를 처리하는지를 알아보기 위한 과정을 설명했습니다. 이번 글에서는 @RequestBody를 바인딩하는 ObjectMapper에 대해 알아보고, 결론을 짓겠습니다. 참고로 아래 사진들에서 현재 위치(class)는 다음과 같이 찾

2020년 1월 24일
·
0개의 댓글

@RequestBody에 왜 기본 생성자는 필요하고, Setter는 필요 없을까? #1

Springboot로 토이 프로젝트를 진행중 Request DTO(requestBody로 오는)에 @NoArgsConstructor를 빠뜨려서 에러가 났다. (습관적으로 적어오던 어노테이션...) 그런데 @RequestBody로 넘어오는 객체에는 기본 생성자가 왜 필요

2020년 1월 23일
·
0개의 댓글

2019년 회고

20대의 마지막 회고 2019년이 끝난지 5일이 지났다. 이동욱님의 책을 따라해보는게 재밌어서 끝내느라 회고가 늦어졌다. 2019년에는 많은 것을 경험하고, 배운 의미있는 한 해였다. 20대 마지막을 마무리 짓고, 30대의 시작을 생각해보는 시간을 가져본다. Baek

2020년 1월 5일
·
4개의 댓글

.gitignore 사용하기

.gitignore란? 깃에서 특정 파일 혹은 디렉토리를 관리 대상에서 제외할 때 사용하는 파일. 이 파일 안에 기입된 내용들은 모두 깃에서 관리하지 않겠다는 것을 의미합니다. 예를 들어 자동으로 생성되는 로그파일, 프로젝트 설정 파일 등을 관리 대상에서 제외할 수 있습니다. 인텔리제이에 플러그인 설치하기 인텔리제이에서는 .gitignore 파일에 ...

2019년 12월 15일
·
0개의 댓글

gradle 프로젝트를 스프링 부트 프로젝트로 변경하기

image.jpg > 이번 글은 이동욱님의 의 그레이들 프로젝트를 스프링 부트 프로젝트로 변경하기를 따라해보며 내용을 공유하고자 합니다. > > 평소 스프링 이니셜라이저를 통해 프로젝트를 생성해와서 build.gradle의 코드가 무슨 역할을 하는지를 잘 모르기 때문에 그레이들 프로젝트를 스프링 부트 프로젝트로 변경하기 먼저, intellij에서 그...

2019년 12월 14일
·
0개의 댓글

[JPA] 임베디드 타입(embedded type)

임베디드 타입(복합 값 타입) 새로운 값 타입을 직접 정의해서 사용할 수 있는데, JPA에서는 이것을 임베디드 타입(embedded type)이라 합니다. 중요한 것은 직접 정의한 임베디드 타입도 int, String처럼 값 타입이라는 것입니다. 임베디드 타입을 사용하지 않았을 때와 사용했을 때를 비교해 봅시다. 위는 평범한 회원 엔티티입니다. ...

2019년 12월 9일
·
0개의 댓글

JPA Auditing으로 생성일/수정일 자동화하기

현재 진행중인 프로젝트에서 해당 데이터의 생성시간과 수정시간을 관리해야 할 부분이 있었습니다. 예를 들어, 주문 도메인에서 주문한 시간과 주문 내용을 수정한 시간이 필요했습니다. 그리고 결제 도메인에서는 결제 요청한 시간과 결제 내용을 수정하는 시간이 필요했습니다. 현재 개발 초기 단계이지만 벌써 두 곳에서 생성시간/수정시간이 필요했습니다. 언제 만들...

2019년 12월 6일
·
0개의 댓글

Docker 사용해보기(기본 명령어)

Docker의 명령은 docker run, docker push와 같이 Docker 형식이며, 항상 root 권한으로 실행해야 합니다. search 명령으로 이미지 검색하기 Docker는 Docker Hub을 통해 이미지를 공유하는 생테계가 구축되어 있습니다. 유명 리눅스 배포판, 오픈 소스 프로젝트(Redis, Nginx 등)의 Docker 이미지는...

2019년 12월 5일
·
0개의 댓글

[JPA] 다양한 연관관계 매핑

이번 글에서는 **에 대해 알아보겠습니다. 이 시리즈 글은 김영한 님의 강의, 책을 보고 적은 것임을 알려드립니다. (강추) 다중성 연관관계는 다음과 같은 다중성이 있습니다. 다대일(@ManyToOne), 일대다(@OneToMany), 일대일(@OneToOne), 다대다(@ManyToMany) 보통 다대일과 일대다 관계를 가장 많이 사용하고 다대다 관계는...

2019년 11월 20일
·
0개의 댓글

[JPA] 연관관계 매핑 기초 #2 (양방향 연관관계와 연관관계의 주인)

이번 글에서는 에 대해 알아보겠습니다. 이 시리즈 글은 김영한 님의 강의, 책을 보고 적은 것임을 알려드립니다. (강추) 오타 및 피드백 환영합니다. 양방향 연관관계 이전 글에서는 회원에서 팀으로만 접근하는 다대일 단방향 매핑을 알아 보았습니다. 이번에는 팀에서 회원으로 접근하는 관계를 접근하는 관계를 추가해서, 양방향 연관관계로 매핑을 해보겠습니다. ...

2019년 10월 3일
·
0개의 댓글

[디자인 패턴] 싱글턴 패턴(Singleton Pattern)

지난주 우아한 테크코스 미션에서 멀티쓰레드(Multi Thread) 환경에서 개발했다. 싱글턴 패턴을 알고 있음에도 사용하지 않았던 것이 아쉬웠다. 간단히 정리하고 자주 보면서 기억하고 다음엔 사용해보자. 1. Singleton Pattern? 싱글턴 패턴은 오직 하나의 인스턴스만 생성해 재사용하기 위한 디자인 패턴입니다. 쉽게 말해, 생성자가 여러번 ...

2019년 10월 1일
·
0개의 댓글

[JPA] 연관관계 매핑 기초 #1 (연관관계의 필요성, 단방향 연관관계)

이번 글에서는 **에 대해 알아보겠습니다. 이 시리즈 글은 김영한 님의 강의, 책을 보고 적은 것임을 알려드립니다. (강추) 1. 연관관계가 필요한 이유 > > - 회원과 팀이 있다. > - 회원은 하나의 팀에만 소속될 수 있다. > - 회원과 팀은 다대일

2019년 9월 24일
·
0개의 댓글

[JPA] 엔티티 매핑 #2

이번 글에서는 에 대해 알아보겠습니다. 이 시리즈 글은 김영한 님의 강의, 책을 보고 적은 것임을 알려드립니다. (강추) 기본 키 매핑 JPA가 제공하는 데이터베이스 기본 키 생성 전략은 다음과 같습니다. 직접 할당: 기본 키를 애플리케이션에서 직접 할당, @Id만 사용 자동 생성(GeneratedValue): 대리 키 사용 방식 IDENTITY: 기...

2019년 9월 15일
·
0개의 댓글

[JPA] 엔티티 매핑 #1

이번 글에서는 객체와 테이블 매핑, 데이터베이스 스키마 자동 생성에 대해 알아보겠습니다. 이 시리즈 글은 김영한 님의 강의, 책을 보고 적은 것임을 알려드립니다. (강추) 엔티티 매핑 JPA를 사용하는 데 가장 중요한 일은 엔티티와 테이블을 정확하게 매핑하는 것입니다. 따라서 매핑 어노테이션을 숙지하고 사용해야 합니다. JPA는 다양한 매핑 어노테이...

2019년 9월 15일
·
0개의 댓글
post-thumbnail

[우아한테크코스] Lv2 회고

어느덧 우아한테크코스(이하 우테코) 여정의 절반이 지났다. 우테코를 시작한지 얼마 안된 것 같은데 벌써 4개월이 지났다는 것이 신기하고, "우테코 레벨2에서 정말 열심히 했니?"라는 질문에 부끄럽기도 하다. 우테코 Lv2에서는...? 레벨2 과정의 5주차까지는

2019년 9월 11일
·
2개의 댓글

웹과 네트워크의 기본(TCP/IP)

이 시리즈는 그림으로 배우는 Http&Network Basic을 읽고 정리한 내용입니다. 이번 포스팅에서는 HTTP를 이해하는데 알아야 할 TCP/IP 개념만 설명하겠습니다. 1. 네트워크의 기본은 TCP/IP 인터넷을 포함하여 일반적으로 사용하고 있는 네트워크는 TCP/IP라는 프로토콜에서 옴직이고 있습니다. HTTP는 그 중 하나입니다. 이제 TC...

2019년 9월 10일
·
2개의 댓글

[JPA] 영속성 컨텍스트 #2

이번 글에서는 영속성 컨텍스트의 특징(1차 캐시, 트랜잭션을 지원하는 쓰기 지연, 변경 감지)에 대해 알아보겠습니다. 이 시리즈 글은 김영한 님의 강의, 책을 보고 적은 것임을 알려드립니다. (강추) 영속성 컨텍스트의 특징 영속성 컨텍스트와 식별자 값 영속성 컨텍스트는 엔티티를 식별자 값(@Id로 테이블의 기본 키와 매핑한 값)으로 구분한다. 따라서 영속...

2019년 9월 6일
·
0개의 댓글

[JPA] 영속성 컨텍스트 #1

이번 글에서는 엔티티 매니저 팩토리, 엔티티 매니저, 영속성 컨텍스트의 개념, 엔티티의 생명 주기에 대해 알아보겠습니다. 이 시리즈 글은 김영한 님의 강의, 책을 보고 적은 것임을 알려드립니다. (강추) 영속성 컨텍스트 먼저 알고 가기 : 엔티티 매니저 팩토리와

2019년 9월 5일
·
0개의 댓글