이미 소장하고 있다면 판매해 보세요.
|
▣ 01장: 스프링 프레임워크 소개
1-1 소개 1-2 스프링 프레임워크 모듈 1-3 스프링 IoC 컨테이너 1-4 스프링 프레임워크의 장점 - 로컬 및 전역 트랜잭션을 일관된 방법으로 관리 - 선언식 트랜잭션 관리 - 보안 - JMX(Java Management Extensions) - JMS(Java Message Service) - 캐시 1-5 간단한 스프링 애플리케이션 애플리케이션 객체와 그것의 의존성 식별하기 식별한 애플리케이션 객체에 해당하는 POJO 클래스 만들기 구성 메타데이터 작성 스프링 컨테이너의 인스턴스 생성 스프링 컨테이너의 빈에 접근하기 1-6 스프링 기반의 다른 프레임워크 프로젝트 1-7 요약 ▣ 02장: 스프링 프레임워크 기초 2-1 소개 2-2 인터페이스 기반 프로그래밍 설계 원칙 - 시나리오: 의존 클래스가 의존성의 구상 클래스를 참조하는 경우 - 시나리오: 의존 클래스가 의존성이 구현하는 인터페이스 참조를 사용하는 경우 - 인터페이스 기반 프로그래밍 설계 방법을 위한 스프링 지원 2-3 스프링 빈을 인스턴스화하는 다른 방법 - 정적 팩터리 메서드를 이용한 빈 인스턴스화 - 인스턴스 팩터리 메서드를 이용한 빈 인스턴스화 2-4 의존성 주입 기법 - 세터 기반 DI - 생성자 기반 DI 2-5 빈의 범위 - 싱글톤 - 프로토타입 - 빈의 올바른 범위 선택 2-6 요약 ▣ 03장: 빈 구성 3-1 소개 3-2 빈 정의 상속 - MyBank: 빈 정의 상속 예제 - 상속되는 정보 3-3 생성자 인자 연결 - 〈constructor-arg〉 요소를 이용한 간단한 값 및 빈 참조 전달 - 형식을 기준으로 한 생성자 인자 연결 - 이름을 기준으로 한 생성자 인자 연결 3-4 다른 형식의 빈 속성 및 생성자 인자 구성 - 스프링에서 기본 제공하는 속성 편집기 - 다양한 컬렉션 형식의 값 지정 - 배열의 값 지정 - 〈list〉, 〈set〉, 〈map〉 요소의 기본 컬렉션 구현 3-5 기본 제공되는 속성 편집기 - CustomCollectionEditor - CustomMapEditor - CustomDateEditor 3-6 스프링 컨테이너에 속성 편집기 등록하기 - PropertyEditorRegistrar 구현 만들기 - CustomEditorConfigurer 클래스 구성 3-7 p 및 c 네임스페이스를 이용해 간결하게 빈 정의 작성하기 - p 네임스페이스 - c 네임스페이스 3-8 스프링의 util 스키마 - 〈list〉 - 〈map〉 - MapFactoryBean - 〈properties〉 - 〈constant〉 - 〈property-path〉 3-9 FactoryBean 인터페이스 - MyBank 애플리케이션: 데이터베이스에 이벤트 저장하기 - MyBank: FactoryBean 예제 - 팩터리 빈 인스턴스에 접근하기 3-10 요약 ▣ 04장: 의존성 주입 4-1 소개 4-2 내부 빈 4-3 depends-on 특성을 이용한 명시적인 빈 초기화 순서 지정 - MyBank: 빈 간의 암시적 의존성 - 암시적 의존성 문제 4-4 싱글톤 및 프로토타입 범위 빈의 의존성 - 싱글톤 범위 빈의 의존성 - 프로토타입 범위 빈의 의존성 4-5 싱글톤 빈에서 프로토타입 빈의 새 인스턴스 얻기 - ApplicationContextAware 인터페이스 - 〈lookup-method〉 요소 - 〈replaced-method〉 요소 4-6 의존성 자동 연결 - byType - constructor - byName - default/no - 빈을 자동 연결에서 제외 - 자동 연결의 제한 4-7 요약 ▣ 05장: 빈과 빈 정의의 사용자 지정 5-1 소개 5-2 빈 초기화 및 삭제 논리 사용자 지정 - 스프링이 destory-method 특성으로 지정된 정리 메서드를 호출하게 하는 방법 - 프로토타입 범위 빈의 정리 메서드 - 모든 빈의 기본 빈 초기화 및 삭제 메서드 지정 - InitializingBean 및 DisposableBean 수명 주기 인터페이스 - JSR 250의 @PostConstruct 및 @PreDestroy 어노테이션 5-3 BeanPostProcessor를 이용해 새로 생성된 빈 인스턴스와 상호작용하기 - BeanPostProcessor 예제 - 빈 인스턴스의 유효성 검사 - BeanPostProcessor 예제 - 빈 의존성 처리 - FactoryBean에 대한 BeanPostProcessor의 동작 방식 - RequiredAnnotationBeanPostProcessor - DestructionAwareBeanPostProcessor 5-4 BeanFactoryPostProcessor를 활용한 빈 정의 수정 - BeanFactoryPostProcessor 예제 - PropertySourcesPlaceholderConfigurer - PropertyOverrideConfigurer 5-5 요약 ▣ 06장: 스프링 어노테이션 기반 개발 6-1 소개 6-2 @Component를 이용한 스프링 컴포넌트 지정 6-3 @Autowired - 형식을 기준으로 한 의존성 자동 연결 6-4 @Qualifier - 이름을 기준으로 한 의존성 자동 연결 6-5 JSR 330의 @Inject 및 @Named 어노테이션 6-6 JSR 250의 @Resource 어노테이션 6-7 @Scope, @Lazy, @DependsOn, @Primary 어노테이션 6-8 @Value 어노테이션을 이용한 컴포넌트 구성 간소화 6-9 스프링 Validator 인터페이스를 이용한 객체의 유효성 검사 6-10 JSR 303 어노테이션을 이용한 제약 조건 지정 - 스프링의 JSR 303 지원 6-11 @Configuration 및 @Bean 어노테이션을 이용한 프로그래밍 방식의 스프링 빈 구성 6-12 요약 ▣ 07장: 스프링을 이용한 데이터베이스와의 상호작용 7-1 소개 7-2 MyBank 애플리케이션의 요구사항 7-3 스프링의 JDBC 모듈을 활용한 MyBank 애플리케이션 개발 - 데이터 원본 구성 - 스프링의 JDBC 모듈 클래스를 사용하는 DAO 작성 7-4 하이버네이트를 이용한 MyBank 애플리케이션 개발 - SessionFactory 인스턴스 구성 - 하이버네이트 API를 이용해 데이터베이스 상호작용을 수행하는 DAO 작성 7-5 스프링을 이용한 트랜잭션 관리 - MyBank의 트랜잭션 관리 요구사항 - 프로그래밍 방식의 트랜잭션 관리 - 선언식 트랜잭션 관리 - 스프링의 JTA 지원 7-6 요약 ▣ 08장: 스프링을 이용한 메시징, 이메일 전송, 비동기 메시지 실행 및 캐싱 8-1 소개 8-2 MyBank 애플리케이션의 요구사항 8-3 JMS 메시지 전송 - ActiveMQ 브로커를 임베디드 모드로 실행하도록 구성 - JMS ConnectionFactory 구성 - JmsTemplate을 이용한 JMS 메시지 전송 - 단일 트랜잭션 내에서 JMS 메시지 전송 - 동적 JMS 대상 및 JmsTemplate 구성 - JmsTemplate과 메시지 변환 8-4 JMS 메시지 수신 - JmsTemplate을 이용해 동기식으로 JMS 메시지 수신하기 - 메시지 수신자 컨테이너를 이용해 비동기식으로 JMS 메시지 수신하기 8-5 이메일 전송 8-6 작업 예약 및 비동기 실행 - TaskExecutor 인터페이스 - TaskScheduler 인터페이스 - @Async 및 @Scheduled 어노테이션 8-7 캐싱 - CacheManager 구성 - 캐싱 어노테이션 - @Cacheable, @CacheEvict, @CachePut - @Cacheable 8-8 MyBank 애플리케이션 실행 8-9 요약 ▣ 09장: 관점 지향 프로그래밍 9-1 소개 9-2 간단한 AOP 예제 9-3 스프링 AOP 프레임워크 - 프록시 생성 - expose-proxy 특성 9-4 포인트컷 식 - @Pointcut 어노테이션 - execution 및 args 포인트컷 지정자 - bean 포인트컷 지정자 - 어노테이션 기반 포인트컷 지정자 9-5 어드바이스 유형 - 사전 어드바이스 - 반환 후 어드바이스 - 예외 후 어드바이스 - 사후 어드바이스 - 전후 어드바이스 9-6 스프링 AOP - XML 스키마 스타일 - AOP 관점의 구성 - 어드바이스 구성 - 반환 후 어드바이스 구성 - 포인트컷 식과 어드바이스 연결 9-7 요약 ▣ 10장: 스프링 웹 MVC 기초 10-1 소개 10-2 샘플 웹 프로젝트의 디렉터리 구조 10-3 ‘Hello World’ 웹 애플리케이션의 이해 - HelloWorldController.java: Hello World 웹 애플리케이션의 컨트롤러 클래스 - helloworld.j네: ‘Hello World !!’ 메시지를 보여주는 JSP 페이지 - myapp-config.xml: 웹 애플리케이션 컨텍스트 XML 파일 - web.xml: 웹 애플리케이션 배포 설명자 10-4 DispatcherServlet - 프런트 컨트롤러 - ServletContext 및 ServletConfig 객체 접근 10-5 @Controller 및 @RequestMapping 어노테이션을 이용한 컨트롤러 개발 - 어노테이션이 지정된 컨트롤러를 활용한 ‘Hello World’ 웹 애플리케이션 개발 - @Controller 및 @RequestMapping 어노테이션 - 스프링 웹 MVC 어노테이션 활성화 10-6 MyBank 웹 애플리케이션의 요구사항 10-7 스프링 MVC 어노테이션 - @RequestMapping 및 @RequestParam - @RequestMapping을 이용해 요청을 컨트롤러 또는 컨트롤러 메서드로 연결하기 - @RequestMapping 어노테이션이 지정된 메서드의 인자 - @RequestMapping 어노테이션이 지정된 메서드의 반환 형식 - @RequestParam을 이용해 요청 매개변수를 컨트롤러 메서드로 전달하기 - 모든 요청 매개변수를 컨트롤러 메서드로 전달 - value 특성을 이용한 요청 매개변수의 이름 지정 - required 특성을 이용한 요청 매개변수의 필수 여부 지정 - defaultValue 특성을 이용한 요청 매개변수의 기본값 지정 10-8 유효성 검사 10-9 @ExceptionHandler 어노테이션을 이용한 예외 처리 10-10 루트 웹 애플리케이션 컨텍스트 XML 파일 로딩 10-11 요약 ▣ 11장: 스프링 웹 MVC에서의 유효성 검사 및 데이터 바인딩 11-1 소개 11-2 @ModelAttribute 특성으로 모델 특성 추가 및 검색 - 메서드 단계의 @ModelAttribute 어노테이션을 이용한 모델 특성 추가 - @ModelAttribute 어노테이션을 이용해 모델 특성 가져오기 - 요청 처리와 @ModelAttribute 어노테이션이 지정된 메서드 - @ModelAttribute 어노테이션이 지정된 메서드 인자의 동작 방식 - RequestToViewNameTranslator 11-3 @SessionAttributes 어노테이션으로 모델 특성 캐싱하기 11-4 스프링에서의 데이터 바인딩 - WebDataBinder: 웹 요청 매개변수를 위한 데이터 바인더 - WebDataBinder 인스턴스 구성 - @ControllerAdvice 어노테이션이 지정된 클래스에서 @InitBinder 어노테이션이 지정된 메서드 정의하기 - 데이터 바인딩 프로세스에 필드 포함/제외 - BindingResult 객체를 이용한 데이터 바인딩 및 유효성 검사의 오류 조사 11-5 스프링의 유효성 검사 지원 - 스프링 Validator 인터페이스를 이용한 모델 특성의 유효성 검사 - JSR 303 어노테이션을 이용한 제약 조건 지정 - JSR 303 어노테이션을 이용한 객체의 유효성 검사 - JSR 303의 @Valid 어노테이션을 이용한 모델 특성의 유효성 검사 11-6 스프링 form 태그 라이브러리 - 스프링 form 태그 라이브러리의 HTML5 지원 11-7 요약 ▣ 12장: 스프링 웹 MVC를 이용한 RESTful 웹 서비스 개발 12-1 소개 12-2 정기 예금 웹 서비스 12-3 스프링 웹 MVC를 이용한 RESTful 웹 서비스 구현 - JSON(JavaScript Object Notation) - FixedDepositWS 웹 서비스 구현 12-4 RestTemplate을 이용한 RESTful 웹 서비스 접근 12-5 HttpMessageConverter를 이용한 자바 객체 및 HTTP 요청/응답 간 변환 12-6 @PathVariable 및 @MatrixVariable 어노테이션 12-7 요약 ▣ 13장: 스프링 웹 MVC 활용 - 국제화, 파일 업로드 및 비동기 요청 처리 13-1 소개 13-2 핸들러 인터셉터를 통한 요청의 사전 및 사후 처리 - 핸들러 인터셉터 구현 및 구성 13-3 리소스 번들을 이용한 국제화 - MyBank 웹 애플리케이션의 요구사항 - MyBank 웹 애플리케이션의 국제화 및 지역화 13-4 비동기식 요청 처리 - 비동기 요청 처리 구성 - Callable을 반환하는 @RequestMapping 어노테이션이 지정된 메서드 - DeferredResult를 반환하는 @RequestMapping 어노테이션이 지정된 메서드 - DeferredResult 인스턴스의 결과 계산 - 기본 시간 제한 값 설정 - 비동기 요청 가로채기 13-5 스프링의 형변환 및 서식 지정 지원 - 사용자 지정 변환기 만들기 - 사용자 지정 변환기 구성 및 사용 - 사용자 지정 포매터 만들기 - 사용자 지정 포매터 구성 - AnnotationFormatterFactory를 생성해 @AmountFormat 어노테이션이 지정된 필드에만 서식 지정하기 - AnnotationFormatterFactory 구현 구성 13-6 스프링 웹 MVC의 파일 업로드 지원 - CommonsMultipartResolver를 이용한 파일 업로드 - StandardServletMultipartResolver를 이용한 파일 업로드 13-7 요약 ▣ 14장: 스프링 시큐리티를 이용한 애플리케이션의 보안 구현 14-1 소개 14-2 MyBank 웹 애플리케이션의 보안 요구사항 14-3 스프링 시큐리티를 이용한 MyBank 웹 애플리케이션의 보안 구현 - 웹 요청 보안 구성 - 인증 구성 - 스프링 시큐리티의 JSP 태그 라이브러리를 이용한 JSP 콘텐츠 보호 - 메서드 보호 14-4 MyBank 웹 애플리케이션 - 스프링 시큐리티의 ACL 모듈을 이용한 FixedDepositDetails 인스턴스 보호 - ch14-bankapp-db-security 프로젝트 배포 및 사용 - ACL과 사용자 정보를 저장하는 데이터베이스 테이블 - 사용자 인증 - 웹 요청 보안 - JdbcMutableAclService 구성 - 메서드 단계 보안 구성 - 도메인 객체 인스턴스 보안 - 프로그래밍 방식의 ACL 항목 관리 - MutableAcl과 보안 14-5 요약 ▣ 부록 A: 이클립스 IDE(또는 인텔리제이 IDEA)로 샘플 프로젝트 가져오기 및 배포 A-1 개발 환경 설정 A-2 이클립스 IDE(또는 인텔리제이 IDEA)로 샘플 프로젝트 가져오기 - 샘플 프로젝트 가져오기 - 이클립스 IDE에서 M2_REPO 클래스 경로 변수 구성 A-3 톰캣 7 서버와 함께 작동하도록 이클립스 IDE 구성하기 A-4 톰캣 7 서버로 웹 프로젝트 배포하기 - 임베디드 모드에서 톰캣 7 서버 실행 |
|
『시작하세요! 스프링 4 프로그래밍』은 스프링 프레임워크를 이용해 애플리케이션 개발을 시작하기 위한 실습 안내서로서 스프링 프레임워크를 처음 접하거나 아직 경험이 많지 않은 독자들에 맞게 구성돼 있다. 이 책의 모든 예제는 스프링 4를 사용한다.
이 책에서 다루는 내용 · XML과 어노테이션을 이용한 구성 메타데이터 지정 · 프로그래밍 방식으로 스프링 컨테이너와 빈 구성 · 다양한 빈 속성 유형 구성 · 빈 수명 주기 인터페이스 · BeanPostProcessor와 BeanFactoryPostProcessor를 이용한 빈 사용자 지정 · 빈 정의 상속 · JSR 250과 330의 어노테이션을 이용한 의존성 주입 · JSR 303(빈 유효성 검사 API) 어노테이션과 스프링 Validator 인터페이스를 이용한 유효성 검사 · SpEL(Spring Expression Language) · 스프링 캐시 추상화를 이용한 캐싱 · 스프링을 이용한 JMS 메시지 송수신 · 스프링의 관점 지향 프로그래밍 지원 · 스프링을 이용한 이메일 전송 · 스프링을 이용한 메서드 비동기 실행 · 작업 예약 · JDBC와 하이버네이트를 이용한 데이터베이스 상호작용 · 프로그래밍 방식 및 선언식 트랜잭션 관리 · 스프링 웹 MVC · 스프링을 이용한 RESTful 웹 서비스 개발 · 스프링 시큐리티 |