logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

스프링 애플리케이션 개발

스프링 애플리케이션 개발

(예제로 배우는 스프링 4)

라비 칸트 소니 (지은이), 최광민, 이혜란 (옮긴이)
에이콘출판
35,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
알라딘 로딩중
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

스프링 애플리케이션 개발
eBook 미리보기

책 정보

· 제목 : 스프링 애플리케이션 개발 (예제로 배우는 스프링 4)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 웹 서비스/웹 프로그래밍
· ISBN : 9788960778894
· 쪽수 : 552쪽
· 출판일 : 2016-08-17

책 소개

acorn+PACKT 시리즈. 이 책은 스프링 입문서로, 스프링의 핵심 개념이라고 할 수 있는 제어역전(IoC)과 관점지향 프로그래밍(AOP), MVC 모델은 물론이고 ORM 기반의 데이터베이스 연동, 테스트, 메일 서버 연동 등 애플리케이션 개발에 필수적인 내용을 담고 있다.

목차

1장. 스프링 프레임워크 소개
__스프링 소개
____스프링의 주요 특징
____스프링의 그 밖의 특징
__스프링 프레임워크의 발전
__스프링 프레임워크 구조
____스프링 코어 컨테이너
____AOP 모듈
____데이터 접근/통합
____웹 모듈
____테스트 모듈
__스프링 프레임워크 사용의 장점
__스프링에서 애플리케이션 생성
____스프링 JAR 파일 획득
____스프링 패키지의 이해
____STS
____스프링 애플리케이션
________스프링 프로젝트 생성
________라이브러리 추가
________소스 파일 생성
________스프링 빈 설정 파일 생성
________프로그램 실행
__연습문제
__요약

2장. 제어역전
__제어역전의 이해
____컨테이너의 의미
____스프링 컨테이너
________빈
________BeanFactory
________ApplicationContext
__의존성 주입
____스프링에서의 의존성 주입
________Has-A 관계
________생성자 기반의 의존성 주입
________세터 기반 의존성 주입
____내부 빈 주입
____스프링에서의 널과 빈 문자열 값 주입
________사례 1 - 빈 문자열 주입
________사례 2 - 널 값 주입
__빈 정의 상속
____추상화 상속
__스프링의 오토와이어링
____오토와이어링 모드
________옵션 없는 오토와이어링 사용
________byName 옵션을 사용하는 오토와이어링
________byType 옵션을 사용하는 오토와이어링
________생성자를 사용하는 오토와이어링
__빈의 스코프
____싱글톤
____프로토타입
____리퀘스트
____세션
____글로벌 세션
__스프링 빈의 생명주기
____초기화
____활성화
____제거
____초기화 콜백
________org.springframework.beans.factory.InitializingBean 인터페이스 구현
________XML 설정에서의 init-method 사용
____제거 콜백
________org.springframework.beans.factory.DisposableBean 인터페이스 구현
________XML 설정에서의 destroy-method 사용
__연습문제
__요약

3장. 스프링에서의 DAO와 JDBC
__데이터베이스 개요
__DAO 디자인 패턴
____DAO 계층
__스프링을 사용하지 않는 JDBC
____샘플 코드
________프로젝트에 특정 데이터베이스 드라이버 추가
________애플리케이션의 디렉토리 구조
__스프링 JDBC 패키지
__스프링에서의 JDBC
____DataSource
____DAO 클래스의 DataSource
________애플리케이션의 디렉토리 구조
__JdbcTemplate의 의미
____스프링 빈과 같은 JdbcTemplate 객체 구성
________Spring.xml 파일
____JdbcTemplate 클래스가 제공하는 기능
________조회
________수정
________그 밖의 JdbcTemplate 연산자
____애플리케이션의 디렉토리 구조
________Employee.java 파일
________EmployeeDao.java 파일
________EmployeeDaoImpl.java 파일
__스프링 JDBC 일괄작업 작업
____애플리케이션의 디렉토리 구조
________EmployeeDaoImpl.java 파일
________HrPayrollBatchUpdate.java 파일
__저장 프로시저 호출
____SimpleJdbcCall 클래스의 사용
________저장 프로시저 호출
__연습문제
__요약

4장. 스프링과 하이버네이트 연동
__객체/관계 매핑을 사용하는 이유
__ORM과 O/RM, O/R 매핑 소개
__하이버네이트 소개
____하이버네이트 아키텍처
________설정
________세션 팩토리
________________세션
________트랜잭션
________질의
________기준
________영속성 객체
__하이버네이트와 스프링 프레임워크 통합
____예제 코드에서 사용할 샘플 데이터
____하이버네이트 통합
____스프링-하이버네이트 프로젝트에 필요한 JAR
____스프링에서 하이버네이트 SessionFactory 설정
________하이버네이트용 XML 스프링 설정
____애노테이션이 추가된 도메인 모델 클래스
____하이버네이트 세션
________Session 인터페이스 메소드
____영속성 계층 - DAO 구현
________EmployeeDao 인터페이스
________EmployeeDaoImpl 클래스
____서비스 계층 - 서비스 구현
________EmployeeService 인터페이스
________EmployeeServiceImpl 클래스
____애플리케이션의 디렉토리 구조
____애플리케이션 실행
________DBUtils 클래스
________SpringHibernateMain 클래스
________콘솔 출력
________직원 정보 테이블에 삽입된 데이터
__하이버네이트 질의 언어
____질의 인터페이스
____HQL을 이용한 데이터베이스 연산
________FROM 절
________AS 절
________SELECT 절
________WHERE 절
________ORDER BY 절
________GROUP BY 절
________명명된 매개변수 사용
________UPDATE 절
________DELETE 절
________질의를 이용한 페이지화
__하이버네이트 기준 질의 언어
____기준 인터페이스
________기준을 이용한 제약
__연습문제
__요약

5장. 스프링 웹 MVC 프레임워크
__MVC 아키텍처와 관심사의 분리
__프론트 컨트롤러 디자인 패턴
__스프링 MVC에 대한 이해
____스프링 MVC 프레임워크의 특징
____스프링 MVC의 요청 처리 흐름
__간단한 스프링 MVC 애플리케이션 개발
____새로운 메이븐 프로젝트 생성
____pom.xml에 스프링 MVC 의존관계 추가
____애플리케이션 설정
________/WEB-INF/web.xml 파일
________/WEB-INF/SpringDispatcher-servlet.xml 파일
____컨트롤러 생성 - EmployeeController
____뷰 생성 - hello.jsp
____애플리케이션 실행
__스프링 MVC의 DispatcherServlet
____배포 서술자 web.xml에서의 DispatcherServlet
____스프링 MVC 설정 파일 위치 등록
__스프링 설정 - SpringDispatcher-servlet.xml
__스프링 MVC 컨트롤러
____컨트롤러 정의를 위한 @Controller
____요청 매핑을 위한 @RequestMapping 애노테이션
________클래스 레벨의 매핑 요청
________메소드 레벨의 매핑 요청
________@RequestMapping의 속성 정보
________@RequestMapping의 메소드 매개변수
________@RequestMapping 애노테이션 메소드의 값 반환
__스프링 MVC의 ViewResolver
____뷰 기술 JSP를 위한 ViewResolver 구성
__스프링 MVC의 모델
__스프링 MVC와 하이버네이트 통합
____애플리케이션 구조
____샘플 코드와 샘플 데이터 모델
____프로젝트 구조
____pom.xml 파일
________hibernate.properties 파일
____SpringDispatcher-servlet.xml 파일
____하이버네이트 모델 클래스 - 엔티티 클래스
____DAO 계층
________EmployeeDao 인터페이스
________EmployeeDao 구현
____서비스 계층
________EmployeeService 인터페이스
________EmployeeService 구현
____스프링 MVC 컨트롤러 클래스
____뷰 페이지
________hello.jsp 페이지
________employee.jsp 페이지
________index.jsp 페이지
____애플리케이션 실행
__@ControllerAdvice 예외 처리
____GenericException 클래스
____SpringException 클래스
____EmployeeController 클래스
____hello.jsp 페이지
____exception.jsp 페이지
____애플리케이션 실행
__Spring MVC 국제화(i18n)
____프로퍼티 파일
____Spring 설정
________ReloadableResourceBundleMessageSource
________LocaleChangeInterceptor
________SessionLocaleResolver
____hello.jsp 페이지
____애플리케이션 실행
__컨트롤러를 통한 폼 핸들링
____스프링 MVC의 ModelAndView
____스프링 MVC 컨트롤러 클래스
________컨트롤러 클래스의 @ModelAttribute
________컨트롤러 클래스의 ModelMap
____뷰 페이지
____스프링 MVC 폼
____애플리케이션 실행
__연습문제
__요약

6장. 스프링 시큐리티를 이용한 보안
__스프링 시큐리티의 의미
____주요 연산
__서블릿 필터 다시보기
__보안 유스케이스
__스프링 시큐리티 설정
____스프링 시큐리티 구성
________클래스패스에 JAR 추가
________스프링 시큐리티 의존성 - pom.xml
____네임스페이스 설정
__웹 애플리케이션의 URL 접근 보호
____첫 번째 단계 - web.xml
____보안 설정 분리
__웹 애플리케이션에 로그인
____HTTP 기본 인증
____폼 기반 로그인 서비스
____로그아웃 서비스
____익명 로그인
____로그인 정보 기억
__사용자 인증
____메모리상의 정의를 이용한 사용자 인증
____데이터베이스를 이용한 사용자 인증
____패스워드 암호화
__메소드 레벨 보안
__본격적인 작업 시작
____프로젝트 구조
____web.xml에 필터 추가
____뷰 결정
____맞춤형 로그인 추가
____로그인 요청 매핑
____직원 목록 조회
____계정정보 입력
____로그아웃
____애플리케이션 실행
__연습문제
__요약

7장. 스프링을 이용한 테스트
__JUnit 4를 이용한 테스트
____JUnit 4 애노테이션
____어서트 메소드
____JUnit 4 예제
__TestNG를 이용한 테스트
____TestNG 애노테이션
____TestNG 예제
__애자일 소프트웨어 테스트
____단위 테스트
________고립 클래스의 단위 테스트
________모의 객체를 이용한 의존 클래스의 단위 테스트
________Mockito 프레임워크
____통합 테스트
__스프링 MVC 컨트롤러의 단위 테스트 생성
__스프링 MVC 테스트 프레임워크
____필요한 의존성
____스프링 테스트의 애노테이션
________@ContextConfiguration 애노테이션
________@WebAppConfiguration 애노테이션
____MockMvc
________어서션
____@RunWith(SpringJUnit4ClassRunner.class)
__연습문제
__요약

8장. JavaMail과 JMS의 스프링 연동
__스프링의 이메일 지원
____JavaMail API 소개
____JavaMail API 사용
____JavaMail을 위한 스프링 API
____스프링 메일 애플리케이션 개발
________설정 파일 - Spring.xml
________스프링의 이메일 발신 클래스
________MailerTest 클래스
__스프링 자바 메시징 서비스
____메시지와 메시징의 의미
____JMS의 의미
____JMS 애플리케이션
________JMS 구성요소
____MOM 서비스 제공자
________ActiveMQ 설정 - 메시지 큐
____스프링 빈 설정(Spring.xml)
____MessageSender.java - 스프링 JMS 템플릿
____App.java
____ActiveMQ 시작
____출력
____중계자 모니터링
____App.java 실행 시 예외
__연습문제
__요약

9장. 애노테이션을 이용한 스프링 제어역전
__애노테이션을 이용한 컨테이너 설정
____XML 대 애노테이션
____빈 관리
________스테레오 타입 애노테이션
________@Component
________@Repository
________@Service
________@Controller
________감지된 구성요소의 명명 규칙
________구성요소 이름 직접 지정
________클래스 자동 감지와 빈 정의 등록
________필터를 이용한 검색 방식 조정
________스코프 정의 - @Scope
____@Required 애노테이션을 이용한 의존관계 검사
____애노테이션 기반 의존관계 주입
____@Autowired
________프로퍼티에 @Autowired 적용
________@Qualifier
________@Resource
____생명 주기 애노테이션
__스프링의 자바 기반 설정
____@Configuration 애노테이션
____@Bean 애노테이션
________빈 선언
________빈 이름 지정
________의존관계 주입
____@Import 애노테이션
________생명주기 콜백
____@Scope 애노테이션
__스프링의 이벤트 처리
____스프링의 표준 이벤트
____스프링의 표준 이벤트 리스닝
________리스너 생성
____스프링의 이벤트 발생
________사용자정의 이벤트 생성
________이벤트 발생
________사용자정의 이벤트 처리
____스프링 이벤트의 이점
__스프링 표현 언어
____SpEL을 이용한 빈 참조
________XML 기반 설정
________애노테이션 기반 설정
____SpEL을 이용한 메소드 호출
________XML 기반 설정
________애노테이션 기반 설정
____SpEL의 연산자
________XML 기반 설정
________애노테이션 기반 설정
____SpEL의 컬렉션
________XML 기반 설정
________애노테이션 기반 설정
____SpEL의 정규표현식
________XML 기반 설정
________애노테이션 기반 설정
__텍스트 메시지와 국제화
____스프링에서의 국제화(i18n)
__연습문제
__요약

10장. 스프링의 관점지향 프로그래밍
__애플리케이션 개발에서 OOP의 문제점
__AOP 소개
__AOP 용어
____조인포인트
____어드바이스
____포인트컷
____애스펙트
____소개
____타깃
____프록시
____위빙
____위버
__AOP 구현
__스프링의 AOP 지원
__AspectJ 애노테이션 스타일
____스프링에서의 AspectJ 애노테이션 설정
____애스펙트 선언 - @AspectJ
____포인트컷 선언
____어드바이스 선언
________어드바이스 이전
________어드바이스 이후
________어드바이스 반환 후
________어드바이스 던진 후
________어드바이스 주변
____프록시
__@AspectJ 애노테이션을 사용해 스프링 애플리케이션 개발
____애플리케이션의 디렉토리 구조
____자바 파일 생성
________Employee.java
________EmployeeService.java
________LoggingAspect.java
________PayrollsSystem.java
____스프링 설정 파일 생성
____애플리케이션 실행
__XML 스키마 기반 설정
____애스펙트 선언
____포인트컷 선언
____어드바이스 선언
________어드바이스 이전
________어드바이스 이후
________어드바이스 반환 후
________어드바이스 던진 후
________어드바이스 주변
__XML 스키마 기반 설정을 이용한 스프링 애플리케이션 개발
____자바 파일 생성
________Employee.java
________EmployeeService.java
________LoggingAspect.java
________PayrollsSystem.java
____스프링 설정 파일 생성
____애플리케이션 실행
__연습문제
__요약

부록 A. 연습문제 해답

부록 B. 아파치 더비를 이용한 애플리케이션 데이터베이스 구성

부록 C. 스프링 폼 태그 라이브러리

저자소개

라비 칸트 소니 (지은이)    정보 더보기
자바 엔터프라이즈와 스프링 프레임워크 전문가며, 뱅갈로에 위치한 레바 기술원(Reva Institute of Technology)에서 정보 과학/공학 학사 학위를 받았다. 다년간 소프트웨어 개발에 참여했으며, 소프트웨어 개발부터 멀티테넌트(multitenant) 애플리케이션 설계, 기존 시스템으로의 새로운 기술 통합, 최근에는 스프링 프레임워크 관련 서적 저술까지 다양한 경험을 했다. 현재는 HCL 테크놀로지스(HCL Technologies)에서 엔지니어로 일하고 있다. 애플리케이션 설계와 구현 업무를 주로 맡았으며, 스프링 프레임워크를 이용해 은행과 인사/급여, 전자상거래 시스템의 핵심 애플리케이션을 개발했다. 소프트웨어 설계와 시스템 아키텍처, 애플리케이션 프로그래밍, 테스트 자동화를 비롯한 소프트웨어 공학의 모든 측면에 걸쳐 심도 있는 경험을 했다. 자바와 스프링, 하이버네이트(Hibernate), PostgreSQL 등을 포함한 엔터프라이즈 기술을 섭렵했으며, 부트스트랩(Bootstrap)과 제이쿼리(jQuery), 프리마커(FreeMarker), 메이븐(Maven), CAS(SSO) 보안, 깃(Git), 셀레늄 웹드라이버(Selenium WebDriver), 애자일(Agile) 방법론 등의 기술에도 능통하다. 브레인스토밍을 바탕으로 문제에 대한 독창적인 해법을 찾는 일을 즐긴다. 이메일(springframeworkbyravi@gmail.com)과 링크드인(in.linkedin.com/in/november03ravikantsoni)을 통해 그와 연락할 수 있다.
펼치기
최광민 (옮긴이)    정보 더보기
한양대를 졸업하고 삼성SDS 연구소 책임연구원을 거쳐 인공지능 스타트업 알레시오에서 뱃속 아기 얼굴을 보여주는 서비스인 베이비 페이스를 연구·개발하는 CTO로 재직 중이다. 새로운 기술을 배우고 익히는 것을 좋아하며 기술을 바탕으로 좋은 가치를 전달하는 것을 목표로 삼고 있다.
펼치기
이혜란 (옮긴이)    정보 더보기
인하대학교 산업공학 전공을 마치고 현재 삼성SDS 연구소에서 선임 연구원으로 재직 중이다. 단지 심심해서 뭐든 도전하고 시도하고 본다. 스스로가 납득할 수 있는 노력과 결과물을 위해 매 순간 최선을 다하는 사람이고 싶다.
펼치기
이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책