지은이 : 키노시타 마사아키
대학 졸업 후 IT 벤처기업에 입사해서 다양한 현장에서 요구사항 정의, 설계, 구현, 테스트, 납품 및 유지보수까지 모든 공정을 경험했습니다. SES, 자사 패키지의 개발 경험 후 대형 식품회사의 통신판매부에서 시스템 담당자로 업체 관리를 담당했습니다. 통신판매부의 사업을 정리하는 것을 계기로 주식회사 후루네스에 입사해서 현재는 IT 교육을 담당하고 있습니다.
▣ 01장: 스프링 프레임워크 알아보기
1-1 스프링 프레임워크 개요
___1-1-1 프레임워크란?
___1-1-2 스프링 프레임워크란?
1-2 개발 환경 준비(IDE)
___1-2-1 IDE 설치
1-3 개발 환경 준비(PostgreSQL)
___1-3-1 PostgreSQL 설치
▣ 02장: 기초 지식 배우기
2-1 자바 기초 지식 복습
___2-1-1 인터페이스란?
___2-1-2 컴파일 오류란?
___2-1-3 의존성이란?
___2-1-4 인터페이스에 의존하는 프로그램 만들기
___2-1-5 다형성이란?
2-2 웹 애플리케이션 제작을 위한 필수 지식
___2-2-1 클라이언트와 서버
___2-2-2 애플리케이션과 웹 애플리케이션
___2-2-3 AP 서버
___2-2-4 HTTP 통신
___2-2-5 GET 메서드와 POST 메서드
___2-2-6 3계층 구조
2-3 개발에 유용한 라이브러리와 도구
___2-3-1 롬복이란?
___2-3-2 롬복을 사용하는 프로그램 만들기
___2-3-3 그레이들이란?
▣ 03장: 스프링 프레임워크의 핵심 기능(DI) 알아보기
3-1 스프링 프레임워크의 핵심 기능
___3-1-1 의존성 주입
___3-1-2 관점지향 프로그래밍
3-2 DI 컨테이너 알아보기
___3-2-1 DI 컨테이너
___3-2-2 5가지 규칙
___3-2-3 DI를 사용하는 프로그램 만들기
___3-2-4 요약
3-3 DI 컨테이너 알아보기 (인스턴스 생성)
___3-3-1 빈이란?
___3-3-2 빈 정의란?
___3-3-3 자바 컨피그를 이용하는 프로그램
___3-3-4 요약
3-4 DI 컨테이너 알아보기 (주입)
___3-4-1 주입 방법
___3-4-2 각 주입 방법을 사용하는 프로그램 만들기
___3-4-3 DI 이해하기
▣ 04장: 스프링 프레임워크의 핵심 기능(AOP) 알아보기
4-1 AOP(관점지향 프로그래밍)의 기초 지식
___4-1-1 AOP 예제(데이터베이스 접근)
___4-1-2 AOP 고유 용어
___4-1-3 포인트컷 식
4-2 AOP 프로그램 만들기
___4-2-1 프로젝트 생성 및 AOP 사용 준비
___4-2-2 타깃 만들기
___4-2-3 애스펙트 만들기
___4-2-4 시작 클래스 생성 및 동작 확인
4-3 스프링 프레임워크가 제공하는 AOP 기능 이해하기
___4-3-1 트랜잭션 관리
___4-3-2 AOP 이해하기
▣ 05장: MVC 모델 알아보기
5-1 MVC 모델 알아보기
___5-1-1 MVC 모델이란?
___5-1-2 MVC 모델의 개요와 이점
5-2 스프링 MVC 알아보기
___5-2-1 스프링 MVC란?
___5-2-2 요청 수신에서 응답 전송까지의 흐름
5-3 스프링 MVC 사용해보기
___5-3-1 스프링 MVC 프로그램 만들기
___5-3-2 요약
▣ 06장: 템플릿 엔진(타임리프) 알아보기
6-1 타임리프 알아보기
___6-1-1 타임리프란?
___6-1-2 Model 인터페이스란?
___6-1-3 기억해야 할 중요한 메서드
6-2 Model을 사용하는 프로그램 만들기
___6-2-1 Model을 사용하는 프로젝트
___6-2-2 ModelAndView 사용법
6-3 타임리프 사용법
___6-3-1 타임리프를 사용하는 프로젝트
___6-3-2 타임리프 사용법
___6-3-3 컨트롤러와 뷰 생성
___6-3-4 직접 문자를 삽입해서 값 결합 만들기
___6-3-5 값 결합(리터럴 치환)에서의 비교와 등가
___6-3-6 조건 연산자를 이용한 조건부 분기(false) 예시
___6-3-7 switch에서 th:object 만들기
___6-3-8 참조(List) 반복 예시
___6-3-9 반복 상태에서 유틸리티 객체 만들기
___6-3-10 HTML 파일의 부품화 예시
___6-3-11 공통 레이아웃 만들기
___6-3-12 요약
▣ 07부: 서버로 데이터를 전송하는 방법
7-1 요청 파라미터 알아보기
___7-1-1 요청 파라미터란?
___7-1-2 요청 파라미터를 획득하는 방법
___7-1-3 요청 파라미터를 사용하는 프로그램 만들기
7-2 여러 개의 요청 파라미터 전송하기
___7-2-1 @RequestParam으로 여러 개의 값 받기
___7-2-2 Form 클래스란?
___7-2-3 요약
7-3 URL에 내장된 값 받기
___7-3-1 프로젝트 생성(링크)
___7-3-2 프로젝트 생성(버튼)
▣ 08부: 유효성 검사 기능 알아보기
8-1 입력 체크 알아보기
___8-1-1 유효성 검사와 유효성 검사기
___8-1-2 단일 항목 검사란?
___8-1-3 상관 항목 검사란?
___8-1-4 요약
8-2 단일 항목 검사를 사용하는 프로그램 만들기
___8-2-1 프로젝트 생성
___8-2-2 애플리케이션 계층 생성
___8-2-3 @ModelAttribute란?
8-3 상관 항목 검사를 사용하는 프로그램 만들기
___8-3-1 프로젝트 생성
___8-3-2 @AssertTrue 활용법
___8-3-3 Validator 인터페이스 구현 방법
▣ 09부: O/R 매퍼(MyBatis) 알아보기
9-1 MyBatis 알아보기
___9-1-1 O/R 매퍼란?
___9-1-2 MyBatis란?
___9-1-3 MyBatis 사용법
9-2 MyBatis 사용해보기
___9-2-1 프로젝트 생성
___9-2-2 엔티티 생성
___9-2-3 매퍼 파일 사용법
___9-2-4 컨트롤러 만들기
___9-2-5 뷰 만들기
___9-2-6 동작 확인
___9-2-7 요약
9-3 resultMap 알아보기
___9-3-1 resultMap이란?
___9-3-2 테이블 구성
___9-3-3 엔티티 추가 및 수정
___9-3-4 매퍼 파일 수정
___9-3-5 뷰 수정
___9-3-6 동작 확인
___9-3-7 요약
▣ 10부: 애플리케이션 제작 준비하기
10-1 애플리케이션 개요
___10-1-1 ToDo 앱이란?
___10-1-2 프로젝트 생성 준비
___10-1-3 제작 절차
10-2 ToDo 앱 만들기 준비하기
___10-2-1 데이터베이스 생성
___10-2-2 프로젝트 생성
___10-2-3 application.properties 설정
___10-2-4 계층화
10-3 테이블과 데이터 만들기
___10-3-1 애플리케이션 실행
___10-3-2 테이블 확인
___10-3-3 데이터 확인
▣ 11부: 앱 만들기(데이터베이스 조작)
11-1 도메인 객체와 리포지터리 만들기
___11-1-1 이번에 만드는 컴포넌트
___11-1-2 도메인 객체: 엔티티 생성하기
___11-1-3 리포지터리 생성
11-2 SQL 생각해보기
___11-2-1 SQL 작성
11-3 매퍼 파일 만들기
___11-3-1 매퍼 파일 생성
___11-3-2 동작 확인
▣ 12부: 앱 만들기(서비스)
12-1 서비스와 ServiceImpl 만들기
___12-1-1 이번에 만드는 컴포넌트
___12-1-2 서비스 생성
___12-1-3 ServiceImpl 생성
12-2 트랜잭션 관리에 대해 알아보기
___12-2-1 트랜잭션이란?
___12-2-2 트랜잭션 경계란?
___12-2-3 트랜잭션 관리 방법
___12-2-3 동작 확인
▣ 13부: 앱 만들기(애플리케이션 계층)
13-1 ToDo 앱의 조회 기능 구현하기
___13-1-1 이번에 만들 컴포넌트
___13-1-2 컨트롤러 생성(ToDo 목록, ToDo 상세)
___13-1-3 뷰 생성(ToDo 목록, ToDo 상세)
___13-1-4 동작 확인
13-2 ToDo 앱: 등록 및 업데이트 구현하기
___13-2-1 폼 생성
___13-2-2 헬퍼 만들기
___13-2-3 컨트롤러 수정(ToDo 등록, ToDo 업데이트)
___13-2-4 뷰 생성 (ToDo 등록, ToDo 업데이트)
___13-2-5 동작 확인
13-3 ToDo 앱: 삭제 구현하기
___13-3-1 컨트롤러 생성(ToDo 삭제)
___13-3-2 뷰 생성 (ToDo 삭제)
___13-3-3 동작 확인
▣ 14부: 입력 체크 구현하기
14-1 입력 체크 준비하기
___14-1-1 유효성 검사 고려하기
___14-1-2 스프링 이니셜라이저로 의존성 추가하기
14-2 입력 체크 구현하기
___14-2-1 폼 클래스 수정
___14-2-2 컨트롤러 수정
___14-2-3 뷰 수정
___14-2-3 동작 확인
▣ 15부: 로그인 인증 구현하기
15-1 스프링 시큐리티 개요
___15-1-1 스프링 시큐리티란?
___15-1-2 메뉴 화면 만들기
15-2 스프링 시큐리티 도입하기
___15-2-1 스프링 이니셜라이저로 의존성 추가하기
___15-2-2 기본 설정 확인
___15-2-3 커스터마이징 설정 개요
15-3 인가 알아보기
___15-3-1 스프링 시큐리티의 인가
___15-3-2 인증과 인가의 차이점
___15-3-3 의존성 추가
15-4 커스텀 오류 페이지란?
___15-4-1 커스텀 오류 페이지 생성
___15-4-2 마무리
▣ 부록A: 스프링 시큐리티
A-1 스프링 시큐리티를 복습하자
___A-1-1 스프링 시큐리티 돌아보기
___A-1-2 커스터마이즈 설정의 개요
A-2 커스터마이즈 설정을 해보자
___A-2-1 커스터마이즈 설정: 로그인 화면 표시
___A-2-2 커스터마이즈 설정: 인증 처리 ①
___A-2-3 커스터마이즈 설정: 인증 처리 ②
___A-2-4 커스터마이즈 설정: 데이터베이스에서의 취득
A-3 인가 처리를 프로그램에 적용해보자
___A-3-1 권한 추가
___A-3-2 접근 제어
A-4 커스텀 에러 페이지를 만들어보자
___A-4-1 커스텀 에러 페이지 생성
A-5 커스텀 속성을 추가해보자
___A-5-1 커스텀 속성이란?
___A-5-2 커스텀 속성의 추가
___A-5-3 정리
도서 DB 제공 - 알라딘 인터넷서점 (www.aladin.co.kr)