한 클래스가 다른 클래스의 메서드를 실행할 때 이를 '의존'한다고 표현한다.위와 같은 MemberRegisterService클래스에서 MemberDao클래스의 메서드인 selectByEmail등을 사용한다.MemberRegisterService클래스가 MemberDao
자동 주입 기능을 사용하면 스프링이 알아서 의존 객체를 찾아서 주입한다.스프링 컨테이너 설정에 의존 객체를 명시하지 않아도 스프링 필요한 의존 빈 객체를 찾아서 주입해준다.pwdSvc.setMemberDao(memberDao()); 를 이용하여 빈객체 주입ChangeP
컴포넌트 스캔이란?스프링이 직접 클래스를 검색해서 빈으로 등록해주는 기능이다.설정 클래스(AppCtx클래스)에 빈으로 등록하지 않아도 원하는 클래스를 빈으로 등록할 수 있으므로 컴포넌트 스캔 기능을 사용하면 설정 코드가 크게 줄어든다.스프링이 검색해서 빈으로 등록할 수
AnnotationConfigApplicationContext 생성자를 이용해서 스프링 컨테이너를 초기화 한다.스프링 컨테이너는 설정 클래스에서 정보를 읽어와 알맞은 빈 객체를 생성하고, 각 빈을 연결(의존주입)하는 작업을 수행한다.컨테이너는 getBean()과 같은
AOP기능은 Spring-aop 모듈이 제공한다.Spring-context모듈을 의존 대상에 추가하면 spring-aop 모듈도 함께 의존대상에 포함된다.build.gradle , pom.xml에 의존대상 추가하는 것을 말한다.기존 코드를 수정하지 않고 코드의 중복도
src/main/webapp 폴더에는 HTML, CSS, JS, JSP등 웹어플리케이션을 구현하는데 필요한 코드가 위치한다.src/main/webapp/WEB-INF 에는 web.xml 파일이 위치한다.서블릿 스펙에 따르면 WEB-INF 폴더의 하위 폴더로 lib 폴더
image직접 개발을 하는 구성요소는 JSP, Controller를 의미한다.컨트롤러 구성 요소는 개발자가 직접 구현해야 하고 스프링 빈으로 등록해야 한다.중앙에 위치한 DispatcherServlet은 모든 연결을 담당한다.웹 브라우저로부터 요청이 들어오면 Dispa
특정 요청 URL을 처리할 코드처리 결과를 HTML과 같은 형식으로 응답하는 코드@RequestMapping, @GetMapping, @PostMapping 등이 있다.위 코드에서 /register 라는 경로가 공통되는 경로라는것을 알 수 있다.컨트롤러 클래스 자체에
폼 값 검증과 에러 메시지 처리는 어플리케이션 개발에서 중요하다.폼 값 검증과 에러 메시지 처리를 위한 2가지 기능이다.커맨드 객체를 검증하고 결과를 에러 코드로 저장JSP에서 에러 코드로부터 메시지를 출력스프링 MVC에서 커맨드 객체의 값이 올바른지 검사하기 위해 두
로그인 상태를 유지하는 방법은 크게 HttpSession을 이용하는 방법과 쿠키를 이용하는 방법이 있다.컨트롤러에서 HttpSession을 사용하려면 다음의 2가지 방법 중 한 가지를 사용하면 된다.요청 매핑 어노테이션 적용 메서드에 HttpSession 파라미터를 추
커맨드 객체(form태그에서 받아오는 객체 값)에 @DateTimeFormat 어노테이션이 적용되어 있으면 @DateTimeFormat에서 지정한 형식을 이용해서 문자열을 LocalDateTime 타입으로 변환한다.pattern 속성값으로 "yyyyMMddHH"를 주었
간단한 웹 어플리케이션을 개발할 때 사용하는 전형적인 구조는 다음 요소를 포함한다.프론트 서블릿프론트 서블릿은 웹 브라우저의ㅏ 모든 요청을 받는 창구 역할을 한다.프론트 서블릿은 요청을 분석해서 알맞은 컨트롤러에 전달한다.스프링 MVC에서는 DispatcherServl
JSON은 간단한 형식을 갖는 문자열로 데이터 교환에 주로 사용한다.JSON은 중괄호를 사용해서 객체를 표현한다.객체는 (이름, 값) 쌍을 갖는다.이때 이름과 값은 콜론(:)으로 구분한다.Jackson은 자바 객체와 JSON 형식 문자열 간 변환을 처리하는 라이브러리이
Spring Framework에서 제공하는 클래스 중 HttpEntity라는 클래스가 존재한다.이것은 HTTP 요청(Request) 또는 응답(Response)에 해당하는 HttpHeader와 HttpBody를 포함하는 클래스다.그러므로 ResponseEntity에서는