본문 바로가기

Back-End34

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 230614 : 실행은 같아도 코드는 다르다. 튜터님의 코드로부터 배운 보고 배운 점 : 같은 기능을 구현해도 코드는 너무 다르다. 오랜시간 축적된 지혜를 잘 흡수해야할 듯 하다. 오늘은 그저 강의 들으며 배운 것들 다음에 내가 적용하기 위해 정리해본다. 삼항연산자 활용 Long maxId = memoList.size() > 0 ? Collections.max(memoList.keySet()) + 1 : 1; 삼항연산자라는 걸 완전히 잊고 있다가 강의 도중 만났는 데, 다시 보이게 된다. 만약 저걸 안했더라면 아래처럼 코드를 했을 것이다. Long maxId = 0; if(memoList.size() > 0){ maxId = Collections.max(memoList.keySet()) + 1; } else { maxId = 1; } Map -> L.. 2023. 6. 19.
TIL 230613 : Spring 첫 인상. (@annotation) TIL은 뭔가 표면적인 내용 그 이상의 깨달음들을 기록하고 싶습니다. 아쉽게도 아직은 기본적인 문법과 기능들을 익히는 데에도 헷갈리고 숙지하기 바쁩니다. 어설프게 MVC패턴을 정리할 수는 있겠지만 머릿속 깊이 이해했다고 보기는 어렵기에 그 정도 수준의 학습을 기록하기엔 마음이 가지 않기에, 우선 기초를 빨리 숙지하고 거기서 나오는 응용력을 빨리 끌어올리고 싶은 마음에 기초적인 내용들을 숙지하기 위한 TIL로 정리하려하고, 그에 대한 변명을 해봤습니다.😂 Spring의 첫인상. @Annotation의 형태로 편리한 기능을 제공하는 느낌들을 많이 받았다. gradle이라는 기능이 있고 이를 통해 build하는 작업환경(?)을 세팅해주는 느낌이다. 작업환경의 중요성을 얼핏들은 것 같은데 우선 이에 대한 공부는.. 2023. 6. 14.
TIL 230612 : 날짜 시간 데이터와 인사하기. (2. SimpleDateFormat) 1. Calendar, Date (지난 포스팅) 2. SimpleDateFormat 참고 링크 https://ho-log.tistory.com/98 https://bangu4.tistory.com/200 https://blogdeveloperspot.blogspot.com/2018/12/java-localdatetimenow-format.html 추가링크 https://sujl95.tistory.com/85 Inctance vs LocalDateTime https://www.daleseo.com/java8-zoned-date-time/ ZonedTimeDate https://covenant.tistory.com/255 총정리 2. SimpleDateFormat SimpleDateFormat 클래스는 날짜.. 2023. 6. 12.
TIL 230609 : 날짜 시간 데이터와 인사하기. (1. Calendar, Date) 지난 시간에 git공부한 거 토대로 싹 브랜치 정리하고, 나아가 untracked되어야 할 파일이랑 폴더도 추가함. 이것때문에 IDE 모듈상의 오류 때문에 상당한 분노가 생김. 날짜 시간도 공부해야겠다 과제에서 처음 들어보는 개념으로 시간과 날짜에 대한 공부 필요성을 느꼈다. 오후시간에 여유가 있어 수정도 할 겸, 찬찬히 훑어보는 시간을 가졌다. 아래와 같이 나누어 알아보자. 1. Calendar, Date 2. SimpleDateFormat 1. Calendar, Date Calendar, Date 이 두 클래스는 자바의 초기 1.0 1.1버젼에서부터 시작된 클래스라고 한다. 자바의 정석 교재에서도 설명만하고 알아만 두면 좋다고 하고 넘어간다. Calnedar Calendar cal = new Cale.. 2023. 6. 9.