간편결제, 신용카드 청구할인
카카오페이 4,000원
(최대할인 4천원 / 5만원 이상 결제, 기간 중 1회)
네이버페이 1%
(네이버페이 결제 시 적립)
NH(올원페이)카드 12% (27,720원)
(3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (22,050원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (25,200원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (28,350원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (29,300원)
(최대할인 3만원 / 3만원 이상 결제)
Close

열혈강의 자바 웹 개발 워크북 : MVC 아키텍처, 마이바티스, 스프링으로 만드는 실무형 개발자 로드맵

2013년 9월 9일 이후 누적수치입니다.

판매지수 220
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
  • 저 : 엄진영
  • 출판사 : 프리렉
  • 발행 : 2014년 05월 22일
  • 쪽수 : 936
  • 제품구성 : 전1권
  • ISBN : 9788965400677
정가

35,000원

  • 31,500 (10%할인)

    1,750P (5%적립)

할인혜택
적립혜택자동적립
추가혜택
배송정보
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서(21)

  • 사은품(4)

책소개

더 자바답게, 원리로 이해하는 자바 웹 개발 워크북

이 책은 자바 웹 개발 기초에서 프레임워크를 사용하는 실무 내용까지 다루고 있습니다. 여느 도서와 다를 바 없어 보이지만 '더 자바답게' 다루고자 하였습니다. jsp에 한정한 웹 프로그래밍이 아니라 변화한 현재의 동적인 웹 개발 환경에 맞도록 서블릿/JSP를 기본으로 웹 개발에 필요한 기술들을 설명하고 있습니다. 다만, 효율적인 측면에서 진일보하는 많은 프레임워크와 관련 기술들은 초급 자바 웹 개발자와 기초가 약한 중급 개발자들을 어렵게 하고 있습니다. 이 때문에 이 책은 자바 웹 개발자들을 위한 학습 로드맵이 될 수 있도록 구성하였습니다.따라 하며 예제를 완성하기보단, 이해하고 난 뒤 예제를 풀어보는 방식으로 설명되어 있어 개념을 파악하고 나서 실습함으로 차별성을 두고 있습니다. 예제를 중심으로 실제 실무 개발 프로젝트에 사용되는 MVC 아키텍처의 이해와 활용, 마이바티스, 스프링, 그래들 등과 같은 기술을 하나씩 단계적으로 적용하여 소개하고 있으며 이를 통해 해당 기술을 도입하기 전과 도입한 후의 차이점을 확인함으로써 기술의 등장배경과 이점을 충분히 이해하여 활용할 수 있도록 하였습니다. 그저 요구에 의한 붙여넣기가 아니라 실습할 예제에 대한 이해를 먼저 하고 설계한 뒤, 활용할 수 있도록 말입니다. 차근차근 내용을 따라가다 보면 어느새 실무 개발에 필요한 기술을 자연스럽게 습득할 수 있을 것입니다.

목차

제1장 웹 애플리케이션의 이해
1.1 데스크톱 애플리케이션
1.1.1 데스크톱 애플리케이션 실습
1.1.2 데스크톱 애플리케이션의 문제점
1.2 클라이언트 서버 애플리케이션
1.2.1 계산기 서버 실행
1.2.2 계산기 클라이언트 실행
1.2.3 계산기 서버의 콘솔창 내용 확인
1.2.4 클라이언트 서버 구조의 장점
1.2.5 문제점과 개선방안
1.3 다중 클라이언트의 요청 처리
1.3.1 멀티 스레드 적용 실습
1.3.2 문제점과 개선방안
1.4 클라이언트 서버 아키텍처의 진화
1.4.1 전통적인 클라이언트 서버 아키텍처
1.4.2 개선된 클라이언트 서버 아키텍처
1.5 웹 애플리케이션 아키텍처의 특징
1.5.1 웹 애플리케이션 실습
1.5.2 웹 애플리케이션의 특징
1.5.3 문제점과 개선방안
1.6 정리

제 2장 웹 프로그래밍 기초 다지기
2.1 HTTP 프로토콜의 이해
2.1.1 HTTP 모니터링
2.1.2 HTTP 프록시 실행
2.1.3 HTTP 요청
2.1.4 HTTP 응답
2.1.5 HTTP 클라이언트 만들기
2.1.6 콘솔창의 출력 크기를 늘리거나 제한을 없애기
2.2 GET 요청
2.2.1 웹 애플리케이션 프로젝트 생성, 배치, 실행
2.2.2 GET 요청 1 웹 브라우저 주소창에 URL을 입력하는 경우
2.2.3 GET 요청 2 링크를 클릭하는 경우
2.2.4 GET 요청 3 입력폼의 method 속성값이 get인 경우
2.2.5 GET 요청의 데이터 전달 형식
2.2.6 GET 요청의 쓰임새
2.2.7 문제점과 개선방안
2.3 POST 요청
2.3.1 POST 요청의 장점 - 입력값을 URL에 노출하지 않는다.
2.3.2 POST 요청의 HTTP 프로토콜 확인
2.3.3 POST 요청의 단점 - 요청 결과를 공유할 수 없다.
2.3.4 문제점과 개선방안
2.4 파일 업로드
2.4.1 파일 업로드를 위한 form 태그 설정
2.4.2 멀티파트 방식의 POST 요청 프로토콜 분석
2.5 정리

제 3장 서블릿 프로그래밍
3.1 CGI 프로그램과 서블릿
3.1.1 CGI의 이해
3.1.2 서블릿 Servlet
3.2 서블릿, JSP vs. Java EE vs. WAS
3.2.1 Java EE 기술들
3.2.2 WAS의 이해
3.3 웹 프로젝트 준비
3.3.1 웹 프로젝트 생성
3.3.2 웹 프로젝트 폴더 구조
3.4 서블릿 만들기
3.4.1 서블릿 작성
3.4.2 javax.servlet.Servlet 인터페이스
3.4.3 서블릿 배치 정보 작성
3.4.4 서블릿 실행
3.4.5 URL과 서블릿 매핑
3.4.6 서블릿 구동 절차
3.4.7 웰컴 파일들(Welcome Files)
3.5 웹 애플리케이션 배치
3.5.1 Eclipse를 통한 자동 배치
3.5.2 톰캣 실행 환경의 임시 배치 폴더
3.5.3 운영 서버에 배치하기
3.6 GenericServlet의 사용
3.6.1 GenericServlet이 없던 시절
3.6.2 GenericServlet의 용도
3.6.3 계산기 서블릿 작성
3.6.4 ServletRequest
3.6.5 ServletResponse
3.6.6 CalculatorServlet 배치 및 테스트
3.6.7 GET 요청으로 넘어온 매개변수 값의 인코딩 설정
3.6.8 @WebServlet 애노테이션을 이용한 서블릿 배치 정보 설정
3.6.9 @WebServlet 애노테이션의 주요 속성
3.7 정리

제 4장 서블릿과 JDBC
4.1 데이터베이스에서 데이터 가져오기
4.1.1 회원 목록 조회 구현
4.1.2 서블릿 배치 정보 설정
4.1.3 '회원 목록 조회' 서블릿 테스트
4.2 HttpServlet으로 GET 요청 다루기
4.2.1 회원 목록 화면에 '신규 회원' 링크 추가
4.3 HttpServlet으로 POST 요청 다루기
4.3.1 doPost() 오버라이딩
4.3.2 회원 등록 테스트
4.4 요청 매개변수의 한글 깨짐 처리
4.4.1 한글 깨짐 현상
4.4.2 한글 입력값이 깨진 이유
4.4.3 한글 깨짐 해결책
4.4.4 GET 요청 매개변수의 한글 깨짐 해결책
4.5 리프래시
4.5.1 자동으로 회원 목록을 출력하기
4.6 리다이렉트
4.6.1 리다이렉트 실습하기
4.7 서블릿 초기화 매개변수
4.7.1 회원 정보 조회와 변경
4.7.2 회원 목록 페이지에 상세 정보 링크 추가
4.7.3 DD파일에 서블릿 초기화 매개변수 설정
4.7.4 회원 상세 정보 출력하는 서블릿 작성
4.7.5 회원 정보 변경하기
4.7.6 애노테이션으로 서블릿 초기화 매개변수 설정
4.8 컨텍스트 초기화 매개변수
4.8.1 컨텍스트 초기화 매개변수의 선언
4.8.2 컨텍스트 초기화 매개변수의 사용
4.9 필터 사용하기
4.9.1 필터
4.9.2 필터 만들기
4.9.3 필터의 구동
4.9.4 필터의 배치
4.10 정리

제 5장 MVC 아키텍처
5.1 MVC 이해하기
5.1.1 올인원 All-in-one 방식과 문제점
5.1.2글로벌 환경과 MVC 아키텍처
5.1.3 MVC 이점
5.1.4 MVC 구동 원리
5.2 뷰 컴포넌트와 JSP
5.2.1 JSP를 사용하는 이유
5.2.2 JSP 구동 원리
5.2.3 JSP의 구동 과정 확인
5.2.4 HttpJspPage 인터페이스
5.2.5 JSP 객체의 실체 분석
5.2.6 HttpJspBase 클래스의 소스
5.2.7 JSP 프리컴파일
5.3 JSP의 주요 구성 요소
5.3.1 JSP로 만드는 계산기 실습
5.3.2 템플릿 데이터
5.3.3 JSP 전용 태그 - 지시자
5.3.4 JSP 전용 태그 - 스크립트릿
5.3.5 JSP 내장 객체
5.3.6 JSP 전용 태그 - 선언문
5.3.7 JSP 전용 태그 - 표현식
5.4 서블릿에서 뷰 분리하기
5.4.1 값 객체(VO) = 데이터 수송 객체(DTO)
5.4.2 뷰 분리하기 실습
5.4.3 값 객체 생성
5.4.4 서블릿에서 뷰 관련 코드 제거
5.4.5 뷰 컴포넌트 만들기
5.4.6 회원 목록 테스트
5.5 포워딩과 인클루딩
5.5.1 포워딩과 인클루딩 실습
5.5.2 포워딩
5.2.3 인클루딩
5.6 데이터 보관소
5.6.1 ServletContext의 활용
5.6.2 HttpSession의 활용 - 로그인
5.6.3 HttpSession의 활용 - 로그인 정보 사용
5.6.4 HttpSession의 활용 - 로그아웃
5.6.5 ServletRequest의 활용
5.6.6 JspContext의 활용
5.7 JSP 액션 태그의 사용
5.7.1 JSP 액션 태그 - jsp:useBean
5.7.2 jsp:useBean 의 활용
5.7.3 JSP 액션 태그의 존재 의의
5.8 EL 사용하기
5.8.1 EL 표기법
5.8.2 JSP에서 제공하는 EL 기본 객체
5.8.3 리터럴 표현식Literals
5.8.4 값 표현식 Value Expression
5.8.5 연산자
5.8.6 예약 키워드
5.8.7 EL 활용 - 회원 정보 페이지
5.9 JSTL 사용하기
5.9.1 JSTL 라이브러리 준비
5.9.2 JSTL 주요 태그의 사용법
5.9.3 JSTL 활용 - 회원 목록 페이지에서 자바 코드 없애기
5.10 DAO 만들기
5.10.1 DAO 사용하기
5.10.2 DAO 생성
5.10.3 서블릿에서 DAO 사용하기
5.11 ServletContextListener와 객체 공유
5.11.1 ServletContextListener의 활용
5.11.2 리스너 'ServletContextListener' 만들기
5.11.3 기존의 서블릿 변경하기
5.11.4 AppInitServlet 제거
5.12 DB 커넥션풀
5.12.1 DB 커넥션풀
5.12.2 DB 커넥션풀 만들기
5.12.3 MemberDAO에 DB 커넥션풀 적용하기
5.12.4 ContextLoaderListener에서 DBConnectionPool 생성 및 DAO에 주입
5.13 DataSource와 JNDI
5.13.1 javax.sql 확장 패키지
5.13.2 DataSource
5.13.3 DataSource의 적용
5.13.4 서버에서 제공하는 DataSource 사용하기
5.14정리

제 6장 미니 MVC 프레임워크 만들기
6.1 프런트 컨트롤러의 도입
6.1.1 프런트 컨트롤러 패턴
6.1.2 프런트 컨트롤러를 통해 회원 목록 출력
6.1.3 프런트 컨트롤러 만들기
6.1.4 MemberListServlet을 페이지 컨트롤러로 만들기
6.1.5 프런트 컨트롤러를 통한 회원 목록 페이지 요청
6.1.6 MemberAddServlet을 페이지 컨트롤러로 만들기
6.1.7 회원 등록 테스트
6.2 페이지 컨트롤러의 진화
6.2.1 프런트 컨트롤러와 페이지 컨트롤러의 호출 규칙 정의
6.2.2 호출 규칙 정의
6.2.3 페이지 컨트롤러를 위한 인터페이스 정의
6.2.4 페이지 컨트롤러 'MemberListServlet'을 일반 클래스로 전환
6.2.5 프런트 컨트롤러 변경
6.2.6 회원 등록 페이지 컨트롤러에 Controller 규칙 적용하기
6.2.7 회원 등록 요청을 처리하기 위해 DispatcherServlet 변경
6.2.8 회원 등록 페이지의 실행 테스트
6.3 DI를 이용한 빈 의존성 관리
6.3.1 의존 객체의 관리
6.3.2 의존 객체를 외부에서 주입
6.3.3 MemberDao와 DataSource
6.3.4 MemberListController에 MemberDao 주입
6.3.5 페이지 컨트롤러 객체들을 준비
6.3.6 프런트 컨트롤러의 변경
6.3.7 인터페이스를 활용하여 공급처를 다변화 하자
6.3.8 MemberDao 인터페이스 정의
6.4 리플랙션 API를 이용하여 프런트 컨트롤러 개선하기
6.4.1 신규 회원 정보 추가 자동화
6.4.2 DataBinding 인터페이스 정의
6.4.3 페이지 컨트롤러의 DataBinding 구현
6.4.4 프런트 컨트롤러의 변경
6.4.5 ServletRequestDataBinder 클래스 생성
6.4.6 리플랙션 API
6.5 프로퍼티를 이용한 객체 관리
6.5.1 실습 시나리오
6.5.2 프로퍼티 파일 작성
6.5.3 ApplicationContext 클래스
6.5.4 ContextLoaderListener 변경
6.5.5 web.xml 파일에 프로퍼티 경로 정보 설정
6.5.6 DispatcherServlet 변경
6.6 애노테이션을 이용한 객체 관리
6.6.1 애노테이션 활용
6.6.2 애노테이션 정의
6.6.3 애노테이션 적용
6.6.4 프로퍼티 파일 변경
6.6.5 ApplicationContext 변경
6.6.6 Reflections 라이브러리 준비
6.7 실력 향상 훈련
6.7.1 데이터베이스 모델
6.7.2 프로젝트 관리 시스템
6.7.3 훈련 1 프로젝트 목록 페이지 구현
6.7.4 훈련 2 프로젝트 등록 구현
6.7.5 훈련 3 프로젝트 변경 구현
6.7.6 훈련 4 프로젝트 삭제 구현
6.7.7 메뉴의 추가
6.8 정리

제 7장 퍼시스턴스 프레임워크의 도입
7.1 mybatis 소개
7.1.1 mybatis 사용하기
7.1.2 mybatis 사용 준비
7.2 mybatis 적용
7.2.1 mybatis 구동하기
7.2.2 mybatis 프레임워크의 핵심 컴포넌트
7.2.3 DAO에서 SqlSessionFactory 사용
7.2.4 SQL 맵퍼 파일 작성
7.2.5 ApplicationContext 변경
7.2.6 SqlSessionFactory 객체 준비
7.2.6 mybatis 설정 파일 준비
7.2.7 db.properties 파일 작성
7.3 SQL 맵퍼 파일
7.3.1 SQL 맵퍼 파일 작성
7.3.2 mybatis의 SELECT 결과 캐싱
7.3.3 SQL 문의 입력 매개변수 처리
7.4 mybatis 설정 파일
7.5 로그 출력 켜기
7.5.1 mybatis 설정 파일에 로그 설정 추가
7.5.2 로그 출력 테스트
7.6 동적 SQL의 사용
7.6.1 동적 SQL 엘리먼트
7.6.2 프로젝트 목록 페이지에 정렬 링크 추가
7.6.3 프로젝트 목록 컨트롤러 변경
7.6.4 ProjectDao 인터페이스 변경
7.6.5 set 엘리먼트의 활용
7.6.6 MySqlProjectDao 클래스 변경
7.6.7 동적으로 생성된 UPDATE 문 확인
7.7 실력 향상 훈련
7.7.1 훈련. 회원 관리에 mybatis 적용
7.8 정리

제 8장 스프링 IoC 컨테이너
8.1 스프링 IoC 컨테이너 사용 준비
8.1.1 의존성 주입(DI)과 역제어(IoC)
8.1.2 Gradle 프로젝트 준비
8.1.3 Gradle 프로젝트를 웹 프로젝트로 만들기
8.1.4 스프링 프레임워크 관련 라이브러리 가져오기
8.1.5 실습 프로젝트 정리
8.1.6 Gradle 빌드
8.2 Gradle 빌드 파일 분석
8.2.1 Gradle 플러그인이란?
8.2.2 Gradle Java 플러그인
8.2.3 jar 작업과 제어 속성 - jar {}
8.2.4 의존 라이브러리를 가져올 저장소 설정 - repositories {}
8.2.5 프로젝트에서 사용할 의존 라이브러리 지정 - dependencies {}
8.2.6 테스트 정보 설정 - test {}
8.2.7 아카이브 파일(.jar) 배포 - uploadArchives {}
8.2.8 Gradle Eclipse 플러그인
8.3 XML 기반 빈 관리 컨테이너
8.3.1 ApplicationContext 인터페이스
8.3.2 스프링 빈 컨테이너 ClassPathXmlApplicationContext 사용
8.3.3 name 속성으로 빈 이름 지정하기
8.3.4 익명 빈 선언
8.4 생성자와 프로퍼티 설정
8.4.1 호출할 생성자 설정
8.4.2 프로퍼티 설정
8.4.3 bean 의 속성을 이용하여 생성자 및 프로퍼티 설정하기
8.5 의존 객체 주입
8.5.1 의존 객체 설정하기
8.5.2 개별 인스턴스 주입하기
8.6 컬렉션 값 주입
8.6.1 배열 프로퍼티의 값 주입
8.6.2 Map과 Properties 값 주입
8.7 팩토리 메서드와 팩토리 빈
8.7.1 스태틱 팩토리 메서드를 이용한 간접 객체 생성
8.7.2 인스턴스 팩토리 메서드를 이용한 간접 객체 생성
8.7.3 스프링 규칙에 따라서 팩토리 빈 만들기
8.8 빈의 범위 설정
8.8.1 싱글톤과 프로토타입
8.9 날짜 값 주입
8.9.1 SimpleDateFormat 클래스와 인스턴스 팩토리 메서드 활용
8.9.2 커스텀 프로퍼티 에디터 활용
8.10 애노테이션을 이용한 의존 객체 자동 주입
8.10.1 @Autowired 적용
8.10.2 @Autowired의 required 속성
8.10.3 @Qualifier로 주입할 객체를 지정하기
8.10.4 @Autowired + @Qualifier = @Resource
8.11 빈 자동 등록
8.11.1 @Component가 붙은 클래스를 자동으로 찾기
8.12 Gradle 적용
8.12.1 Gradle 적용 준비
8.12.2 Gradle 설정에 의존 라이브러리 추가
8.12.3 Gradle 빌드
8.12.4 톰캣 서버에 웹 애플리케이션 배치 및 실행
8.13 스프링 IoC 컨테이너 적용
8.13.1 mybatis 관련 의존 라이브러리 추가
8.13.2 Gradle 빌드
8.14 정리

부록

저자소개

생년월일 -
출생지 -
출간도서 0종
판매수 0권

1984년에 구입한 MSX 컴퓨터를 통해 베이직을 처음 접한후, 전자계산학을 전공하면서 본격적으로 프로그래밍 세계에 입문합니다. 1995년 현대전자에서 주최한 전국대학생/대학원생 공모전에서 웹 브라우저와 HTML 에디터를 출품하여 동상으로 입상하면서 웹 프로그래밍 세계에 빠지게 되었습니다.

2000년 닷컴 광풍이 불던 때 잠깐 벤처에 도전했다가 실패한 후, 현재는 개발과 강의를 넘나들고 있습니다. 개발이 그리우면 프로젝트에 뛰어들고, 여기서 겪었던 실무 개발 경험을 말하고 싶어 입이 근질거리면 다시 강의를 할 수밖에 없는 천상 개발자이며 강사인 사람

펼쳐보기

이 상품의 시리즈

열혈강의 시리즈 (프리렉)(총 45권 / 현재구매 가능도서 22권)

펼쳐보기

이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

    리뷰

    0.0 (총 0건)

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    7.6

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용