보호되어 있는 글입니다.
spring
현재까지 진행 상태 멤버 서비스, 멤버 리포지토리 인터페이스, 멤버 리포지토리 객체 생성 멤버 서비스에서는 멤버 리포지토리 인터페이스가 final 변수로 설정되어있고, 직접 생성(new)하지 않는다. 멤버 서비스, 멤버 리포지토리 객체를 생성하여, 생성한 리포지토리 객체를 서비스에게 넘겨준다. 멤버 서비스는 생성자에서 받은 파라미터를 입력받아 사용한다. (DI) 서비스를 통해 멤버 가입 가능 (리포지토리에 저장되고, 꺼내올 수 있음) 테스트 케이스 생성 및 테스트 진행 회원 가입된 결과를 화면에 보여주기(컨트롤러, 뷰 템플릿 필요) --> 이제 진행할 차례 스프링 빈 등록 방법 1 : 컴포넌트 스캔과 자동 의존 관계 설정 @Controller /@Service/@Repository Spring 이 처음에..

비즈니스 요구사항 정리 스프링 구조를 이해하기 위한 단순한 예제이기 때문에 복잡한 기능을 사용하지 않을 예정이다. 데이터 : 회원ID, 이름 기능 : 회원 등록, 조회 DB는 정해지지 않았다고 가정 일반적인 웹 애플리케이션 계층 구조 컨트롤러 : 웹MVC의 컨트롤러 역할 서비스 : 핵심 비즈니스 로직 구현 (예. 회원 중복 가입 제한 등) 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 도메인 객체, 주로 데이터베이스에 저장하고 관리됨 (예. 회원, 주문, 쿠폰 등) 클래스 의존 관계 DB 저장소가 선정되지 않았기 때문에 초기 개발 단계에서는 구현체로 메모리 기반의 데이터 저장소를 사용한다. 추후에 어떤 기술을 사용할지(예. jpa..), 어떤 DB를 사용할지 ..

강의 진행 순서 스프링 프로젝트 생성 스프링 부트로 웹 서버 실행 회원 도메인 개발 웹 MVC 개발 DB 연동 - JDBC, JPA, 스프링 데이터 JPA 테스트 케이스 작성 프로젝트 생성 start.spring.io 에서 스프링부트 기반의 스프링 프로젝트를 만들 수 있다. Maven vs. Gradle 필요한 라이브러리를 땡겨오고, 빌드 라이프 사이클까지 관리해주는 툴이다. 과거에는 Maven을 더 많이 썼지만 요즘에는 Gradle을 많이 쓰는 추세이다. Spring Boot version (SNAPSHOT)은 아직 만들고 있는 버전이라는 의미이며, M1 등은 정식 릴리즈된 버전이 아니다. 정식 버전을 선택하자. Library Spring Web : 웹 프로젝트를 만드려면 필요하다. Thymeleaf ..
1. PSA란? PSA는 Portable Service Abstraction의 약자이며, 환경의 변화와 관계없이 일관된 기술로의 접근 환경을 제공하는 추상화 구조이다. PSA가 적용된 코드는 나의 코드를 그대로 유지한 채 다른 기술로 간편하게 바꿀 수 있도록 확장성이 좋고, 기술에 특화되어 있지 않는 코드를 의미한다. Spring은 Spring Web MVC, Spring Transaction, Spring Cache 등의 다양한 PSA를 제공한다. 서블릿을 사용하여 개발한다면 아래와 같은 순서로 진행된다. 1) HttpServlet을 상속받아 서블릿 객체를 만든다. 2) doGet(), doPost() 등을 오버라이딩하여 get, post 요청을 처리할 메소드를 생성한다. 3) 이러한 서블릿을 web...
보호되어 있는 글입니다.