pom.xml은 메이븐 프로젝트에 대한 설정 정보를 관리하는 파일로서 프로젝트에서 필요로 하는 의존 모듈이나 플로그인 등에 대한 설정을 담는다.메이븐은 한 개의 모듈을 아티팩트라는 단위로 관리한다. 위 설정은 spring-context라는 식별자를 가진 5.0.2.RE
DI는 Dependency Injection으로 우리말로는 '의존 주입'이다. 한 클래스가 다른 클래스의 메서드를 실행할 때 이를 의존이라고 한다. DI는 의존하는 객체를 직접 생성하는 대신 의존 객체를 전달받는 방식을 사용한다.src/../Member.javasrc/
의존 대상을 설정 코드에서 직접 주입하지 않고 스프링이 자동으로 의존하는 빈 객체를 주입해주는 기능도 있다. 이를 자동 주입이라고 한다. ChangePasswordService@Autowired 애노테이션을 붙이면 설정 클래스에서 의존을 주입하지 않아도 된다.스프링이
컴포넌트 스캔은 스프링이 직접 클래스를 검색해서 빈으로 등록해주는 기능이다. 설정 클래스에 빈으로 등록하지 않아도 원하는 클래스를 빈으로 등록할 수 있으므로 컴포넌트 스캔 기능을 사용하면 설정 코드가 크게 줄어든다.MemberDao애노테이션 값을 주지 않으면 클래스 이
스프링 컨테이너는 설정 클래스에서 정보를 읽어와 알맞은 빈 객체를 생성하고 각 빈을 연결(의존 주입)하는 작업을 수행한다.컨테이너를 사용한다는 것은 getBean()과 같은 메서드를 이용해서 컨테이너에 보관된 빈 객체를 구한다는 것을 뜻한다.컨테이너 초기화 -> 빈 객
pom.xmlCalculatorImpeCalculatorRecCalculator위에서 구현한 계승구현 클래스의 실행시간을 출력하려면 메서드의 시작과 끝에서 시간을 구하고 이 두 시간의 차이를 출력하는 것이다. 하지만 재귀이면 복잡해지고, 실행 시간을 밀리초가 아니라 나
JDBC API를 이용하면 사실상 데이터 처리와는 상관 없는 구조적인 코드가 반복된다. 이를 줄이기 위해 템플릿 메서드 패턴과 전략 패턴을 함께 사용한다. 스프링은 이 두 패턴을 엮은 JdbcTemplate을 제공한다.스프링의 장점 중 하나는 트랜잭션 관리가 쉽다는 것
webapp은 HTML, CSS, JS, JSP 등 웹 어플리케이션을 구현하는데 필요한 코드가 위치한다.WEB-INF에는 web.xml파일이 위치한다.https://goddaehee.tistory.com/247https://tomcat.apache.o
그림에서 <<spring bean>>이라고 표시한 것은 스프링 빈으로 등록해야 하는 것을 의미한다.회색 배경을 가진 구성 요소는 개발자가 직접 구현해야 하는 요소이다.DispatcherServlet은 모든 연결을 담당한다. 웹 브라우저로부터 요청이 들어오면
웹 어플리케이션을 개발하는 것은 다음 코드를 작성하는 것이다.특정 요청 URL을 처리할 코드처리 결과를 HTML과 같은 형식으로 응답하는 코드첫 번째는 @Controller 애노테이션을 사용한 컨트롤러 클래스를 이용해서 구현한다. 컨트롤러 클래스는 요청 매핑 애노테이션
이렇게 문자열을 하드코딩하면 문자열을 변경할 때 문제가 있다. 만약 문자열이 바뀌면 하나씩 직접 바꿔야하기 때문이다또 다른 문제점은 다국어 지원에서 문제가 있다.해결 책은 뷰 코드에서 사용할 문자열을 언어별로 파일에 보관하고 뷰 코드는 언어에 따라 알맞은 파일에서 문자
AuthInfo로그인 성공 후 인증 상태 정보를 보관할 때 사용할 클래스이다. MemberAuthService이메일과 비밀번호가 일치하는지 확인해서 AuthInfo 객체를 생성하는 클래스이다. LoginCommand폼에 입력한 값을 전달받기 위한 클래스다.LoginCo
MemberDaoListCommand커맨드 객체에 @DateTimeFormat 애노테이션이 적용되어 있으면 @DateTimeFormat에서 지정한 형식을 이용해서 문자열을 LocalDateTime 타입으로 변환한다. 여기서는 "2018030115"의 문자열을 "2018
간단한 웹 어플리케이션의 전형적인 구조는 아래와 같다프론트 서블릿컨트롤러 + 뷰서비스DAO프론트 서블릿은 웹 브라우저의 모든 요청을 받는 창구 역할을 한다. 스프링 MVC에서는 DispatcherServlet이 프론트 서블릿의 역할을 수행한다.컨트롤러는 실제 웹 브라우
웹 페이지에서 Ajax를 이용해서 서버 API를 호출하는 사이트가 많다. 이들 API는 웹 요청에 대한 응답으로 HTML 대신 JSON이나 XML을 이용한다. 웹 요청에도 쿼리 문자열 대신에 JOSN이나 XML을 데이터로 보내기도 한다.JSON은 중괄호를 사용해서 객체
개발을 진행하는 동안에는 실제 서비스 목적으로 운영중인 DB를 이용할 수는 없다. 개발하는 동안에는 개발용 DB를 따로 사용하거나 개발 PC에 직접 DB를 설치해서 사용한다. 실제 서비스 환경에서는 웹 서버와 DB 서버가 서로 다른 장비에 설치된 경우가 많다. 즉 개