반응형

Back-end/Spring 20

[스프링 입문] 07. AOP

AOP가 필요한 상황 모든 메소드의 호출 시간을 측정하고 싶다면? 공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) 회원 가입 시간, 회원 조회 시간을 측정하고 싶다면? MemberService 회원 조회 시간 측정 추가 package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import org.springframework.beans.factory.annotation.Aut..

Back-end/Spring 2021.03.19

[스프링 입문] 06. 스프링 DB 접근 기술

H2 데이터베이스 설치 H2 데이터 베이스 개발이나 테스트 용도로 가볍고 편리한 DB, 웹 화면 제공 H2 데이터베이스 버전은 스프링 부트 버전에 맞춘다. 권한 주기 : chmod 755 h2.sh 실행: ./h2.sh 데이터베이스 파일 생성 방법 jdbc:h2:~/test ~/test.mv.db 파일 생성 확인 이후부터는 jdbc:h2:tcp://localhost/~/test 테이블 생성하기 테이블 관리를 위해 프로젝트 루트에 sql/ddl.sql 파일을 생성 H2 데이터베이스에 접근해서 member 테이블 생성 drop table if exists member CASCADE; create table member ( id bigint generated by default as identity, name..

Back-end/Spring 2021.03.19

[스프링 입문] 05. 회원 관리 예제 - 웹 MVC 개발

회원 웹 기능 - 홈 화면 추가 홈 컨트롤러 추가 package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; @Controller public class HomeController { @GetMapping("/") public String home() { return "home"; } } 회원 관리용 홈 컨트롤러가 정적파일보다 우선 순위가 높다. Hello Spring 회원 기능 회원 가입 회원 목록 회원 웹 기능 - 등록 회원 등록 폼 컨트롤러 package hello.hellospring.contro..

Back-end/Spring 2021.03.18

[스프링 입문] 04. 스프링 빈과 의존 관계

컴포넌트 스캔과 자동 의존관계 설정 회원 컨트롤러가 회원 서비스와 회원 리포지토리를 사용할 수 있게 의존 관계를 준비하자 회원 컨트롤러에 의존관계 추가 package hello.hellospring.controller; import hello.hellospring.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @Controller public class MemberController { private final MemberService memberService; @Autowired public MemberCon..

Back-end/Spring 2021.03.18

[스프링 입문] 03. 회원 관리 예제 - 백엔드 개발

비즈니스 요구사항 정리 비즈니스 요구사항 정리 데이터 : 회원 ID, 이름 기능 : 회원 등록, 조회 아직 데이터 저장소가 선정되지 않음 (가상의 시나리오) 일반적인 웹 애플리케이션 계층 구조 컨트롤러 : 웹 MVC의 컨트롤러 역할 서비스 : 핵심 비즈니스 로직 구현 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 도메인, 객체 (ex. 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨) 클래스 의존관계 아직 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계 데이터 저장소는 RDB, NoSQL 등등 다양한 저장소를 고민중인 상황으로 가정 개발을 진행하기 위해서 초기 개발 단계에서는 구현체로 가벼운 메모리 기반의 ..

Back-end/Spring 2021.03.17

[스프링 입문] 02. 스프링 웹 개발 기초

정적 컨텐츠 정적 컨텐츠 'welcome page'처럼 server에서 하는 것 없이 파일 그대로 'web browser'에 내려주는 것 MVC와 템플릿 엔진 MVC Model, View, Controller 템플릿엔진(jsp, php) html을 그냥 주는 것이 아니라 서버에서 프로그래밍해서 동적으로 바꿔서 내려주는 것 View 화면을 그리는데 모든 역량을 집중 Model, Controller business logic과 관련, 내부적인 것을 처리하는 것에 집중 API API JSON 데이터 구조 포맷으로 클라이언트에게 전달하는 것 서버끼리 통신할 때도 API로 소통 package hello.hellospring.controller; import org.springframework.stereotype...

Back-end/Spring 2021.03.16
반응형
LIST