본문 바로가기

TIL : Today I learned (or Week)54

WIL 230702 : JPA에 발 담그기. FACTS 이번 일주일 동안 있었던 일, 내가 한 일 : 가장 큰 건 JPA의 위엄에 대해서 어느정도 감을 잡은 것. Entity간의 연관관계에 공부해보고 객체 차원에서의 맵핑관계와 그 주의사항 등에 익숙해져보는 시간이었다. 그 외에는 Spring의 다양한 크고작은 기능들에 더 알아봤다. Http의 동작원리에 좀 더 공부를 하고 이를 톰캣에서의 작동하는 원리로 이해했다. 더불어서 frontcontroller방식에 대해 더 깊이있게 이해했다. FEELINGS 나의 감정적인 반응, 느낌 : JPA라는 단어만 들어보고 개념만 두루뭉술 알았었는데, 이를 통한 데이터 처리는 굉장히 기본 업무라는 것을 느꼈다. 어떤 부분에서 코드를 잘 짜서 성능개선할 수 있는 부분이 있다고 해서 꽤나 흥미로웠다. 그리고 Http에.. 2023. 7. 3.
TIL 230627 : Headers에 정보 보내기 (feat. HttpServletResponse) Http의 동작 과정 아직 Http에 대해 자세히 배우지 못한 채로 그저 백엔드단에서의 코딩을 하다보니 어렴풋이 눈치 챈 것들이 있다. 위 사진 처럼 크게 클라이언트와 서버가 있고 Request(클라이언트 -> 서버) / Response(서버 -> 클라이언트) 이 두가지로 나뉘어져 응답과 반응을 한다라는 것. 과제를 하며 POSTMAN으로 받은 Request, Response 로그이다. 위 문단은 Request로, GET메소드로 url과 아래 다른 정보들이 Headers에 담겨서 서버로 간걸 확인할 수 있다. 아래는 Response로 두번째 문단이 Headers, 세번째 문단이 Body이며 각각에 서버로부터 받은 정보들 상태코드나 각종 키-값들의 형태로 Headers에 담겨있고, Body에 담아서 온 데.. 2023. 6. 27.
WIL 230625 : Spring 2. 전체 청사진을 엿보다 FACTS 이번 일주일 동안 있었던 일, 내가 한 일 : Spring 기초에 이에 숙련과정을 진행했다. 동시에 개인과제를 통해 기초 과정에서의 과제를 좀 더 디벨롭하는 과정이 있었고, 주요 포인트는 인증과 인가 기능을 포함한 JWT토큰 발행과 Spring Security의 기본 실행이었다. FEELINGS 나의 감정적인 반응, 느낌 : Spring이 라이브러리가 아닌 프레임워크라는 이유를 피부로 조금 체감했다. 굉장히 넓고 깊고, 이를 통해 생략된 과정이 너무 많구나를 느꼈다. 단순히 동작방법만 알고 구현해내는 것 이상으로, 어떠한 과정들이 생략되었는 지 까지 공부를 해야, 이후 심화된 대응과 학습이 가능할 거라는 생각이 들었다. 그리고 여러 세미나나 기성 개발자들이 사용하는 용어들 대부분을 이제 한번이.. 2023. 6. 26.
TIL 230623 : ERD를 알아보자 (Entity Relation Diagram) ERD? 개인과제로 ERD제출을 같이 요구 받았다. ERD?? 처음 들어봤다. 예전 특강때 보니까 이미 아는 사람이 꽤 있어보이기도 했지만 나는 처음이었고, 업무에 있어서 꽤나 잘 배워두고 넘어가면 좋을 것 같아서 미루다가 오늘 시간 좀 내서 정리해보며 실습해봤다. 우선 직접 만들어 본 결과물. 쉽게 말하자면 자료구조? 각 데이터 클래스들, Entity들의 관계도를 다이어그램으로 나타낸 것이다. Entity, Attribute, Relationship 도형이 이렇게 3가지이다. Entity : 하나의 객체가 되는 데이터 Attribute : Entity에 거기에 속해있는 속성들 테이블 상에서 칼럼이 되는 속성 Relationship : Entity 간의 관계성 PK Attribute안에 밑줄이 그어진 것.. 2023. 6. 23.
TIL 230622 : Dto에 값을 넣어보자 (RequestBody, ModelAttribute) 문제 : Controller에서 Dto에 값이 넣어지지 않았다. 항상 이런 건 강의 잘 보고 따라하며 과제를 하고 있는데, 똑같이 했는데 안된다. 바로 저기에 log를 넣어보았는데, null로 나온다. 시도 @ModelAttribute @ModelAttribute 어노테이션을 달아보았지만 소용없었다. 분명 강의에서는 생략했었다. 아마도 이는 @RequestParam 혹은 @ModelAttribute 중 하나가 자동으로 적용되며 생략이 가능했었을텐데, 받는 데이터는 원시타입이 아니기에 @ModelAttribute로 이미 적용 중이었을 것이다. 그러니 이미 @ModelAttribute달고도 오류가 나고 있던 것이니 아무런 효과가 없었을거라는 뜻. @RequestBody 혹시나 하는 마음에 @RequestBo.. 2023. 6. 22.
TIL 230621 : 뭘 모르면 사소한 것에도 휘둘린다 문제 발생 DataIntegrityViolationException: not-null property references a null or transient value : com.sparta.springauth.entity.User.email] with root cause 분명 똑같이 했다고 생각했는데 오류가 뜨면 너무 허망하다. User 엔티티를 db에 저장하는 과정에서 해당 오류가 떴다. Not NULL 칼럼인 email에 NULL이 들어왔다는 뜻. 시도 RequestDto에는 잘 들어왔다 멤버 값도 잘 받아져 있다 email칼럼만의 문제는 아니다 이렇게 바꿔보면 이번엔 password가 문제로 나온다. DataIntegrityViolationException: not-null property ref.. 2023. 6. 21.