본문 바로가기

분류 전체보기

(175)
땅콩친구들 - 2 : 기획서 사실 땅콩친구들은 규모가 크지도 않고, 1인 개발이기 때문에 굳이 기획서가 필요없다. 그럼에도 나는 계획했던 1단계인 기획서부터 작성한다. 기획서를 작성하는 이유 실무에서 새로운 프로젝트를 진행할 때의 프로세스를 녹여보고 싶어서. 즉흥적으로 디자인 하지 않고, 일관적으로 UI를 설계하고 싶어서 재밌을것 같아서 기획서 템플릿은 무료 템플릿을 쓰기로 결정했다. https://startbootstrap.com/theme/sb-admin-2 Start Bootstrap startbootstrap.com 위와 같은 템플릿을 쓰기로 했다. 피그마같은 툴을 쓰기에는 시간과 에너지가 많이 들어가기 때문에 ppt를 사용하기로 했다. 템플릿에서 최대한 많이 복사해와서 각 상황들을 ppt에 묘사하고 그걸 기반으로 만들어 나..
땅콩친구들 - 1 : 계획세우기 토이프로젝트를 시작하는 이유 아직 api를 설계해서 프론트와 연결해 본 경험이 없다 : 지금까지는 타임리프를 통해서 뷰를 구현했었다. 현재 회사에서는 코틀린을 사용하지만 아직 자바에 대해서 더 공부하고 싶다 : 요즘 대세가 코틀린인건 알고 있지만 나는 자바 + 스프링부트를 더 하고 싶다. 언젠간 코틀린을 쓸테지만 자바에 대해서, 스프링에 대해서 더 알고난 이후에 쓰고 싶다. 재미있다 : 많이 빈약하고 허점투성이지만 내 손으로 만든 결과물을 보면 재미있고 뿌듯하다. 하고싶은 프로젝트가 아주 많다. 그 중에 하나를 이번에 개발할 계획이다 사용할 기술 Language Java BackEnd Spring Boot FrontEnd Vue.js DB MariaDB, JPA, Querydsl Collaboration..
스프링 DB : JDBC는 뭐에요? 일반적인 서버와 DB 연결 방법 Connection 연결 : 주로 TCP/IP를 사용해서 커넥션을 연결 SQL 전달 : DB가 이해할 수 있는 언어인 SQL을 Connection을 통해 DB에 전달 결과 응답 : DB는 SQL을 수행하고 그 결과를 응답한다. 서버는 응답 결과를 활용 JDBC가 왜 나왔을까? DB의 종류는 수십가지가 있다. 예전에는 DB마다 위에서 언급한 Connection 연결, SQL 전달, 결과 응답을 받아오는 방법이 천차만별이었다!! 이런 문제들을 해결하기 위해서 JDBC가 등장했다! JDBC (Java Database Connectivity) : Java에서 DB에 접속할 수 있도록 하는 Java API JDBC는 표준 인터페이스를 구현해서 DB에 종류에 상관하지 않게 Conne..
의존관계 주입 방법 중 생성자 주입에 대해서 설명해주세요 https://jootang2.tistory.com/149 @ComponentScan은 무슨 역할인가요? @Autowired는 뭐 하는 아이인가요? @ComponentScan은 @Componet가 붙은 모든 클래스를 스프링 Bean으로 등록해준다. 기본적으로 Bean의 이름은 맨 앞글자만 소문자를 사용한다. (ex. MemberService.class -> memberService) 사용자가 이름을 지정하려면 jootang2.tistory.com 이전 포스팅에서 @ComponentScan과 @Autowired 가 어떤 역할들을 하는 지 알아봤다. 이제 의존관계 자동 주입에 대해서 알아보자. 크게 4가지 방법이 있는데 이번 포스팅에서는 그 중 대표적인 생성자 주입 방법에 대해서 알아보자. 생성자 주입 생성..
@ComponentScan은 무슨 역할인가요? @Autowired는 뭐 하는 아이인가요? @ComponentScan은 @Componet가 붙은 모든 클래스를 스프링 Bean으로 등록해준다. 기본적으로 Bean의 이름은 맨 앞글자만 소문자를 사용한다. (ex. MemberService.class -> memberService) 사용자가 이름을 지정하려면 @Component("myMemberService") 이런 식으로 사용하면 된다. ComponentScan을 사용하기 전에는 직접 @Bean으로 설정 정보를 작성했고, 의존 관계도 직접 명시했었다. 이제 의존관계 주입도 @Component가 붙은 클래스 안에서 해결해야 한다. 이 때, 의존관계를 주입하기 위해 @Autowired를 사용한다. @Autowired를 지정하면 스프링 컨테이너가 자동으로 해당 스프링 빈을 찾아서 주입한다. (기본적으로..
Bean이 뭐에요? 그렇다면 객체는 뭔가요? 설명해주세요. 어제 회사에서 Bean이 뭔지 아냐는 질문을 받았다. 정확히 설명할 수 없었다. spring 시작하면 등록되는 설정... 어버버 하다가 대답을 못했다. 역시 기본이 탄탄해야 한다. Q. Bean이 뭔가요? A. 보통, java에서는 class를 생성하고 new를 사용해서 객체를 직접 생성합니다. Spring에서는 개발자가 직접 생성하지 않고 Spring이 객체를 생성해서 관리합니다. 이를 Bean이라고 합니다. 정리하자면, Spring이 만든 객체를 Bean이라고 합니다. Q.그렇다면 class와 객체는 뭔가요? 또, 인스턴스는 뭔가요? A. class는 일종의 설계도 입니다. 기능과 성능을 정의해 놓은 것 입니다. 설계도이므로 실제로 작동하지는 않습니다. 예를 들면, 핸드폰의 설계도입니다. 객체는 구현..
Spring bean 조회 시 같은 타입이 두 개 이상인 경우는 어떻게 해요~? https://jootang2.tistory.com/145 Spring에 등록된 Bean들을 조회해보자~ https://jootang2.tistory.com/144 Spring을 통해 의존관계 주입해보기! https://jootang2.tistory.com/127 Spring에서 순수 Java코드로 의존관계 주입해보기 (OCP,DIP 문제를 어떻게 해결하지?) 원리를 모르고 기능만 사용 jootang2.tistory.com 이전 포스팅에서 bean을 타입으로 조회하는 방법을 알아봤다. 동일한 타입이 두 개 이상인 경우는 어떻게 해야하지!? 먼저 오류가 나는 경우를 보자 @Test @DisplayName("타입으로 조회시 같은 타입이 둘 이상 있으면, 중복 오류가 발생") void findBeanByTyp..
“www.google.com” 을 입력하면 무슨 일이 일어날까? (TCP/IP) https://jootang2.tistory.com/136 웹 브라우저 요청 흐름을 따라가보자 https://jootang2.tistory.com/135 구글 URL을 해석해보자! (https://www.google.com:443/search?q=hello&hl=ko) 실제 구글 URL을 파헤쳐보면서 주소에 어떤 정보들이 담겨져 있는지 알아보자! 준비물 : https://www.google.com:443 jootang2.tistory.com 위 포스팅을 통해서 우리는 웹 브라우저 요청흐름을 따라가봤다. 오늘은 주소창에 "www.google.com"을 입력하면 무슨일이 일어나는 지 알아보자! 인터넷 세상에서는 TCP/IP를 통해 정보를 주고받는다. TCP/IP : 인터넷에서 컴퓨터들이 서로 정보를 주고 받..