서브메뉴

본문

처음 시작하는 스프링 프레임워크 - 원리부터 실전까지 (원리부터 실전까지)
처음 시작하는 스프링 프레임워크 - 원리부터 실전까지 (원리부터 실전까지)
저자 : 허진경
출판사 : 부크크(bookk)
출판년 : 2021
ISBN : 9791137259171

책소개

이 책은 자바 개발자가 스프링 프레임워크를 이용해서 시스템을 구축하기 위한 스프링 프레임워크의 필수 내용을 원리와 함께 실전코드까지 설명하고 있다. 이 책의 주요 내용은 다음과 같다. 1장은 스프링의 개념 및 스프링에서 가장 중요한 빈(Bean) 생성 및 관리와 의존성 주입에 대한 내용이다. 반드시 숙지해야 이후 내용을 이해할 수 있습니다. 2장은 관점지향 프로그래밍(AOP)에 대한 내용이다. 이 장은 AOP 관련 용어를 외우고 시작해야 합니다. 그리고 이 장을 이해해야 트랜잭션 처리를 할 수 있다.

3장은 데이터베이스 프로그래밍에 대한 내용이다. Spring JDBC를 이용하여 데이터 프로그래밍하는 방법을 배웁니다. 4장은 웹 애플리케이션을 개발하기 위해 사용하는 스프링 웹 MVC 프레임워크에 대한 내용이다. 가장 길고 내용이 많다. 웹 개발을 위해 반드시 알아야 하는 내용들입니다. 5장은 파일 업로드 및 다운로드를 설명하고 있다.
[예스24에서 제공한 정보입니다.]

출판사 서평

이 책은 자바 개발자가 스프링 프레임워크를 이용해서 시스템을 구축하기 위한 스프링 프레임워크의 필수 내용을 원리와 함께 실전코드까지 설명하고 있습니다.



이 책의 주요 내용은 다음과 같습니다.



1장은 스프링의 개념 및 스프링에서 가장 중요한 빈(Bean) 생성 및 관리와 의존성 주입에 대한 내용입니다. 반드시 숙지해야 이후 내용을 이해할 수 있습니다.



2장은 관점지향 프로그래밍(AOP)에 대한 내용입니다. 이 장은 AOP 관련 용어를 외우고 시작해야 합니다. 그리고 이 장을 이해해야 트랜잭션 처리를 할 수 있습니다.



3장은 데이터베이스 프로그래밍에 대한 내용입니다. Spring JDBC를 이용하여 데이터 프로그래밍하는 방법을 배웁니다.



4장은 웹 애플리케이션을 개발하기 위해 사용하는 스프링 웹 MVC 프레임워크에 대한 내용입니다. 가장 길고 내용이 많습니다. 웹 개발을 위해 반드시 알아야 하는 내용들입니다.



5장은 파일 업로드 및 다운로드를 설명하고 있습니다. 파일을 데이터베이스에 저장하고 다운로드하는 방법을 예를 들어 설명했습니다.



6장은 스프링에서 마이바티스 프레임워크를 이용하여 데이터베이스 프로그래밍하는 방법에 대하여 설명했습니다.



7장은 지금까지 배운 내용을 기반으로 데이터베이스를 이용한 파일 첨부 기능을 가진 멀티 게시판을 만드는 방법을 설명합니다.



부록 1은 스프링을 이용하여 개발하기 위한 개발 환경 설정에 대한 내용입니다.



부록 2는 깃허브를 이용한 프로젝트 버전관리에 대해 설명합니다.



부록 3은 스프링 부트를 이용해 스프링 프로젝트를 생성하고 실행시키는 방법을 설명합니다.



부록 4는 JDBC 연결정보 암호화 및 폼 입력값 검증 등 알아두면 쓸모 있는 몇 가지 기술들을 설명했습니다.





Github : https://github.com/hjk7902/spring

홈페이지 : http://www.javaspecialist.co.kr
[알라딘에서 제공한 정보입니다.]

목차정보

1장. 스프링 프레임워크

1. 스프링 프레임워크 개요

1.1. 개요
1.2. 장점
1.3. 주요 구성요소
1.4. 특징

2. 의존성 주입 개요

2.1. 의존성 주입을 사용하지 않는 코드
2.2. 의존성 주입을 사용한 코드

3. 스프링의 의존성 주입

3.1. XML을 이용한 의존성 주입
3.2. 아노테이션을 이용한 의존성 주입
3.3. 빈 생성과 의존성 주입 비교

4. 빈(Bean) 설정파일

4.1. 네임스페이스 추가
4.2. 스프링 설정파일 나누기
4.3. 〈import〉 태그를 이용한 다른 빈 설정파일 포함
4.4. 여러 개 설정파일 지정

2장. Spring AOP

1. AOP 개요

1.1. AOP와 횡단 관점
1.2. 프락시 클래스를 이용한 AOP 구현
1.3. AOP 용어
1.4. 위빙 방법
1.5. Spring에서 AOP

2. XML을 이용한 AOP

2.1. AOP 라이브러리 의존성 추가
2.2. 네임스페이스 추가
2.3. AOP 설정
2.4. 어드바이스
2.5. 〈aop:advisor〉
2.6. Pointcut 표현식

3. Annotation을 이용한 AOP

3.1. AOP 라이브러리 의존성 추가
3.2. AOP 아노테이션 사용 설정
3.3. AOP 아노테이션
3.4. 어드바이스
3.5. 예제 코드

3장. Spring JDBC

1. Spring JDBC 개요

1.1. Java SE의 JDBC API를 이용한 코드
1.2. Spring JDBC를 이용한 코드

2. Spring JDBC 설정

2.1. Spring JDBC 의존성 추가
2.2. JDBC 드라이버 클래스 의존성 추가
2.3. 데이터베이스 연결정보 설정
2.4. JDBCTemplate 빈 설정
2.5. JDBCTemplate API

3. EMPLOYEES 테이블 관리하기 예제

3.1. Class Diagram
3.2. 메이븐 의존성 설정
3.3. 스프링 설정파일
3.4. Value Object 클래스
3.5. DAO 클래스
3.6. Service 클래스
3.7. main 클래스
3.8. 실행 결과

4. 트랜잭션 처리

4.1. 트랜잭션 설정
4.2. XML을 이용한 트랜잭션 설정
4.3. 아노테이션을 이용한 트랜잭션 설정

4장. Spring Web MVC

1. MVC 패턴

1.1. Servlet을 이용한 MVC 구현
1.2. 커맨드 패턴 기반의 코드
1.3. 커맨드 패턴을 이용한 명령어 처리기 분리
1.4. 설정파일을 이용한 커맨드와 핸들러 클래스 관계 설정

2. Spring Web MVC

2.1. Spring Web MVC Framework
2.2. DispatcherServlet
2.3. 스프링 설정파일 위치
2.4. web.xml 파일
2.5. 컨트롤러와 뷰

3. 컨트롤러와 요청 처리

3.1. 스프링 컨트롤러
3.2. URL 매핑
3.3. 요청 방식에 따른 처리
3.4. 다중 요청 처리
3.5. 요청 파라미터 받기
3.6. Path Variable & URI Template Variable
3.7. 컨트롤러 메서드의 파라미터 타입
3.8. Static 파일(CSS, JS, IMAGE) 설정
3.9. 예외처리
3.10. 인터셉터

4. 모델과 뷰

4.1. 컨트롤러 메서드의 리턴 타입
4.2. 뷰
4.3. JSON 형식 응답
4.4. 리다이렉트 처리
4.5. RedirectAttributes
4.6. 뷰 컨트롤러

5. EL과 JSTL

5.1. EL(Expression Language)
5.2. JSTL(JSP Standard Tag Library)

6. EMPLOYEES 데이터 관리 MVC 프로젝트

6.1. RequestMappings
6.2. 설정파일
6.3. 컨트롤러와 뷰

5장. 파일 업로드/다운로드

1. 파일 업로드

1.1. 설정파일
1.2. 데이터베이스 테이블과 Value Object
1.3. HTML 폼 태그
1.4. 컨트롤러와 멀티파트

2. 파일 다운로드

2.1. 핸들러 메서드의 리턴 객체

3. 데이터베이스를 이용한 파일 관리

3.1. 환경 설정
3.2. 비즈니스 로직
3.3. 컨트롤러와 뷰
3.4. 실행결과
3.5. JVM 메모리 설정

6장. MyBatis

1. MyBatis 개요

2. MyBatis 연동 설정

2.1. 라이브러리 의존성 추가
2.2. 스프링 설정파일

3. Mapper XML

3.1. SQL Map
3.2. select
3.3. insert, update, delete
3.4. Parameters
3.5. SELECT 결과 매핑

4. 구현 코드

4.1. 설정파일
4.2. Model
4.3. DAO 인터페이스
4.4. Mapper XML
4.5. 서비스
4.6. 컨트롤러
4.7. 뷰
4.8. 실행 결과

5. 동적 SQL

5.1. if
5.2. choose, when, otherwise
5.3. where
5.4. set
5.5. trim
5.6. foreach

7장. 멀티 게시판 만들기

1. 멀티 게시판 분석

1.1. 요구사항 분석
1.2. 개발 환경
1.3. 테이블 명세서
1.4. 테이블 생성문

2. 프로젝트 구조

2.1. 프로젝트 생성
2.2. 요청 매핑 URL
2.3. 프로젝트 구조

3. 설정파일

3.1. pom.xml
3.2. web.xml
3.3. application-config.xml
3.4. root-context.xml
3.5. jdbc.properties
3.6. 프로젝트 실행시켜 보기

4. 멀티 게시판 소스코드

4.1. 리소스 파일
4.2. Value Object
4.3. DAO
4.4. Service
4.5. 설정파일 수정
4.6. Controller
4.7. 뷰(JSP)

5. 회원관리 기능 추가

5.1. 테이블 생성문
5.2. Value Object
5.3. DAO
5.4. Service
5.5. Controller
5.6. 뷰(JSP)
5.7. 인터셉터를 이용한 게시판 기능 제한

6. XSS 공격 대응

6.1. XSS 개요
6.2. Maven 의존성 추가
6.3. BoardController에 코드 추가
6.4. 적용 결과

부록 1. 개발 환경 구성하기

1. 개발 환경 구성

1.1. 스프링 프로젝트 관리를 위한 개발 환경
1.2. Tomcat 설치
1.3. Oracle 데이터베이스 설치

2. 스프링 프로젝트 만들기

2.1. Spring MVC Project
2.2. 프로젝트 자바 버전 변경
2.3. Spring 버전 변경
2.4. Update Project…(Alt+F5)

3. 로그 관리

3.1. 자바 로그 관리 프레임워크
3.2. SLF4J
3.3. 로그 남기기
3.4. 로그 레벨
3.5. Appender 패턴

부록 2. 프로젝트 버전관리

1. 버전관리 시스템

1.1. 버전관리 도구
1.2. 버전관리 방법
1.3. Git

2. 깃허브에 프로젝트 관리하기

2.1. 깃허브(Github)
2.2. 이클립스에서 깃허브(Github) 저장소 사용하기
2.3. 프로젝트 게시하기
2.4. Git Repository에서 프로젝트 가져오기
2.5. Git 프로젝트 관리
2.6. 변경 이력 확인 및 이전 버전 가져오기

부록 3. Spring Boot

1. 스프링 부트

2. 스프링 부트를 이용한 프로젝트 생성

2.1. 스프링 스타터 프로젝트
2.2. 프로젝트 의존성 선택

3. 스프링 부트 애플리케이션 실행하기

3.1. 프로젝트 구조
3.2. 스프링 설정파일
3.3. 컨트롤러 추가하기
3.4. 뷰 작성하기
3.5. 실행
3.6. 스프링 부트 vs. 스프링 MVC

부록 4. 알아두면 쓸모있는 기술들

1. JDBC 연결정보 암호화

1.1. 개발 보안 취약점
1.2. Jasypt 라이브러리
1.3. 연결정보 인코딩
1.4. JDBC 설정파일에 ENC() 함수 사용

2. 폼 입력값 유효성 검증

2.1. Form 객체
2.2. Form 처리 흐름
2.3. 입력 값 검증 방법
2.4. JSR 303 Validation
2.5. Custom Validation
2.6. 뷰 코드 작성

3. EMPLOYEES 입력 값 검증 예

3.1. 설정파일
3.2. JSR 303 아노테이션 이용
3.3. 실행결과
3.4. 다국어 메시지 처리
3.5. JAXBException

4. 웹소켓과 서버 푸시

4.1. 웹소켓과 서버 푸시
4.2. 웹소켓을 이용한 톰캣 메모리 모니터링
4.3. Server-Sent Events
4.4. EventSource
4.5. SSE를 이용한 톰캣 메모리 모니터링
[예스24에서 제공한 정보입니다.]

QuickMenu