스프링 인 액션 (스프링 5의 강력한 기능과 생산성을 활용한 웹 애플리케이션 개발 | 전면개정판 5 판)

스프링 인 액션 (스프링 5의 강력한 기능과 생산성을 활용한 웹 애플리케이션 개발 | 전면개정판 5 판)

$40.21
Description
리액티브 프로그래밍 지원을 강화한 스프링 5의 모든 것을 탐구한다!
이 책에서는 스프링 5와 스프링 부트 2를 사용해서 애플리케이션을 개발하는 데 필요한 여러 핵심 기능을 알려줍니다. 스프링 5에서는 특히 새로운 리액티브 웹 프레임워크인 WebFlux를 중점적으로 다룹니다. 개발자들은 더 쉽고 확장성이 좋은 웹 애플리케이션을 개발할 수 있습니다. 《스프링 인 액션(제5판)》에서는 스프링 최신 버전의 모든 것을 다루고 있으므로 개발자들이 스프링의 새로운 진면목을 파악하는 데 도움이 될 것입니다.
저자

크레이그월즈

피보탈(Pivotal)의메인엔지니어다.스프링프레임워크의열성적인후원자로로컬사용자그룹및콘퍼런스에서연설등의활동과함께스프링관련집필에도힘을쏟고있다.앞으로디즈니월드나디즈니랜드여행을계획하고있으며,평소에는아내와두딸,두마리의새,세마리의개와함께시간을보내고있다.

목차

1.
PART1스프링기초1
CHAPTER1스프링시작하기3
1.1스프링이란?4
1.2스프링애플리케이션초기설정하기7
1.2.1STS를사용해서스프링프로젝트초기설정하기8
1.2.2스프링프로젝트구조살펴보기12
1.3스프링애플리케이션작성하기18
1.3.1웹요청처리하기19
1.3.2뷰정의하기20
1.3.3컨트롤러테스트하기22
1.3.4애플리케이션빌드하고실행하기24
1.3.5스프링부트DevTools알아보기26
1.3.6리뷰하기28
1.4스프링살펴보기30
1.4.1핵심스프링프레임워크30
1.4.2스프링부트31
1.4.3스프링데이터31
1.4.4스프링시큐리티32
1.4.5스프링통합과배치32
1.4.6스프링클라우드32
요약33

CHAPTER2웹애플리케이션개발하기34
2.1정보보여주기35
2.1.1도메인설정하기36
2.1.2컨트롤러클래스생성하기41
2.1.3뷰디자인하기45
2.2폼제출처리하기51
2.3폼입력유효성검사하기57
2.3.1유효성검사규칙선언하기58
2.3.2폼과바인딩될때유효성검사수행하기60
2.3.3유효성검사에러보여주기62
2.4뷰컨트롤러로작업하기65
2.5뷰템플릿라이브러리선택하기68
2.5.1템플릿캐싱70
요약71

CHAPTER3데이터로작업하기72
3.1JDBC를사용해서데이터읽고쓰기73
3.1.1퍼시스턴스를고려한도메인객체수정하기75
3.1.2JdbcTemplate사용하기76
3.1.3스키마정의하고데이터추가하기84
3.1.4타코와주문데이터추가하기87
3.2스프링데이터JPA를사용해서데이터저장하고사용하기103
3.2.1스프링데이터JPA를프로젝트에추가하기103
3.2.2도메인객체에애노테이션추가하기104
3.2.3JPA리퍼지터리선언하기108
3.2.4JPA리퍼지터리커스터마이징하기112
요약115

CHAPTER4스프링시큐리티116
4.1스프링시큐리티활성화하기117
4.2스프링시큐리티구성하기120
4.2.1인메모리사용자스토어123
4.2.2JDBC기반의사용자스토어125
4.2.3LDAP기반사용자스토어132
4.2.4사용자인증의커스터마이징138
4.3웹요청보안처리하기148
4.3.1웹요청보안처리하기148
4.3.2커스텀로그인페이지생성하기152
4.3.3로그아웃하기155
4.3.4CSRF공격방어하기155
4.4사용자인지하기158
4.5각폼에로그아웃버튼추가하고사용자정보보여주기164
요약166

CHAPTER5구성속성사용하기167
5.1자동-구성세부조정하기168
5.1.1스프링환경추상화이해하기169
5.1.2데이터소스구성하기171
5.1.3내장서버구성하기172
5.1.4로깅구성하기174
5.1.5다른속성의값가져오기176
5.2우리의구성속성생성하기176
5.2.1구성속성홀더정의하기180
5.2.2구성속성메타데이터선언하기182
5.3프로파일사용해서구성하기185
5.3.1프로파일특정속성정의하기186
5.3.2프로파일활성화하기188
5.3.3프로파일을사용해서조건별로빈생성하기189
요약191

PART2통합된스프링193
CHAPTER6REST서비스생성하기195
6.1REST컨트롤러작성하기196
6.1.1서버에서데이터가져오기198
6.1.2서버에데이터전송하기204
6.1.3서버의데이터변경하기205
6.1.4서버에서데이터삭제하기208
6.2하이퍼미디어사용하기209
6.2.1하이퍼링크추가하기212
6.2.2리소스어셈블러생성하기215
6.2.3embedded관계이름짓기220
6.3데이터기반서비스활성화하기221
6.3.1리소스경로와관계이름조정하기224
6.3.2페이징과정렬226
6.3.3커스텀엔드포인트추가하기228
6.3.4커스텀하이퍼링크를스프링데이터엔드포인트에추가하기230
6.4앵귤러IDE이클립스플러그인설치와프로젝트빌드및실행하기231
6.4.1앵귤러IDE이클립스플러그인설치하기232
6.4.2타코클라우드애플리케이션빌드하고실행하기237
요약244

CHAPTER7REST서비스사용하기245
7.1RestTemplate으로REST엔드포인트사용하기246
7.1.1리소스가져오기(GET)248
7.1.2리소스쓰기(PUT)250
7.1.3리소스삭제하기(DELETE)250
7.1.4리소스데이터추가하기(POST)251
7.2Traverson으로RESTAPI사용하기252
7.3RESTAPI클라이언트가추가된타코클라우드애플리케이션빌드및실행하기255
요약258

CHAPTER8비동기메시지전송하기259
8.1JMS로메시지전송하기260
8.1.1JMS설정하기260
8.1.2JmsTemplate을사용해서메시지전송하기263
8.1.3JMS메시지수신하기271
8.2RabbitMQ와AMQP사용하기276
8.2.1RabbitMQ를스프링에추가하기277
8.2.2RabbitTemplate을사용해서메시지전송하기278
8.2.3RabbitMQ로부터메시지수신하기283
8.3카프카사용하기288
8.3.1카프카사용을위해스프링설정하기289
8.3.2KafkaTemplate을사용해서메시지전송하기290
8.3.3카프카리스너작성하기292
8.4비동기메시지전송과수신기능이추가된타코클라우드애플리케이션빌드및실행하기294
요약299

CHAPTER9스프링통합하기300
9.1간단한통합플로우선언하기301
9.1.1XML을사용해서통합플로우정의하기303
9.1.2Java로통합플로우구성하기305
9.1.3스프링통합의DSL구성사용하기307
9.2스프링통합의컴포넌트살펴보기308
9.2.1메시지채널310
9.2.2필터312
9.2.3변환기313
9.2.4라우터314
9.2.5분배기316
9.2.6서비스액티베이터319
9.2.7게이트웨이321
9.2.8채널어댑터322
9.2.9엔드포인트모듈324
9.3이메일통합플로우생성하기326
9.4타코클라우드애플리케이션빌드및실행하기332
요약336

PART3리액티브스프링337
CHAPTER10리액터개요339
10.1리액티브프로그래밍이해하기340
10.1.1리액티브스트림정의하기342
10.2리액터시작하기344
10.2.1리액티브플로우의다이어그램345
10.2.2리액터의존성추가하기346
10.3리액티브오퍼레이션적용하기347
10.3.1리액티브타입생성하기348
10.3.2리액티브타입조합하기353
10.3.3리액티브스트림의변환과필터링357
10.3.4리액티브타입에로직오퍼레이션수행하기368
10.4리액티브오퍼레이션테스트프로젝트빌드및실행하기370
요약372

CHAPTER11리액티브API개발하기373
11.1스프링WebFlux사용하기373
11.1.1스프링WebFlux개요375
11.1.2리액티브컨트롤러작성하기377
11.2함수형요청핸들러정의하기382
11.3리액티브컨트롤러테스트하기386
11.3.1GET요청테스트하기386
11.3.2POST요청테스트하기389
11.3.3실행중인서버로테스트하기391
11.4RESTAPI를리액티브하게사용하기392
11.4.1리소스얻기(GET)393
11.4.2리소스전송하기396
11.4.3리소스삭제하기397
11.4.4에러처리하기397
11.4.5요청교환하기399
11.5리액티브웹API보안401
11.5.1리액티브웹보안구성하기402
11.5.2리액티브사용자명세서비스구성하기404
요약406

CHAPTER12리액티브데이터퍼시스턴스407
12.1스프링데이터의리액티브개념이해하기408
12.1.1스프링데이터리액티브개요409
12.1.2리액티브와리액티브가아닌타입간의변환409
12.1.3리액티브리퍼지터리개발하기412
12.2리액티브카산드라리퍼지터리사용하기412
12.2.1스프링데이터카산드라활성화하기413
12.2.2카산드라데이터모델링이해하기416
12.2.3카산드라퍼시스턴스의도메인타입매핑416
12.2.4리액티브카산드라리퍼지터리작성하기423
12.3리액티브몽고DB리퍼지터리작성하기426
12.3.1스프링데이터몽고DB활성화하기427
12.3.2도메인타입을문서로매핑하기429
12.3.3리액티브몽고DB리퍼지터리인터페이스작성하기432
요약436

PART4클라우드네이티브스프링437
CHAPTER13서비스탐구하기439
13.1마이크로서비스이해하기440
13.2서비스레지스트리설정하기442
13.2.1유레카구성하기447
13.2.2유레카확장하기450
13.3서비스등록하고찾기452
13.3.1유레카클라이언트속성구성하기453
13.3.2서비스사용하기455
13.4마이크로서비스관련프로젝트의빌드및실행하기461
요약467

CHAPTER14클라우드구성관리468
14.1구성공유하기469
14.2구성서버실행하기470
14.2.1구성서버활성화하기471
14.2.2Git리퍼지터리에구성속성저장하기476
14.3공유되는구성데이터사용하기480
14.4애플리케이션이나프로파일에특정된속성제공하기482
14.4.1애플리케이션에특정된속성제공하기482
14.4.2프로파일로부터속성제공하기484
14.5구성속성들의보안유지하기486
14.5.1Git백엔드의속성들암호화하기486
14.5.2Vault에보안속성저장하기490
14.6실시간으로구성속성리프레시하기495
14.6.1구성속성을수동으로리프레시하기496
14.6.2구성속성을자동으로리프레시하기499
14.7구성서버와구성클라이언트프로젝트의빌드및실

출판사 서평

한층더진화한스프링5로웹애플리케이션개발에날개를달다!
스프링WebFlux등리액티브프로그래밍지원을강화한스프링5의모든것을탐구한다!

스프링프레임워크는자바개발자들을더편하게해줍니다.스프링5의새로운기능들은마이크로서비스와리액티브애플리케이션개발과같은현대적애플리케이션설계시에생산성을높여줍니다.이제는스프링부트가완전히통합되어복잡한프로젝트일지라도최소한의구성코드로시작할수있습니다.또한,한층업그레이드된WebFlux프레임워크는기본적으로리액티브애플리케이션을지원합니다.

《스프링인액션(제5판)》은스프링의핵심기능을명쾌하게알려줍니다.이책을통해여러분은데이터베이스가지원되는웹애플리케이션을점진적으로만들어볼것입니다.그러면서리액티브프로그래밍,마이크로서비스,서비스발견,RestfulAPI,애플리케이션배포,모범사례를배우게될것입니다.또한,원서의오류를모두바로잡고부족한부분을보강하는데심혈을기울였습니다.스프링입문자와스프링5로레벨업하려는기존스프링사용자모두에게이책은안성맞춤입니다!

이책의주요내용
■리액티브애플리케이션개발하기
■웹애플리케이션과RESTful웹서비스를위한스프링MVC사용
■스프링보안을사용한애플리케이션보안처리
■스프링5의핵심파악