로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

expert one-on-one J2EE 설계와 개발

   
지은이 Rod Johnson/자바 유저스 번역팀   |   출판사 정보문화사  |   발행일 2004년 01월 15일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 35,000원31,500원 10%
마일리지 5% 1,750원
발행일 2004-01-15
ISBN 8956741530 | 9788956741536
기타정보 번역서 | 867쪽
예상출고일
배송비 무료배송
   
프로그래밍언어
종합지수 9p 245 위
   
이 책의 원서
  Expert One-on-One J2EE Design and Development
WROX PRESS | Rod Johnson
 

실제로 J2EE 작업을 할 수 있는 방법을 가르쳐 주는 길잡이!
실제로 J2EE를 사용한 결과는 대개 기대에 미치지 못했다. 애플리케이션이 느리거나 지나치게 복잡하고, 개발하는 데 너무 오래 걸리는 경우가 많다. 필자는 이 문제가 J2EE 자체가 아니라 그것을 잘못 사용하는 데 있다고 생각한다. 많은 J2EE 서적은 이론적으로는 훌륭하지만, 대개 실제에서는 실패하거나 실질적인 비즈니스 가치가 없는 접근 방법들을 주장한다.

이 책은 실제로 J2EE 작업을 할 수 있는 방법을 가르쳐 주는 길잡이가 될 것이다. J2EE 스펙에 대한 상세한 지식뿐만 아니라, 성공적인 대규모의 J2EE 애플리케이션을 설계하고, 실패한 프로젝트를 구해내는 필자의 경험이 실려 있다. 또한 이 책은 J2EE의 공통적인 문제들을 해결하고 J2EE 프로젝트에서 자주 저지르게 되는 실수를 피할 수 있게 도와줄 것이다. 그리고 한정된 예산으로 가장 간단한 솔루션을 제시간에 구축할 수 있도록 하기 위해 J2EE 서비스의 복잡성과 API를 전체적으로 소개하고, 실제적이고 실용적인 접근 방법을 취할 것이다. 즉, 실제로 결과를 산출하는 데 실패해온 J2EE 관행들을 지적하고, 그 대신 효과적이고 증명된 방법들을 제시한다.

소개

J2EE 통념들
이 책은 무엇이 다른가?
접근 방법
누구를 위한 책인가?
이 책의 목표
이 책에서 다루는 내용
전제된 지식
추천 도서
이 책을 활용하기 위해 필요한 것들
표기 형식
소스 코드 다운로드
정오표

제1장 J2EE 아키텍처

엔터프라이즈 아키텍처의 목표
분산 아키텍처를 사용해야 하는지 결정하기
J2EE 설계에서 새롭게 고려해야 할 사항
언제 EJB를 사용하는가?
EJB를 사용한 구현
EJB 사용에 대한 불확실한 이유
부득이하게 EJB를 사용해야 하는 이유
사례별로 검토해본 EJB를 사용하는 이유
데이터에 접근하기
J2EE 데이터 접근 통념들
상태 관리
J2EE 아키텍처
공통적인 개념들
비분산 아키텍처
분산 아키텍처
웹 티어 설계
MVC(Model View Controller) 아키텍처 패턴
웹 티어와 비즈니스 객체 사이의 연결성
이식성을 위한 애플리케이션 설계하기
요약

제2장 J2EE 프로젝트: 선택과 위험

스펙 버전에 따른 정책 수립하기
애플리케이션 서버 선택하기
애플리케이션 서버를 언제 선택하는가?
필요조건 정의하기
기준 평가하기
선택 프로세스
애플리케이션 서버를 선택할 때 자주 실수하는 것들
“Neat Technology” 함정
언제 J2EE를 보완하는 대체 기술들을 사용하는가?
이식성 문제
이식성이란 무엇인가?
이식성에 대한 실제적인 접근법
스테이징 환경과 릴리즈 관리
팀 구성하기
팀 구조
개발 툴 선택하기
비쥬얼 모델링 툴
IDE
빌드 유틸리티
코드 생성기
버전 컨트롤
위험을 인식하고 완화시키기

제3장 J2EE 애플리케이션 테스트

테스트로 얻을 수 있는 것은 무엇인가?
정의
정확성 테스트
테스트를 위한 XP 접근법
테스트 케이스 작성하기
단위 테스트
테스트 전략이 코드 작성 방식에 영향을 끼쳐야 하는가?
통합 및 수용 테스트
비즈니스 객체들을 테스트하기
웹 인터페이스 테스트
설계 함의(implication)
성능과 확장성 테스트
EJB들과 다른 비즈니스 객체들의 부하 테스트
웹 인터페이스에 대한 부하 테스트
테스트 자동화
테스트에 대한 보충적 접근
요약

제4장 J2EE 프로젝트의 설계 기술 및 코딩 표준

J2EE 애플리케이션을 위한 객체 지향 설계 권고안
인터페이스를 통해 약하게 결합하기
구체적인 상속을 위해 Object Composition을 택하라
Template Method 설계 패턴
Strategy 설계 패턴
확장성을 얻기 위한 콜백의 사용
Observer 설계 패턴
통합 메소드 파라미터를 고려하라
예외 처리 - 체크된, 또는 체크되지 않는 예외들
리플렉션 이용하기
유연성의 달성을 위해 자바빈즈 사용하기
애플리케이션 레지스트리를 이용하여 싱글톤의 확산을 피하라
리팩토링
코딩 표준
표준으로부터 시작하라
책임의 할당
코드 중복을 피하라
리터럴 상수를 피하라
가시성과 범위 제한
final 키워드의 사용
진단에 유용하도록 toString() 메소드 구현하기
방어용의 코딩 습관
public 메소드 원형에서, 컬렉션보다 배열을 선호하라
코드의 문서화
로깅
바퀴를 다시 발명하지 않는 이유와 방법
도와주세요! API 오버로드
프레임워크의 사용
요약

제5장 예제 애플리케이션의 필요사항

개요
사용자의 종류
일반 인터넷 사용자 그룹
박스오피스 직원들
관리자 그룹
설정
기회의 제한
배송 스케줄
인터넷 사용자 인터페이스
기본적인 일의 흐름
에러 다루기
애플리케이션 화면
박스오피스 사용자 인터페이스
무기능적 필요사항
하드웨어와 소프트웨어의 환경
요약

제6장 J2EE 기술의 적용

언제 분산 아키텍처가 적절한가?
분산 애플리케이션과 확장성
분산 애플리케이션과 신뢰성
확장적이고 강건한 아키텍처
예제 애플리케이션을 위한 고수준의 아키텍처
EJB를 언제 사용할지 결정하기
분산 아키텍처의 구현을 위한 EJB 사용
트랜잭션 다루기
EJB와 권한
EJB와 멀티 스레딩
선언적 구성 관리
EJB의 단점
예제 애플리케이션에서의 EJB
EJB를 어떻게 사용할지 결정하기
EJB는 무엇을 해야 할까?
언제 로컬 또는 원격 인터페이스를 사용할 것인가?
같은 애플리케이션에서 EJB 사용하기
JMS 비동기 호출을 언제 사용할지 결정하기
메시지 드리븐 미들웨어(MOM)와 JMS
메시지 생성하기
메시지 소비하기
비동기식 호출을 사용하기 위한 시기
단순 애플리케이션에서의 JMS
인증과 권한 부여
표준 보안 인프라스트럭처
서버 구현
XML을 언제 사용할지 결정하기
J2EE 애플리케이션에서 XSLT 사용하기
XML의 깊이 있는 사용
자바빈즈와 XML 사이의 변환
미래의 J2EE와 XML
예제 애플리케이션에서 XML
성능 향상을 위한 캐싱
캐싱 옵션들
예제 애플리케이션을 위한 캐싱 전략
요약

제7장 J2EE 애플리케이션의 데이터 접근

데이터 접근 목표
비즈니스 로직과 영속성 로직
객체 기반 모델링과 데이터베이스 기반 모델링: 철학적 논쟁
O/R 매핑과 임피던스 불일치
데이터 접근 객체(DAO) 패턴
관계형 데이터베이스의 운영
참조 무결성
저장 프로시저, 트리거, 뷰
RDBMS 성능 이슈
이식성과 성능
분산 애플리케이션에서의 데이터 교환
Value 객체 J2EE 패턴
일반적인 value 객체
JDBC 열집합을 이용하는 연결되지 않은 데이터 접근
일반적인 데이터 접근 이슈
트랜잭션 분리
배제적 잠금과 최적 잠금
주요키 생성
데이터 접근 수행지
J2EE 티어에서의 데이터 접근
EJB를 사용하지 않은 미들 티어에서의 데이터 접근
웹 티어에서의 데이터 접근
요약
예제 애플리케이션의 데이터 모델링

제8장 엔티티 빈즈를 이용한 데이터 접근

엔티티 빈 개념
정의
엔티티 빈즈를 어떻게 사용해야 할까?
CMP vs BMP
EJB 2.0에서의 엔티티 빈즈
로컬 인터페이스
홈 인터페이스 비즈니스 메소드
EJB 2.0 CMP
엔티티 빈 캐시
엔티티 빈 잠금 전략
Read-only와 Read-mostly 엔티티
트랜잭션 엔티티 캐시
엔티티 빈 성능
엔티티 빈즈를 위한 툴 지원
요약

제9장 실용 데이터 접근

데이터 접근 기술 선택
SQL 기반 기술
O/R 매핑 기술
예제 애플리케이션을 위한 데이터 접근 전략 고르기
JDBC 세부사항
올바른 예외 처리
SQL 예외에서 정보 추출하기
준비된 문장 문제
일반적인 JDBC 추상 프레임워크
동기
목적
예외 처리하기
추상의 두 수준
프레임워크의 JDBC 워크플로우 컨트롤과 에러 처리
고급 추상: 자바 객체로서의 RDBMS 오퍼레이션 모델링
JDBC 추상 요약
예제 애플리케이션에서의 DAO 패턴 구현
요약

제10장 세션 빈즈

무상태 세션 빈즈의 사용
무상태 세션 빈즈의 장점
무상태 세션 빈즈와 내부 상태
무상태 세션 빈 풀링의 내포 의미
상태유지 세션 빈즈의 사용
상태유지 세션 빈즈를 왜 사용하지 않는가?
상태유지 세션 빈즈를 언제 사용할 것인가?
세션 동기화
동시 호출로부터 상태유지 세션 빈즈 보호하기
SLSB의 상태유지 기능을 얻기 위한 패턴
컨트롤러처럼 상태유지 세션 빈 사용하기
세션 빈즈에 적용 가능한 J2EE 설계 패턴
분산 J2EE 애플리케이션에서의 Session Façade 패턴
EJB Command 설계 패턴
세션 빈 구현 이슈
EJB에서의 에러
CMT를 사용하는 EJB에 대한 트랜잭션 속성
비즈니스 메소드 인터페이스 “패턴”
예제 애플리케이션에서의 세션 빈즈
요약

제11장 인프라스트럭처와 애플리케이션의 구현

인프라스트럭처
견고한 인프라스트럭처의 목적
애플리케이션 컴포넌트들을 설정하기 위한 프레임워크의 사용
API의 복잡성 다루기
비즈니스 로직의 구현
예제 애플리케이션의 구현
요약

제12장 웹 티어 MVC 설계

웹 개발의 기회
자바 웹 개발에서 배울 교훈
Servlet-Only 솔루션의 결점
JSP 약속 그리고 시도
손익 차감(Striking a balance)
웹 티어 설계 목표
깔끔한(clean) 웹 티어
얇은(thin) 웹 티어
MVC 컨셉과 프론트 컨트롤러 J2EE 패턴
개념
패턴 변형
구현의 목표들
웹 애플리케이션 프레임워크
공통 개념들
사용할만한 프레임워크
전체 애플리케이션 아키텍처 속의 웹 애플리케이션 프레임워크의 통합
애플리케이션 예제에서 사용된 웹 애플리케이션 프레임워크
설계 목표
기본 MVC 제어 흐름
워크플로어 세분
예제
웹 티어 세션의 관리
J2EE 서버에 의하여 관리되는 세션 상태
브라우저에서 잡고 있는 세션 상태
사용자 입력의 처리
데이터 바인딩과 재전송시 입력 에러의 디스플레이
데이터 검증
예제 애플리케이션에서의 웹 티어 구현
개요
자리 예약 요청의 처리
구현 개요
요약

제13장 웹 티어의 뷰

컨트롤러와 뷰의 분리
예약 페이지를 위한 뷰의 구성
요구 정보와 필요한 포맷
모델 뒤의 뷰
모델의 원리
JSP 뷰
회피
JSP 페이지 안에서 자바빈즈를 사용하는 법
JSP 커스텀 태그
JSP 사용의 가이드라인
앞으로 JSP 2.0에 내포될 것
JSP 뷰의 예제
JSP
템플릿 전용 언어
공통의 개념
WebMacro
Velocity
FreeMarker
XSLT
XSLT를 사용할 때
XSL로부터 무엇을 원하는가?
뷰 안에서 XSLT 사용 방법
"순수한" XSLT 접근을 사용하여 예제의 구현
마크업 생성에 양자택일의 접근
HTML 생성 라이브러리
XMLC
이진 내용의 생성
iText와 함께 PDF의 생성
뷰 구성과 페이지 레이아웃
요약

제14장 패키징과 애플리케이션 배치

패키징
배치 단위
확장된 배치 단위
J2EE 클래스 로딩 이해하기
예제 애플리케이션 패키지하기
애플리케이션 배치: 일반 개념
애플리케이션을 실행하는 서버 구성하기
애플리케이션을 위한 독자적인 디플로이먼트 디스크립터 작성하기
애플리케이션 배치하기
예제 애플리케이션의 배치 파라미터들
JBoss 3.0에서 예제 애플리케이션 배치하기
JBoss 디렉토리 구조 이해하기
예제 애플리케이션이 실행되는 JBoss 서버 구성하기
예제 애플리케이션의 JBoss 디플로이먼트 디스크립터 작성하기
애플리케이션 배치하기
요약

제15장 성능 테스팅과 애플리케이션의 튜닝

전략적인 이슈와 정의
성능과 확장성
성능과 확장성의 명확한 목표 세우기
설계 vs 코드 최적화
성능과 작업 처리량 테스트를 위한 도구
벤치마크의 준비
웹 테스트 툴들
웹이 아닌 것을 테스트하기 위한 테스팅 툴
성능 혹은 확장성 문제 찾아내기
레이어에서의 테스팅
프로파일링 툴
성능 혹은 확장성 문제 처리하기
서버 선택과 서버 구성
중복된 컨테이너 서비스 제거하기
캐싱
코드 최적화
케이스 연구: 예제 애플리케이션의 “쇼 디스플레이” 페이지
분산 애플리케이션의 성능
원격 메소드 호출(RMI)의 오버헤드
원격 호출의 최소화
효율적으로 데이터 이동하기
같은 JVM에 컴포넌트들을 같이 놓기
웹 티어 성능 이슈
뷰 성능
HTTP 성능을 사용한 웹 캐싱
부분 페이지 캐싱과 ESI
J2EE 애플리케이션의 성능과 확장성 문제의 주된 원인들
요약

제16장 결론

부록 뷰 기술의 구현
뷰 인터페이스를 이용하여 뷰 기술들로부터 컨트롤러들을 분리시키기
뷰 구현 클래스들
JSP
JSTL 설정하기
InternalResourceView 뷰 구현
애플리케이션에서 사용하기 위한 JSP 뷰 정의
Velocity
Velocity의 설치와 설정
Velocity를 위한 뷰 인터페이스의 구현
애플리케이션에서 사용하기 위한 Velocity 뷰들의 정의
XSLT
Domify 설치
XSLT를 위한 뷰 인터페이스의 구현
애플리케이션에서 사용하기 위한 XSLT 뷰들의 정의
XMLC
XMLC의 설치와 설정
애플리케이션에서 사용할 XMLC 뷰들의 정의
iText를 이용하여 PDF 형식으로 저장하기
iText의 설치
iText를 이용하여 PDF 형식으로 저장하기 위한 뷰 인터페이스의 구현
애플리케이션에서 사용하기 위한 PDF 뷰의 정의
추가적인 뷰들
커스텀

찾아보기
Rod Johnson은 확장성 있는 웹 애플리케이션을 전문적으로 하는 엔터프라이즈 자바 설계자이다. 그는 릴리즈된 이후에 Java와 J2EE를 둘 다 가지고 작업을 해왔으며, Servlet 2.4 스펙을 정의하는 JSR 154 전문가 그룹의 멤버이다.



【 저자·역자 Prolog 】
정보기술 분야의 발전은 엄청나게 빠른 속도로 진행되고 있다. 1995년 처음 선보인 자바도 수많은 기능 향상을 통해 계속해서 발전되어 왔고, 현재는 다양한 설계 패턴과 웹 애플리케이션 프레임워크 등 자바 언어에 기반을 두고 만들어진 분야가 광범위하게 펼쳐져 있다. 이 책은 웹 애플리케이션을 전문적으로 하는 엔터프라이즈 자바 설계자들이 실제로 J2EE를 사용해 애플리케이션을 개발하면서 실패하거나, 실질적인 비즈니스 가치가 없는 접근 방법들을 설명하며, J2EE의 공통적인 문제들을 해결하고, J2EE 프로젝트에서 자주 저지르게 되는 값비싼 실수를 피할 수 있게 도와주는 지침서가 될 것이다. 또한, 실제로 결과를 산출하는 방법을 제시하고, 실패하지 않는 프로젝트로 이끌어 나갈 수 있는 길을 제시함으로써 지금까지 실패해온 J2EE 프로젝트를 구할 수 있도록 효과적이고 증명된 방법들을 소개한다. 이 책을 읽음으로써 J2EE 개발자들은 많은 어려운 점들을 피해갈 수 있을 것이라 생각된다.
마지막으로, 자바 유저스 번역팀은 아니지만 힘들게 번역을 도와주신 현 자바 서비스넷 운영자이신 차의중님과 말없이 묵묵히 따라와준 자바 유저스넷 번역팀 모두에게 감사의 말씀을 드린다.

JavaUsers 번역팀
원서를 보세요.
백창열님이 쓰신 서평보기 I 평점 I 조회수(1491) I 공감 (0) I 블로그
다른 분들 서평을 보시면 알겠지만 이 책 내용은 아주 좋습니다. 그러나, 번역은 엉터리입니다. 영어가 많이 부족하신 분은 어쩔 수 없이 이 책을 보셔야겠지만 왠만한 책 그냥 읽을 수 있는 정도라면 원서를 보시는 것이 낫습니다. 훌륭한 책을 이렇게 번역했다는 것이 너무 안타깝습니다. 다시는 이러한 번역서가 나오지 않기를 바랍니다.
최고의 책을 최악의 책으로 만드는 재주.
송준우님이 쓰신 서평보기 I 평점 I 조회수(1302) I 공감 (0) I 블로그
도저히 말이 될수 없는 번역에 읽다가도 수십번 찟어버리려는 충동에 휩싸인다. 분명한것은 이 책을 번역한 역자는 책의 내용은 10%도 이해하지 못하고 자동번역기로 돌려 버렸다는것이다. (인간이 할 수 있는 번역이 아니다 -ㅅ-) 정보문화사는 이 역자들 5인에 대해서는 분명한 책임을 물어야할것이다. Spring 프레임워크의 기반이기도 한 이 책의 내용은 별 6개이다. 그러나 X같은 번역때문에 별 하나를 주려한다.   결국 서점에서 원서를 다시...
Rod Johnson의 깊이에 다시한번 존경을 표하며..
박재성님이 쓰신 서평보기 I 평점 I 조회수(3357) I 공감 (0) I 블로그
이 책을 처음 알게된 계기는 Expert One-on-One J2EE Development without EJB 책을 통해서이다. EJB의 복잡성과 느린 개발속도에 불만을 느끼고 있던 저에게 Expert One-on-One J2EE Development without EJB책은 상당한 신선함을 느낄 수 있게 하는 책이였다. 또한 자바진영의 오픈 소스 프레임워크에 관심을 가지고 있던 저에게 Rod Johnson의 Light-Weight Container 아키텍처는 개발자로서 새로운 활력을 자아낼 수 있는 시발점이 되었다.Expert One-on-One J2EE Development wit...
이런 책이 국내저자에 의해 쓰여지는 날이 오기를 바라며..
김승권님이 쓰신 서평보기 I 평점 I 조회수(2335) I 공감 (0) I 블로그
이 책의 저자는 최근 하이버네이트(Hibernate)와 함께 업계의 관심이 집중되고 있는 스프링 프레임워크(Spring Framework)의 창시자인 로드 존슨입니다. 스프링은 현재 국내의 대형 SI 업체와 솔루션 전문 업체 등에서 활발하게 도입되고 있는 IoC 컨테이너인데요, 웹 계층과 비즈니스 계층을 구성하는 다양한 대안 기술들 사이에서 프레임워크적인 접합제(Glue)로써 그 가치가 크다고 할 수 있습니다.  이번에 제 6회 자바개발자컨퍼런스에 참석해서 "한국형 프레임워크"와 관련...
SQL 전문가 가이드 [The Guide for SQL Professional](2013 Edition)...
한국데이터베이스진흥원
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
두근두근 파이썬...
천인국
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
이렇게 하면 나도 프로그램을 잘 만들 수 있다 (I)...
김석현
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(79)
회원평점   회원서평수 4
원서를 보세요.
백창열 님  2005-05-15
최고의 책을 최악의 책으로 만드는 재주.
송준우 님  2005-05-02
Rod Johnson의 깊이에 다시한번 존경을 표하며..
박재성 님  2005-04-29
이런 책이 국내저자에 의해 쓰여지는 날이 오기를 바라며..
김승권 님  2005-02-23
Rod Johnson 의 최근 저서
 
Half of Faith
14,100원
(22%↓+1%)
 
Professional Java Development with the Spring Framework
40,300원
(28%↓+1%)
 
Expert One-on-One J2EE Development without EJB
40,900원
(27%↓+1%)
 
Expert One-on-One J2EE Design and Development
63,000원
(25%↓+1%)
 
Promise You'll Love Me Forever
15,200원
(22%↓+1%)
 
정보문화사 출판사의 신간
건축, 인테리어 프레젠테이션을 위한Photoshop(2판)
남현우 저
18,000원
(10%↓+5%)
 
스콧 켈비의 라이트룸 사용자를 위한 포토샵 CC 2019
스콧 켈비 저
16,200원
(10%↓+5%)
 
순식간에 한 달이 사라지는 당신을 위한 스마트폰 시간 활용 백서
이동현 저
13,500원
(10%↓+5%)
 
초보자를 위한 JavaScript 200제
고재도 저
22,500원
(10%↓+5%)
 
로호의 배경 일러스트 메이킹
고아라 저
27,000원
(10%↓+5%)
 
이메일주소수집거부