서브메뉴

본문

자바 웹 개발 완벽 가이드 (JSP/서블릿부터 웹소켓, 스프링 MVC, JPA/하이버네이트, 스프링 시큐리티까지)
자바 웹 개발 완벽 가이드 (JSP/서블릿부터 웹소켓, 스프링 MVC, JPA/하이버네이트, 스프링 시큐리티까지)
저자 : 니콜라스 S. 윌리엄스
출판사 : 위키북스
출판년 : 2015
ISBN : 9788998139773

책소개

자바 플랫폼 엔터프라이즈 에디션(자바 EE)에 대한 경험이 있는 개발자가 기억을 되살리거나 최신 자바 EE 버전의 새로운 기능을 배우는 데 유용한 『자바 웹 개발 완벽 가이드』. 자바 SE와 SQL에 대해 잘 알고 기본적인 HTML을 이해할 수 있는 능력을 갖춘 프로그래머가 기존의 자바 웹 개발 기술을 한 단계 끌어올리도록 돕는다. 처음부터 차례로 읽으면서 배우거나 자바 프로그래밍에 대한 구체적인 질문이 있을 때 찾아보는 참고서로도 활용할 수 있다.
[교보문고에서 제공한 정보입니다.]

출판사 서평

자바가 최고의 프로그래밍 언어로 인정받는 데는 이유가 있다. 자바 SE에 익숙한 프로그래머라면 엔터프라이즈 애플리케이션을 개발할 때 처음부터 시작할 필요 없이 안전하고, 안정적이며, 확장성이 우수한 자바 EE를 활용해 손쉽게 기술을 업그레이드할 수 있다. 《자바 웹 개발 완벽 가이드》는 이러한 목표를 달성할 수 있게끔 구성한 책이다.

이 책은 자바 SE와 SQL에 대해 잘 알고 기본적인 HTML을 이해할 수 있는 능력을 갖춘 프로그래머가 기존의 자바 웹 개발 기술을 한 단계 끌어올리도록 돕는다. 처음부터 차례로 읽으면서 배우거나 자바 프로그래밍에 대한 구체적인 질문이 있을 때 찾아보는 참고서로도 활용할 수 있다.

이 책에서는 자바 EE 플랫폼 버전 7과 이에 포함된 다양한 기술과 더불어 스프링 프레임워크, 게시/구독, AMQP(고급 메시지 대기열 프로토콜), O/RM(객체-관계형 매퍼), 하이버네이트 ORM, 스프링 데이터, 전체 텍스트 검색, 아파치 루씬(Lucene), 하이버네이트 서치, 스프링 시큐리티, OAuth 등의 내용을 다룬다.

자바 웹 개발 기술을 한 차원 끌어올리는 완벽한 방법

《자바 웹 개발 완벽 가이드》는 자바 언어와 자바 플랫폼 스탠더드 에디션(자바 SE)에 대한 경험과 지식이 풍부한 소프트웨어 개발자와 엔지니어를 대상으로 한다. 이 책은 기존의 자바 개발자가 애플릿, 콘솔 또는 데스크톱 애플리케이션을 개발하면서 얻은 자바에 대한 지식과 경험을 바탕으로 엔터프라이즈 자바 웹 애플리케이션을 개발하는 방법을 배우기 위한 자습서다.

이 책은 자바 플랫폼 엔터프라이즈 에디션(자바 EE)에 대한 경험이 있는 개발자가 기억을 되살리거나 최신 자바 EE 버전의 새로운 기능을 배우는 데 유용하다. 또, 다양한 웹 소프트웨어 개발 개념과 패턴을 비롯해 구체적인 툴과 플랫폼 컴포넌트를 다루고 있으므로 소프트웨어 설계자에게도 유용하다. 설계자가 새로운 아이디어를 팀의 프로젝트와 프로세스에 적용하게끔 도와줄 것이다.

또한 이 책은 소프트웨어 개발 팀의 관리자에게도 유용하다. 관리자가 자신의 팀에 속한 개발자와 엔지니어들과 효과적으로 의사소통하려면 지식 기반을 넓힐 필요가 있으며 개발자가 사용하는 툴을 이해하면 특정 문제를 해결하기 위한 제안도 할 수 있다. 이 책을 읽고 나면 팀원들이 프로젝트에 적용되는 기술과 개념을 익힐 수 있게 책을 몇 권 더 구매해서 나눠줄 수도 있을 것이다.

마지막으로 이 책은 교사와 학생을 위한 교육 환경에서 사용할 수 있다. 이 책을 대학교 3~4학년용 강의 교재로 사용하면 졸업 이후 업무 현장에서 즉시 활용 가능한 수준 높은 기술을 쌓을 수 있다.

★ 이 책에서 다루는 내용 ★

◎ 엔터프라이즈 웹 애플리케이션 개발을 위한 자바 코드 작성법
◎ 웹 애플리케이션 설계자가 새로운 개념을 프로젝트와 프로세스에 적용하는 법
◎ 자바 EE 플랫폼 버전 7과 이에 포함된 다양한 기술
◎ 서블릿, JSP, 웹소켓, 스프링 프레임워크, AMQP, JPA O/RM, 스프링 데이터, 전체 텍스트 검색, 아파치 루씬, 하이버네이트 서치, 스프링 시큐리티, OAuth
◎ 자바 SE 8에 새로 추가된 람다 식과 JSR 310 날짜 및 시간 API의 다양한 활용법
[교보문고에서 제공한 정보입니다.]

목차정보

[1부] 엔터프라이즈 애플리케이션 개발

▣ 01장: 자바 플랫폼 엔터프라이즈 에디션 소개
자바 플랫폼 연대표
___초창기
___엔터프라이즈 자바의 탄생
___자바 SE와 자바 EE의 동반 발전
___최신 플랫폼 기능
___계속된 발전
기본적인 웹 애플리케이션의 구조 이해
___서블릿, 필터, 리스너 및 JSP
___디렉터리 구조와 WAR 파일
___배포 설명자
___클래스 로더 아키텍처
___엔터프라이즈 아카이브(EAR)
정리

▣ 02장: 웹 컨테이너 이용하기
웹 컨테이너 선택
___아파치 톰캣
___글래스피시
___제이보스 및 와일드플라이
___기타 컨테이너와 애플리케이션 서버
___이 책에서 톰캣을 사용하는 이유
톰캣 설치
___윈도우 서비스로 설치
___명령줄 애플리케이션으로 설치
커스텀 JSP 컴파일러 구성
톰캣에 애플리케이션 배포 및 배포 취소
___수동 배포 및 배포 취소
___톰캣 관리자 사용
IDE에서 톰캣 디버깅하기
___인텔리J IDEA 사용
___이클립스 사용
정리

▣ 03장: 첫 번째 서블릿 작성
서블릿 클래스 작성
___서블릿이 확장하는 대상
___이니셜라이저와 디스트로이어
배포를 위한 서블릿 구성
___설명자에 서블릿 추가
___서블릿과 URL 매핑
___서블릿 실행 및 디버깅
doGet(), doPost() 및 다른 메서드
___서비스 메서드 실행 중 수행해야 하는 작업
___HttpServletRequest 사용
___HttpServletResponse 사용
초기화 매개변수를 이용한 애플리케이션 구성
___컨텍스트 초기화 매개변수 사용
___서블릿 초기화 매개변수 사용
폼을 통한 파일 업로드
___고객 지원 프로젝트 소개
___파일 업로드를 위한 서블릿 구성
___파일 업로드 수신
다중 스레드로부터 애플리케이션을 보호하는 방법
___요청과 스레드, 메서드 실행
___공유 자원 보호
정리

▣ 04장: JSP로 콘텐츠 표시하기
output.println("<br />")보다는 <br />가 사용하기 쉽다
JSP의 장점
___런타임에 JSP에서 일어나는 일
첫 번째 JSP 작성
___파일 구조
___지시문, 선언, 스크립트릿, 식
___코드 주석 지정
___JSP 임포트 추가
___지시문 사용
___jsp 태그 사용
JSP에서 자바 사용하기(그리고 이를 피해야 하는 이유)
___JSP에서 암시적 변수 사용
___JSP에서 자바를 사용하지 말아야 하는 이유
서블릿과 JSP의 결합
___배포 설명자에서 JSP 프로퍼티 구성
___서블릿에서 JSP로 요청 전달
JSP 문서(JSPX)에 대한 간단한 소개
정리

▣ 05장: 세션을 이용한 상태 유지
세션이 필요한 이유
___상태 유지
___사용자 기억하기
___애플리케이션 워크플로 지원
세션 쿠키 및 URL 다시 쓰기
___세션 쿠키
URL을 통한 세션 ID 전달
___세션 취약점
세션에 데이터 저장하기
___배포 설명자에서 세션 구성
___데이터 저장 및 검색
___데이터 제거
___세션에 더 복잡한 데이터 저장하기
세션의 유용한 적용
___고객 지원 애플리케이션에 로그인 추가
___리스너를 이용한 세션 변경 감지
___활성 세션의 목록 유지
세션을 사용하는 애플리케이션의 클러스터링
___클러스터 내의 세션 ID 사용
___세션 복제 및 장애 조치에 대한 이해
정리

▣ 06장: JSP에서 식 언어 사용
식 언어
___식 언어의 목적
기본 구문 이해
___EL 식 배치
EL 구문 작성하기
___예약된 키워드
___연산자 우선순위
___객체 프로퍼티 및 메서드
___EL 함수
___정적 필드 및 메서드 접근
___열거형
___람다 식
___컬렉션
EL 식에서 범위가 있는 변수 사용하기
___암시적 EL 범위 사용
___암시적 EL 변수 사용
스트림 API를 이용한 컬렉션 접근
___중간 연산
___최종 연산 사용
___스트림 API의 실제 사용
___식 언어로 자바 코드 대체
정리

▣ 07장: 자바 표준 태그 라이브러리 사용
JSP 태그 및 JSTL 소개
___태그 사용하기
코어 태그 라이브러리(c 네임스페이스) 사용하기
___c:out 태그
___c:url 태그
___c:if 태그
___c:choose, c:when, c:otherwise 태그
___c:foreach 태그
___c:forTokens 태그
___c:redirect 태그
___c:import 태그
___c:set, c:remove 태그
코어 라이브러리 태그 사용하기
___국제화 및 서식 지정 태그 라이브러리(fmt 네임스페이스) 사용하기
___국제화 및 지역화 컴포넌트
___fmt:message 태그
___fmt:setlocale 태그
___fmt:bundle, fmt:setbundle 태그
___fmt:requestencoding 태그
___fmt:timezone, fmt:setTimezone 태그
___fmt:formatdate, fmt:parsedate 태그
___fmt:formatnumber, fmt:parsenumber 태그
___i18n 및 서식 지정 라이브러리 태그 실제로 사용하기
___데이터베이스 접근 태그 라이브러리(sql 네임스페이스) 사용하기
XML 프로세싱 태그 라이브러리(x 네임스페이스)
JSP 태그로 자바 코드 대체하기
정리

▣ 08장: 커스텀 태그 및 함수 라이브러리 작성
TLD, 태그 파일 및 태그 핸들러
___자바 표준 태그 라이브러리 TLD 읽기
___JSP 지시문과 태그 파일 지시문의 비교
HTML 템플릿으로 사용할 첫 번째 태그 파일 작성
날짜 서식 지정 태그 핸들러 작성
EL 함수를 이용한 문자열 단축
커스텀 JSP 태그로 자바 코드 대체하기
정리

▣ 09장: 필터를 이용한 애플리케이션 개선
필터의 용도
___로깅 필터
___인증 필터
___압축 및 암호화 필터
___오류 처리 필터
필터 작성과 선언, 매핑
___필터 체인
___URI 패턴과 서블릿 이름 매핑하기
___여러 요청 디스패처 형식에 매핑하기
___배포 설명자 사용하기
___어노테이션 사용하기
___프로그래밍 방식의 구성 사용하기
필터의 올바른 순서 지정
___URL 패턴 매핑과 서블릿 이름 매핑 비교
___간단한 예제로 필터 순서 이해하기
___비동기 요청 처리에 필터 사용하기
필터의 실용적인 사용법
___간단한 로깅 필터 추가
___필터를 사용한 응답 콘텐츠 압축
필터를 이용한 인증 간소화
정리

▣ 10장: 웹소켓을 이용한 대화식 애플리케이션 개발
진화: AJAX에서 웹소켓으로
___문제: 서버에서 브라우저로 새 데이터 얻기
___해결책 1: 잦은 폴링
___해결책 2: 긴 폴링
___해결책 3: 청크 인코딩
___해결책 4: 애플릿과 어도비 플래시
___웹소켓: 아무도 몰랐던 해결책의 재발견
웹소켓 API
___HTML 5(자바스크립트) 클라이언트 API
___자바 웹소켓 API
웹소켓을 이용한 멀티플레이어 게임 개발
___기본적인 틱-택-토 알고리즘 구현
___서버 엔드포인트 만들기
___자바스크립트 게임 콘솔 작성
___웹소켓 틱-택-토 테스트
클러스터에서 웹소켓을 이용한 통신
___서블릿 인스턴스 두 개로 간단한 클러스터 시뮬레이션
___이진 메시지 주고받기
___시뮬레이트된 클러스터 애플리케이션 테스트
고객 지원 애플리케이션에 "담당자와 채팅" 기능 추가하기
___인코더와 디코더를 이용한 메시지 변환
___채팅 서버 엔드포인트 만들기
___자바스크립트 채팅 애플리케이션 작성하기
정리

▣ 11장: 로깅을 활용한 애플리케이션 모니터링
로깅의 개념 이해
___로그를 사용해야 하는 이유
___로그에 추가할 수 있는 콘텐츠
___로그를 기록하는 방법
로깅 레벨 및 범주 사용
___다양한 로깅 레벨을 사용하는 이유
___정의된 로깅 레벨
___로깅 범주가 작동하는 방법
___로그 여과가 작동하는 방법
로깅 프레임워크 선택
___API와 구현 비교
___성능
___아파치 커먼즈 로깅 및 SLF4J 소개
___log4j 2 소개
애플리케이션에 로깅 통합하기
___log4j 2 구성 파일 만들기
웹 필터로 피시 태깅 활용하기
___자바 코드를 이용한 로깅 문 작성
___JSP에서 로그 태그 라이브러리 사용하기
___고객 지원 애플리케이션에서 로깅하기
정리

[2부] 스프링 프레임워크와의 통합

▣ 12. 스프링 프레임워크 소개
___제어 반전과 의존성 주입
___관점 지향 프로그래밍
___데이터 접근과 트랜잭션 관리
___애플리케이션 메시징
___웹 애플리케이션을 위한 모델-뷰-컨트롤러 패턴
스프링 프레임워크의 장점
___논리적 코드 그룹화
___하나의 코드 기반을 활용하는 여러 사용자 인터페이스
애플리케이션 컨텍스트
스프링 프레임워크 시동
___배포 설명자를 이용한 스프링 시동
___이니셜라이저에서 프로그래밍 방식으로 스프링 시동
스프링 프레임워크 구성
___XML 구성 만들기
하이브리드 구성 만들기
@Configuration을 이용한 자바 기반 스프링 구성
빈 정의 프로필의 활용
___프로필이 작동하는 방법
___안티패턴과 보안에 대한 고려
정리

▣ 13장: 컨트롤러로 서블릿 대체하기
@RequestMapping
___@RequestMapping 속성을 이용해 요청의 일치 범위 줄이기
___컨트롤러 메서드 매개변수 지정
___컨트롤러 메서드에 유효한 반환형 선택
스프링 프레임워크의 모델과 뷰 패턴 사용
___명시적 뷰와 뷰 이름 사용
___암시적 뷰와 모델 속성 사용
___응답 엔터티 반환
폼 객체 활용
___모델에 폼 객체 추가
___스프링 프레임워크의 form 태그 사용
___제출된 폼 데이터 획득
고객 지원 애플리케이션 업데이트
___다중 파트 지원 활성화
___서블릿을 스프링 MVC 컨트롤러로 변환
___커스텀 다운로딩 뷰 작성
정리

▣ 14장: 서비스와 리포지토리로 컨트롤러 지원하기
모델-뷰-컨트롤러와 컨트롤러-서비스-리포지토리
___프로그램 로직의 다양한 유형
___리포지토리 - 지속성 로직
___서비스 - 비즈니스 로직
___컨트롤러 - 사용자 인터페이스 로직
웹 애플리케이션 컨텍스트 대신 루트 애플리케이션 컨텍스트 사용
___여러 사용자 인터페이스에서 루트 애플리케이션 재사용
___컨트롤러에서 서비스로 비즈니스 로직 옮기기
___리포지토리를 데이터 저장소로 사용
비동기 및 예약 실행으로 서비스 기능 향상
___실행자와 스케줄러
___스케줄러와 비동기식 지원 구성
___@Async 메서드 작성 및 사용
___@Scheduled 메서드 작성 및 사용
웹소켓에 로직 계층 분리 적용
___스프링 애플리케이션 컨텍스트로 컨테이너가 관리하는 객체 추가
___스프링 웹소켓 구성자 사용
___웹소켓은 비즈니스 로직을 위한 인터페이스일 뿐이다
정리

▣ 15장: 스프링 프레임워크 i18n을 이용한 애플리케이션 국제화
스프링 프레임워크 i18n이 필요한 이유
___쉬운 국제화 방법
___직접 오류 메시지 지역화하기
기본 국제화 및 지역화 API 사용
___리소스 번들과 메시지 형식
___메시지 원본 사용
___메시지 원본을 활용한 JSP 국제화
스프링 프레임워크에서 국제화 구성
___메시지 원본 만들기
___로캘 확인자
___핸들러 인터셉터를 이용한 로캘 변경
___사용자 프로필 로캘 설정 제공하기
___표준 시간대 지원
___테마를 통해 국제화를 개선하는 방법
코드 국제화
___spring:message 태그 활용
___깔끔한 애플리케이션 오류 처리
고객 지원 애플리케이션 업데이트
___메시지 원본 직접 사용
정리

▣ 16장: JSR 349, 스프링 프레임워크 및 하이버네이트 유효성 검사기를 활용한 빈 유효성 검사
빈 유효성 검사의 기본 개념
___하이버네이트 유효성 검사기의 장점
___어노테이션 메타데이터 모델
___스프링 프레임워크를 이용한 빈 유효성 검사
스프링 프레임워크 컨테이너에서 유효성 검사 구성
___스프링 유효성 검사기 빈 구성
___오류 코드 지역화 설정
___메서드 유효성 확인 빈 후처리기 사용
___동일한 유효성 검사 빈을 사용하도록 스프링 MVC 구성
빈에 제약조건 유효성 검사 어노테이션 추가
___기본 제공 제약조건 어노테이션
___공통적인 제약조건 속성
___제약조건의 실제 사용
___@Valid를 이용한 재귀적인 유효성 검사
___유효성 검사 그룹 사용
___컴파일 시 제약조건의 적합성 확인
메서드 유효성 검사를 위한 스프링 빈 구성
___구현이 아닌 인터페이스에 어노테이션 지정
___메서드 매개변수에서 제약조건과 재귀적인 유효성 검사 사용
___메서드 반환값의 유효성 검사
___메서드 유효성을 검사할 클래스 지정
___스프링 MVC 컨트롤러에서 매개변수 유효성 검사 사용
___사용자에게 유효성 검사 오류 표시
유효성 검사 제약조건 작성
___커스텀 제약조건에서 다른 제약조건 상속
___제약조건 유효성 검사기 만들기
___제약조건 유효성 검사기의 수명주기 이해
고객 지원 애플리케이션에 유효성 검사 통합
정리

▣ 17장: RESTful과 SOAP 웹 서비스
웹 서비스
___초창기의 웹 서비스 SOAP
___간단한 해결책을 제시하는 RESTful 웹 서비스
스프링 MVC를 이용한 RESTful 웹 서비스 구성
___스테레오타입 어노테이션을 이용한 컨트롤러 구분
___별도의 웹과 REST 애플리케이션 컨텍스트 만들기
___RESTful 웹 서비스에서 오류 상황 처리
___RESTful 응답과 컨트롤러 메서드 매핑
___인덱스 엔드포인트를 이용한 검색 개선
웹 서비스 엔드포인트 테스트
___테스트 툴 선택
___웹 서비스에 요청 수행
SOAP를 위한 스프링 웹 서비스 사용
___계약 우선 XSD와 WSDL 작성
___SOAP 디스패처 서블릿 구성 추가
___SOAP 엔드포인트 만들기
정리

▣ 18장: 메시징과 클러스터링 활용을 통한 유연성과 안정성 향상
메시징과 클러스터링이 필요한 시점 알기
___애플리케이션 메시징
___클러스터링 소개
___메시징과 클러스터링이 함께 작동하는 방법
애플리케이션에 메시징 지원을 추가하는 방법
___애플리케이션 이벤트 만들기
___애플리케이션 이벤트 구독
___애플리케이션 이벤트 게시
___클러스터에서 메시지를 배포하는 방법
___배포를 지원하기 위한 이벤트 업데이트
___커스텀 이벤트 멀티 캐스터 생성 및 구성
___웹소켓을 이용한 이벤트 전송 및 수신
___멀티캐스트 패킷으로 노드 검색
___다중 배포를 통한 클러스터 시뮬레이션
AMQP를 이용한 메시지 배포
___AMQP 브로커 구성
___AMQP 멀티캐스터 만들기
___AMQP 지원 애플리케이션 실행
정리

[3부] JPA와 하이버네이트 ORM을 이용한 애플리케이션 개발

▣ 19장: 자바 지속성 API와 하이버네이트 ORM 소개
데이터 지속성
___플랫 파일 엔터티 저장소
___구조화된 파일 저장소
___관계형 데이터베이스 시스템
___객체 지향 데이터베이스
___스키마리스 데이터베이스 시스템
객체-관계형 매퍼 소개
___엔터티 저장의 문제 이해
___편리한 엔터티 지속성을 구현하는 O/RM
___표준 O/RM API를 제공하는 JPA
___하이버네이트 ORM의 장점
하이버네이트 ORM에 대한 간단한 소개
___하이버네이트 매핑 파일 사용
___세션 API
___SessionFactory에서 세션 얻기
___스프링 프레임워크로 SessionFactory 만들기
관계형 데이터베이스 준비
___MySQL과 MySQL 워크벤치 설치
___MySQL JDBC 드라이버 설치
___톰캣에서 연결 리소스 만들기
메이븐 의존성에 대한 참고 사항
정리

▣ 20장: JPA 어노테이션을 이용한 엔터티와 테이블 매핑
간단한 엔터티로 시작하기
___엔터티 표시하기와 테이블로 매핑하기
___JPA가 엔터티 필드를 사용하는 방법 지정
___대체 키 매핑
___기본 데이터 형식 사용
___열 이름과 다른 세부 정보 지정
지속성 유닛 만들기와 사용
___데이터베이스 테이블 설계
___지속성 유닛의 범위 이해
___지속성 구성 만들기
___지속성 API 사용
복합 데이터 형식 매핑
___열거형을 엔터티 프로퍼티로 사용
___JPA가 날짜와 시간을 처리하는 방법 이해
___큰 프로퍼티를 CLOB과 BLOB으로 매핑
정리

▣ 21장: 스프링 프레임워크 리포지토리에서 JPA 이용
스프링 리포지토리와 트랜잭션 사용
___트랜잭션의 범위 이해
___트랜잭션과 엔터티 관리자를 위한 스레드 사용
___예외 변환 활용
스프링 프레임워크에서 지속성 구성
___DataSource 조회
___코드에서 지속성 만들기
___트랜잭션 관리 설정
JPA 리포지토리 생성 및 사용
___지속성 유닛 주입
___표준 CRUD 작업 구현
___모든 엔터티를 위한 기본 리포지토리 만들기
___서비스에서 트랜잭션 경계 표시
___트랜잭션 서비스 메서드 사용
DTO와 엔터티를 통한 데이터 변환
___고객 지원 애플리케이션을 위한 엔터티 만들기
___BCrypt를 이용한 사용자 비밀번호 보호
___서비스에서 엔터티로 데이터 전송
정리

▣ 22장: 스프링 데이터 JPA를 이용한 보일러플레이트 리포지토리 제거
스프링 데이터의 통합 데이터 접근
___코드 중복 피하기
___스톡 리포지토리 인터페이스 사용
___엔터티를 검색하는 쿼리 메서드 작성
___커스텀 메서드 구현 제공
스프링 데이터 JPA 리포지토리 구성 및 생성
___리포지토리 자동 생성 활성화
___스프링 데이터 JPA 인터페이스 작성 및 사용
고객 지원 애플리케이션 리팩터링
___기존 리포지토리 변환
___지원 티켓에 설명 추가
정리

▣ 23장: JPA와 하이버네이트 서치를 이용한 데이터 검색
검색 소개
___인덱스의 중요성 이해
___세 가지 다른 접근법
고급 기준을 사용한 객체 검색
___복잡한 조건 쿼리 만들기
___쿼리에서 OR 사용
___성능 향상을 위한 유용한 인덱스 생성
JPA를 통한 전체 텍스트 인덱스 활용
___MySQL 테이블에 전체 텍스트 인덱스 생성
___검색 가능 리포지토리 생성 및 사용
___전체 텍스트 검색의 이식성
아파치 루씬과 하이버네이트 서치를 이용한 데이터 인덱싱
___루씬 전체 텍스트 인덱싱
___엔터티에 어노테이션을 지정해 메타데이터 인덱싱하기
___JPA를 통한 하이버네이트 서치 사용
정리

▣ 24장: 고급 매핑과 커스텀 데이터 형식 만들기
더 알아볼 내용
비표준 데이터 형식 변환
___속성 변환기
___변환 어노테이션
___속성 변환기 작성 및 사용
엔터티에 POJO 포함하기
___포함 가능 형식 지정
___프로퍼티에 포함 표시
___포함된 열 이름 재정의
엔터티 간 관계 정의
___일대일 관계 이해
___일대다 및 다대일 관계 사용
___다대다 관계 만들기
다른 일반적인 상황 해결
___수정 버전과 타임스탬프를 이용한 엔터티 버전 지정
공통 프로퍼티를 가진 추상 엔터티 정의
___기본 및 포함된 컬렉션 매핑
___키-값 쌍의 Map 저장
___여러 테이블에 엔터티 저장
프로그래밍 방식 트리거 만들기
___CRUD 작업 전후에 동작 수행
___엔터티 리스너 사용
고객 지원 애플리케이션 개선
Attachment의 컬렉션 매핑
___로드 타임 위빙을 이용한 단순 프로퍼티의 지연 로딩
정리

[4부] 스프링 시큐리티를 이용한 애플리케이션 보호

▣ 25장: 스프링 시큐리티 소개
인증이란?
___인증 통합
___권한 부여
스프링 시큐리티 소개
___스프링 시큐리티의 기반 이해
___스프링 시큐리티의 권한 부여 서비스
___스프링 시큐리티 구성
정리

▣ 26장: 스프링 시큐리티를 이용한 사용자 인증
인증 공급자 선택 및 구성
___사용자 세부 정보 공급자 구성
___LDAP와 액티브 디렉터리 공급자 사용
___OpenID를 사용한 인증
___사용자 기억하기
___그밖의 인증 공급자 소개
커스텀 인증 공급자 작성
___올바른 시동 순서
___공급자 생성 및 구성
___교차 사이트 요청 위조 공격 예방
정리

▣ 27장: 권한 부여 태그 및 어노테이션 활용
선언을 통한 권한 부여
___메서드 코드에서 사용 권한 검사
___URL 보안 적용
___어노테이션을 이용한 사용 권한 선언
___메서드 포인트컷 규칙 정의
권한 부여 결정
___접근 결정 보터
___접근 결정 관리자 사용
접근 제어 목록을 통한 객체 보안
___스프링 시큐리티 ACL
___접근 제어 목록 구성
___ACL을 엔터티로 채우기
고객 지원 애플리케이션에 권한 부여 추가
___커스텀 사용자 세부 정보로 전환
___서비스 메서드의 보안
___스프링 시큐리티의 태그 라이브러리 사용
정리

▣ 28장: OAuth를 이용한 RESTful 웹 서비스 보호
웹 서비스 보안
___웹 GUI와 웹 서비스 보안 비교
___인증 메커니즘 선택
OAuth 소개
___핵심 요소
___시작: OAuth 1.0
___표준: OAuth 1.0a
혁신: OAuth 2.0
스프링 시큐리티 OAuth
___OAuth 2.0 공급자
___OAuth 2.0 클라이언트 만들기
고객 지원 애플리케이션 완성
___요청 임시값과 시그니처 생성
___클라이언트 서비스 구현
___임시값 서비스 구현
___토큰 서비스 구현
___리소스 서버 필터 커스터마이즈
___스프링 시큐리티 다시 구성
OAuth 클라이언트 애플리케이션 만들기
___REST 템플릿 커스터마이즈
___스프링 시큐리티 OAuth 클라이언트 구성
___REST 템플릿 사용
___공급자와 클라이언트 함께 테스트
정리
[교보문고에서 제공한 정보입니다.]

QuickMenu

  • TOP