서블릿은 자바로 만들어진 클래스이다.컨테이너가 없다면 객체를 생성해야 객체가 가진 메소드 호출이 가능할 것이지만.서블릿 컨테이너가 서블릿 객체를 생성하고 doGet()등의 메서드를 호출해 준다.HelloServlet 클래스 예시(약식 코드)WEB-INF/web.xml/
객체를 생성하고 객체들 사이의 의존관계를 처리하는 작업들을 개발자의 소스코드로 처리하지 않고 컨테이너가 처리하게 해 소스에 객체 생성과 의존관계에 대한 코드를 작성하지 않게 되어 결과적으로 낮은 결합도(타 클래스와 연결된 정도)의 컴포넌트를 구현할 수 있게 하는 것동작
Java 1.8.0 RunTime - Apache Tomcat v8.0 src/main/resources/META-INF 제거 src/main/webapp/WEB-INF/spring.views 제거 (JSP 파일) web.xml 루트 엘리먼트만 남기고 제거 pom.xml 스프링 버전 4.2.4로 수정
bean등록 기능 외의 트랜잭션 관리, 예외처리, 다국어 처리 등 여러 기능을 여러 XML 파일로 나누어 설정하는 방식에서 파일을 하나로 통합 할 때 사용하는 엘리먼트예시)DataSource 관련 설정.xml --> applicationContext.xml <--
객체 생성과 의존 관계를 컨테이너가 자동으로 관리하는 핵심 원리스프링은 제어의 역행을 Dependency Lookup, Dependency Injection 두 가지 형태로 지원한다.컨테이너가 운용에 필요한 객체를 생성하면 클라이언트가 컨테이너가 생성한 객체를 검색하여
레이어와 레이어 사이에서 관련 데이터를 한꺼번에 주고받을 목적으로 사용하는 클래스.SQL 테이블에 포함된 칼럼과 같은 이름의 변수를 private 접근제한자로 멤버변수로 선언하고 Getter/Setter 메서드로 접근하게 한다.데이터베이스 연동을 담당하는 클래스, JD
핵심 비즈니스 로직 외에 비즈니스 메소드마다 필요한 로깅, 예외, 트랜잭션 처리같이 매번 반복되는 코드를 효율적으로 관리하기 위해서 관심분리(Separation of Concerns)를 통해 정리하는 것 횡단 관심 (Crosscutting Concerns) 메소드마다
Java Database ConnectivityJava 어플리케이션에서 DB에 연결하고 SQL 쿼리를 실행하고, 결과를 가져오 트랙잰션 관리를 하게 해주는 표준 인터페이스
선언적 트랜잭션 (Declarative Transaction): 개발자가 코드로 commit()/rollback()을 직접 호출하지 않고, AOP(관점 지향 프로그래밍) 방식으로 컨테이너가 자동으로 트랜잭션을 관리하도록 설청하는 것
Model 1 아키텍처 90년대 말부터 2000년대 초반까지 자바 기반 웹 애플리케이션 개발에 널리 사용되던 구조이다. JSP 파일이 사용자 요청 처리와 화면출력을 동시에 담당하며, 데이터베이스 연동은 JavaBean 객체가 사용된다.