Back-End/Spring17 TIL 230629 : List to JSON 객체 반환시 오류 (jackson) 오늘도 어김없이 이해할 수 없는 타이밍에 찾아오는 오류. 단순히 GET메소드로 포스트ResponseDto를 객체로 리턴받는 건데, 하나하나 할때는 되는데 전체를 하면 안 된다. 유독 13번 Post만 GET이 안된다. FK가 있어서일까?? (2~5는 이전 과제에서 등록된 객체) 새롭게 FK가 지정된 글 14번을 만들었다. 역시나 이건 잘 불러와진다. ResponseDto에 댓글을 담은 List가 있었다. 혹시나 하는 마음에 댓글 테이블을 확인해본다. | 드디어.. 발견했다. 아무래도 JSON 객체 를 해주는 과정에서 List는 오류가 나는 게 아닌가 싶었다. 왠지 jackson의 CollectionSerializer 저 부분일까 싶다. Jackson의 ObjectMapper objectmapper의 다양.. 2023. 6. 29. TIL 230628 : mappedBy 적응해보기 양방향 관계의 1:1 의 두 Entity 양방향일때, mappedBy 옵션으로 외래키의 주인을 지정해줘야한다. 위 예에서는 Food에서 외래키를 갖는 것으로 설정되어있다. Food에다가 외래키를 테이블 칼럼으로 설정하고 싶은곳에 @JoinColumn하고 Column이름을 설정해준다. 그리고 그 밑에 외래키로 받아올 객체를 선언해준다. 양방향의 경우 반대 Entity에는, 다시 말해 외래키가 없는 Entity에는 mappedBy를 써주고 외래키의 주인에 있는 변수명을 뒤에 적어준다. 본인 클래스의 이름이 아닌 외래키의 주인의 변수명을 따르는 것. User를 통해 Food 조회해보기 외래키의 주인은 Food. User를 통해서도 조회가 가능한지 확인해보자. 유저Repository에서 그냥 한번 가져와보자. .. 2023. 6. 28. TIL 230626 : Bean과 Singleton Bean 처음 강의를 들으며 완벽히 이해하지 못 하고 넘어갔던 Bean. 다시 들어보니 찜찜한 구석이 보이기 시작했다. Sevice클래스에 Repository를 생성자 주입하고 있다. 근데 가만 보면 PostRepository는 선언만 되고 생성은 되지 않았는데, 생성자에 어떻게 주입이 되고 있을까? 선언 하고 생성자가 없다는 걸 눈치 못 챘어서 예전 강의 때 '어디서 객체가 오는 걸까요?' 라는 말이 크게 와닿지 않았었다. 이렇게 생성하지 않았는데도 객체로 사용할 수 있는 것이 Spring의 Bean기능이다. 왼쪽에 커피콩처럼 보이는 것이 Bean객체화 되어서 관리되고 있다는 뜻이다. 이말인 즉슨 어딘가에선 저 Bean을 사용할 수 있다는 것이고, 아까 생성자 안에 객체 생성없이 바로 주입되는 것을 다.. 2023. 6. 26. TIL 230619 : Spring은 그저 도구. (IoC/DI, 3 Layer, 영속성 컨텍스트(flush commit 차이), 클래스 리터럴, URL주의점.. 강의를 집중해서 듣는 기간에는 새로운 정보들이 홍수처럼 쏟아진다. 새롭게 배운 내용, 배우면서 심화하고 싶은 내용, 어렵진 않아도 복잡한 내용 등. 이 기간에만 다양한 내용들을 포스팅에 정리하며 체득하고자 한다. 처음 배운 개념들 3 Layer Architecture 패턴이 보이니까 개발자 조상님들이 나눠놓음. Controller : 프론트엔드에서 받은 http요청들이 한 눈에 보기 쉽다. 데이터를 넘겨받는 방법들이 몇가지 있다. Service : 거의 주요하게 개발될 파트. 실제 서비스 관련된 로직들이 담긴다. Repository : DB와 연동되는 로직들. Spring Data JPA를 통해 편리하게 이용이 가능하다. Spring Data JPA 사용방법이 조금 독특하다. 해당 Repository클래.. 2023. 6. 20. TIL 230613 : Spring 첫 인상. (@annotation) TIL은 뭔가 표면적인 내용 그 이상의 깨달음들을 기록하고 싶습니다. 아쉽게도 아직은 기본적인 문법과 기능들을 익히는 데에도 헷갈리고 숙지하기 바쁩니다. 어설프게 MVC패턴을 정리할 수는 있겠지만 머릿속 깊이 이해했다고 보기는 어렵기에 그 정도 수준의 학습을 기록하기엔 마음이 가지 않기에, 우선 기초를 빨리 숙지하고 거기서 나오는 응용력을 빨리 끌어올리고 싶은 마음에 기초적인 내용들을 숙지하기 위한 TIL로 정리하려하고, 그에 대한 변명을 해봤습니다.😂 Spring의 첫인상. @Annotation의 형태로 편리한 기능을 제공하는 느낌들을 많이 받았다. gradle이라는 기능이 있고 이를 통해 build하는 작업환경(?)을 세팅해주는 느낌이다. 작업환경의 중요성을 얼핏들은 것 같은데 우선 이에 대한 공부는.. 2023. 6. 14. 이전 1 2 3 다음