스프링/스프링 입문

이 글은 김영한 님의 Infrean 강의를 학습한 내용을 정리하여 작성합니다. 컴포넌트 스캔과 자동 의존관계 설정 자바 코드로 직접 스프링 빈 등록하기 컴포넌트 스캔과 의존관계 설정 회원 컨트롤러가 회원서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 준비한다. 회원 컨트롤러에 의존관계 추가 @Controller 스프링 컨테이너에 해당 클래스 객체를 생성해 넣어둔다. 해당 객체는 스프링이 관리한다. 이를 스프링 컨테이너에서 스프링 빈이 관리된다고 표현한다. 위 이미지처럼 MemberService 객체를 new로 생성해 사용할 수 있다. 하지만, 여러 Controller들이 MemberService를 사용하게 될 것인데 굳이 여러 개의 인스턴스를 생성할 필요가 없다. 하나의 인스턴스를 공유해야 한다. ..
이 글은 김영한 님의 Infrean 강의를 학습한 내용을 정리하여 작성합니다. 비지니스 요구사항 정리 회원 도메인과 리포지토리 만들기 회원 리포지토리 테스트 케이스 작성 회원 서비스 개발 회원 서비스 테스트 비지니스 요구사항 정리 데이터: 회원ID, 이름 기능: 회원 등록, 조회 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) 일반적인 웹 애플리케이션 계층 구조 컨트롤러: 웹 MVC 컨트롤러 역할 서비스: 핵심 비지니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비지니스 도메인 객체, ex) 회원 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 클래스 의존관계 아직 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록..
이 글은 김영한 님의 Infrean 강의를 학습한 내용을 정리하여 작성합니다. 이제부터는 스프링 웹 개발 기초에 대해 알아본다. 웹 개발에는 크게 세 가지 방법이 존재한다. 정적 컨텐츠 MVC와 템플릿 엔진 API 정적 컨텐츠 정적 컨텐츠란 이전 우리가 간단한 예제로 Welcome Page를 만들어 본 것을 떠올리면 된다. 정적 웹 페이지(static web page), 플랫 페이지(flat page, 스테이셔너리 페이지(stationary page)는 저장된 그대로 사용자에게 전달되는 웹 페이지로서, [1] 이는 웹 애플리케이션에 의해 생성되는 동적 웹 페이지와 반대되는 용어이다. [2] 즉, 정적 웹 페이지는 모든 상황에서 모든 사용자에게 동일한 정보를 표시하며, 콘텐츠 타입이나 문서 언어의 협상(n..
이 글은 김영한 님의 Infrean 강의를 학습한 내용을 정리하여 작성합니다. 빌드하고 실행하기 빌드를 수행하고 실제 실행할 수 있는 파일을 생성해본다. 이때, 콘솔 창을 이용한다. 1. ./gradlew build 2. cd build/libs gradlew build 명령의 결과로 hello-spring-0.0.1-SNAPSHOT.jar 파일이 생성되었다. 이 파일을 실행시키려면 다음 명령어를 사용한다. 3. java -jar hello-spring-0.0.1-SNAPSHOT.jar hello-spring-0.0.1-SNAPSHOT.jar 파일을 java를 사용해 실행시켰다. 제대로 동작하는지 확인해보자. 보다시피 localhost:8080/hello 페이지가 정상적으로 동작하는 것을 확인할 수 있다..
개발자가 될 사람
'스프링/스프링 입문' 카테고리의 글 목록 (2 Page)