책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 자바
· ISBN : 9788976279699
· 쪽수 : 1448쪽
· 출판일 : 2002-05-09
책 소개
목차
제 1 장 XML의 기본 사항들
XML이란 무엇인가?
-XML은 마크업(Markup)이다
-요소(element)와 어트리뷰트(attributes): 데이터의 구조
-XML은 확장 가능하다(eXtensible)
-XML 스펙
Well-Formed XML
-Well-Formed 도큐먼트이기 위한 문법 규칙들
-Well-Formed Documents의 구조
Valid XML
-도큐먼트 메타데이터(Document MetaData)
-DTD 안에서의 마크업 선언
XML 네임스페이스(Namespaces)
-네임스페이스 문법(Namespace Syntax)
-애플리케이션 그리고 효율적으로 XML 사용하기
XML 인포메이션 셋(Information Set)
-인포셋 정보 항목들(Infoset Information Items)
-어트리뷰트 정보 항목(Information Item)
-인포셋에 해당하는 사실들과 그렇지 않은 것들
XML을 가지고 작업하기
-XML 프로세서
-애플리케이션
-애플리케이션과 프로세서 사이의 관계
-XML 생산 시스템
-XML 툴과 정보
완전한 형태의 TroubleTicket.xml 도큐먼트
요약
제 2 장 SAX
이번 장을 위한 준비 사항
왜 SAX인가?
-SAX의 디자인
SAX 1.0과 SAX 2.0의 차이
-여러 가지 sax 파서들
-이벤트 핸들러
-SAX 1.0 파서와 함께 SAX 2.0 API 이용하기
SAX 파서들
-Xerces
-Crimson
- lfred
-JAXP
JAXP-동격의 클래스 작성하기
-SAXParser 클래스
-SAXParserFactory
SAX 사용하기
-DefaultHandler를 작성하기
-네임스페이스(Namespaces)
-프로세싱 명령어(Processing Instructions)
-생략된 엔터티(Skipped Entities)
-org.xml.sax.Locator 클래스
-Error Handlers
SAX2-ext 패키지
-DeclHandler
-렉시칼 핸들러(Lexical Handler)
-SAX2-ext 사용하기
SAX를 이용한 애플리케이션 구현
-우리의 애플리케이션
SAX 2.01
요약
제 3 장 DOM
이번 장 학습에 필요한 것들
DOM의 역사
DOM은 무엇인가?
DOM Level 1
-JAXP를 이용해서 파싱하고 변환하기
-JAXP를 이용하여 XML을 DOM으로 읽어들이기
-JAXP를 이용해서 DOM을 XML로 출력하기
-DOM 트리 빌딩(Building)
-트리 안에서 작업하기
-NodeList와 Node 어트리뷰트를 이용해 작업하기
DOM Level 2
-네임스페이스 사용하기
-추가적인 DOM Level 2 인터페이스
-DOM Events
-Traversal
-Traversal 예제
-영역(Ranges)
DOM Level 3
요약
제 4 장 JDOM
JDOM이란 무엇인가?
-왜 또다른 XML API가 필요할까?
-JDOM, SAX 혹은 DOM을 각각 언제 사용하는 게 좋은가?
JDOM을 다운로드받고 설치하기
-최소 요구 사항
-JDOM 배포판을 얻기
-JDOM을 빌드하고 설치하기
-JDOM 설치가 잘 되었는지 테스트하기
첫 JDOM 프로그램 작성하기
-HelloWorld 프로그램을 소개하기
JDOM 객체 모델 & API 개요
-org.jdom 패키지
-org.jdom.input 패키지
-org.jdom.adapters 패키지
-org.jdom.output 패키지
모든 것을 한데 묶기
-SAXBuilder 사용하기
-DOMBuilder 사용하기
-JDOM 컴포넌트들을 조작하기
JDOM의 미래
-참여하기
-더 읽을 것들
요약
제 5 장 XML 스키마
XML 스키마 : 웹 쓰레드(Thread in Web)
-확장 가능한 마크업 언어(XML)와 XML Activity
-구조화된 데이터와 공통적인 의미론(Common Semantics)
-DTD vs. XML 스키마 : 왜 XML 스키마를 필요로 할까?
XML Schema : 이론과 실제
-스키마 구조 : 스키마 컴포넌트(Schema Components)
-Primary 컴포넌트
-타입 정의 : Complex 타입과 Simple 타입
-Simple 타입 정의 : 내장된 타입과 사용자-정의 데이터 타입
-Complex 타입
-Secondary Components와 Helper Components
-XML 스키마에서 네임스페이스 사용하기
-고급 XML 스키마 특성들
-적합성 검사(Validation)
요약
제 6 장 XML-객체 매핑
매핑(Mappings)
-실제로 매핑하기
-객체를 XML로 변환하기
-XML을 객체로 변환하기
-이론상으로 매핑하기
Document-centric XML
-XMLC
Data-Centric XML
-JAXB(Adelard라고 알려졌던 API)
Objects-centric XML
-SOAP(Simple Object Access Protocol)
-JSX : Java를 XML로 직렬화하기
요약
제 7 장 XSLT에 대한 소개
XSLT 변환에 대한 개요 살펴보기
간단한 XSLT 변환
-완전한 스타일시트
-출력 도큐먼트를 만들어내기 위해 Xalan 2.0을 이용하기
변수 선언하기
-다양한 스타일시트를 합치기
XPath 표현식을 이용하기
-위계적으로 노드를 선택하기
-노드 값들을 선택하기
-어트리뷰트값들을 선택하기
-text()를 가지고 텍스트 노드를 선택하기
-프레디킷(Predicates)을 이용해 탐색 범위를 좁히기
-액스(Axes)를 이용해 노드를 선택하기
-축약된 문법
표현식 타입들
템플릿 규칙을 적용하기
-우선순위
결과 트리를 만들기
[xsl:element]와 [xsl:attribute] 요소
[xsl:text]를 이용하기
[xsl:processing-instruction] 요소를 사용하기
[xsl:copy]를 이용해 노드를 복사하기
-mode를 이용한 조건에 따라 출력 형태를 포맷팅하기
-출력 데이터를 정렬하기
조건에 따라 처리하는 로직을 구현하기
-[xsl:if]를 이용해 조건적으로 처리하기
-[xsl:choose]를 이용한 조건적인 프로세싱
요약
제 8 장 XSLT를 이용한 프로그래밍
XSL 스타일시트 처리하기
TrAX 개요
StreamSource와 StreamResult를 이용하기
SAXSource와 SAXResult를 이용하기
DOMSource와 DOMResult를 이용하기
Xalan 아키텍처
-Process 모듈(org.apache.xalan.processor)
-Template 모듈(org.apache.xalan.tempaltes)
-Transformer 모듈(org.apache.xalan.transformer)
-XPath 모듈(org.apache.xpath)
XSLT 파서를 이용한 애플리케이션 개발하기
-파라미터들을 스타일시트에 전달하기
-관련된 스타일시트를 이용하기
-XPath 표현식들을 수행하기
-다양한 Transformations를 통해 출력 바꾸기
스타일시트에서 익스텐션(Extensions) 이용하기
-익스텐션 요소(Extensions Elements)
-익스텐션 함수(Extensions Functions)
-JavaScript를 이용해 익스텐션 만들어보기
-Java를 이용해 익스텐션 요소 만들기
-결과를 여러 파일들로 리다이렉트하기
-스타일시트를 통해 데이터베이스 호출하기
Translets
요약
제 9 장 연결된 XML 데이터
XPointer
-XPointer의 타입들
-Full XPointers
-XPointer 상태
-XPointer 요약
XInclude
-resource들을 인클루드하기
-XInclude 상태
-XInclude 요약
XBase
-Base URI를 세팅하기
-XBase 상태
-XBase 요약
XLink
-XLink 용어들
-XLink 아키텍처
-Simple XLinks
-Extended XLinks
-링크베이스(Linkbases)
-XLink 상태
-XLink 요약
XFI-XML 프래그먼트 교환하기
-프래그먼트 컨텍스트 스펙
-프래그먼트 패키징하기
-XFI 상태
-XFI 요약
요약
제 10 장 의미론적 도큐먼트
세 개의 패러다임을 비교하기
의미론적인 웹(Semantic Web)
RDF와 Topic Maps
-RDF 데이터 모델과 문법
-동일한 표현들
-RDF 타입
-구현
-RDF의 특성
-Jena를 이용해 RDF 카탈로그를 만들기
XTM 개념적 모델과 그 문법
-RDF와 Topic Maps를 비교하기
-Topic Maps의 특징
-TM4J를 이용해 Catalog Topic Map을 만들기
지원해 주는 클래스들
-CatalogHandler 인터페이스
-CatalogParser 클래스
-SemDoc Utility
해결 방법에 들어가는 것들(Ingredients of a Solution)
요약
제 11 장 소켓 입/출력
Java 소켓(Socket) API
연결-지향적인 프로토콜과 연결없는 프로토콜
간단한 클라이언트-서버 애플리케이션 만들어보기
-java.net.ServerSocket 클래스
-java.net.Socket 클래스
-소켓 서버 작성하기
-클라이언트 프로그램 작성하기
좀더 견고한 서버
-기타 고려할 사항들
XML 소켓 서버 작성하기
-XML 도큐먼트
-서버
-디자인
-한데 결합하기
요약
제 12 장 서버-측 HTTP
HTTP 기초
-전형적인 HTTP 시나리오
HTTP 요청 메소드들
-GET 요청 메소드 방식
-POST 요청 메소드
-GET vs. POST
-HTTP 응답
-HTTP 응답 헤더
-HTTP 응답 바디(body)
-HTTP 프로그래밍
-서블릿 소개
-서블릿 아키텍처
환경 세팅하기
-컨테이너 준비하기
최소한의 서블릿 예제
-HttpServlet
-GET or POST 예제
-BasicHttpGopher Utility
XML 출력하기
-POST 방식으로 XML 양식의 데이터를 보내기
-BasicHttpGopher 클래스 바꾸기
-BasicSocketConnection 바꿔주기
-XML 메시징 애플리케이션
-XML-포맷의 데이터 클라이언트에 보내기
요약
제 13 장 클라이언트-측 HTTP
환경 설정하기
HTTP 요청 아키텍처
-HTTP 요청 메소드
-HTTP 요청 헤더
-HTTP 요청 헤더를 서블릿 내부에서 처리하기
-HTTP 요청 파라미터 보내기
-HTTP 요청 파라미터를 서블릿 내부에서 처리하기
HTTP 요청 쿼리(Request Queries)
-Parameter 서블릿 예제
-조건적인 GET 요청 예제
완전한 클라이언트-서버 XML 메시징 애플리케이션
-XML 데이터 모델
-XmlClient 클래스
-Command 클래스
-XmlServlet 클래스
-web.xml 디스크립터
-애플리케이션을 테스트하기
요약
제 14 장 서버-측 프리젠테이션
소개
-필요한 것
-다양한 브라우저
-다양한 프리젠테이션 계층
서버-측 컨텐츠
XSLT와 서블릿
-애플리케이션
-단계 1 : 플랫폼 중립적인 데이터
-단계 2 : 스타일에 의존적인 사용자 에이전트(agent)
-UP.SDK 설치하고 설정하기
-단계 3 : 애플리케이션 실행하기
-우리 디자인의 한계점
컨텐츠 생산을 위한 프레임워크
-Cocoon
-Cocoon 아키텍처를 간단히 살펴보기
-Cocoon 설치하기
-Hello, World!
-우리의 애플리케이션을 Cocoon을 이용해 구현하기
-Cocoon2
-Cocoon 결론
다른 컨텐츠 프레임워크
요약
제 15 장 클라이언트-측 프리젠테이션
-클라이언트-측 XML 프로세싱
-XML 데이터를 클라이언트-측으로 얻어오기 : 세 가지 기술
전문화된 여행사 체인점에 대한 사례 연구
-간략하게 분석해 보기
XML 중심적인 디자인
-아주 고차원적인 수준에서 본 시스템 개요
-연결이 끊어진 XML 데이터 집합을 필터링하기 : VacationApplet
-JDBC 접근 : sqlBean과 queryBean 클래스들
-양쪽 종단간(End-to-End) 시스템 테스트해 보기
XML에서 RDBMS로 데이터를 입력할 수 있는 테스트 툴을 컴파일하고 이용해 보기
현재 브라우저에 장착되어 있는 XML 프리젠테이션을 처리할 수 있는 능력들
-Internet Explorer 4.x와 5.x의 XML 프리젠테이션 지원
-Netscape 6에서 지원해 주는 Cascading Style Sheet XML 포맷팅
-범용-브라우저 해결 방법(Cross-Browser Solution)
-한방에 보내는(One-Shot) 접근 방법의 한계점
요약
제 16 장 XML 객체 저장
저장(Persistence)
-왜 저장하는가?
-왜 XML로 저장하는가?
Hammer
-XML 포맷
-폼과 관계된 XML 문법
-XML 작성하기
-XML 읽어들이기
-SOAP-스타일 포맷팅
진화와 버전 달기(Evolution and Versioning)
-추상적 데이터 계층(Abstract Data Layer, ADL)
영속성 있는 데이터 저장소(Persistent Data Strores)
-파일 vs. 데이터베이스
-디렉토리
요약
제 17 장 XML과 데이터베이스
개요
XML 도큐먼트들을 데이터베이스에 저장하기
-가상 XML(virtual XML)로서의 관계형 데이터
XML API를 통해 데이터에 접근하기
SAX 파서 구현하기
Rowsets
-JdbcRowSet 클래스
JDBCInputSource 클래스
-JDBCSAXParser
DOM API 구현하기
데이터베이스에 대하여 SAX와 DOM API 이용하기
-데이터베이스에 대해 SAX API 이용하기
-데이터베이스에 대해 DOM API 이용하기
-SAX/DOM API를 이용해 rowset 변환하기
-변환을 수행하기
Disconnected RowSets
-CachedRowSet 클래스
-WebRowSet 클래스
Cocoon과 XSP
요약
제 18 장 환경 설정과 디플로이먼트
기업 환경에서 쓰이는 XML 디스크립터
-환경 설정 파일을 위해 사용되는 XML
-XML 디스크립터 vs. 간단한 텍스트 파일
-XML 디스크립터 vs. 이진 파일
-XML 디스크립터 vs. 직렬화된 객체
-XML 프로파일 vs. 사용자 데이터베이스
XML 디스크립터를 위한 Java 프레임워크
-애플리케이션 환경 설정 전략
-XMLUtils 클래스
-XPath Utilities
-디스크립터(Descriptor) 클래스
-예제
E-mail 애플리케이션
-웹 애플리케이션을 디플로이하기
-EmailConfig.dtd 파일
-EmailConfig.xml 파일
-EmailAdmin 클래스
-EmailUser.dtd 파일
-EmailUser.xml 파일
-UserBean 클래스
-Login JSP
-EmailBean 클래스
-Header JSP
-Email JSP
-Options JSP
-Register JSP
-Logout JSP
요약
제 19 장 XML 프로토콜과 커뮤니케이션
커뮤니케이션 프로토콜의 모든 것
-계층들 간의 통신
-데이터 채우기 - 프레임과 헤더
XML과 통신 프로토콜
고전적인(Classic) RPC
-HTTP 터널링
XMLRPC 프로토콜
-요청 헤더 정보(Request Header Information)
-요청 바디(Request Body)
-Complex 데이터 타입
-다양한 Java XMLRPC 라이브러리
-독립 실행형 XMLRPC-기반 서비스 작성하기
-XMLRPC를 J2EE 웹 컨테이너에 통합하기
SOAP
-SOAP과 HTTP
-SOAP Envelope
-SOAP 인코딩 스타일
-Apache SOAP을 가지고 작업하기
-Apache SOAP 웹 서비스를 구현하기
-Apache SOAP 서비스 관리자용 웹 애플리케이션
BXXP-XML 프로토콜 구축 집합
-BXXP 상세 사항들
-BXXP 프레이밍(Framing)
-BXXP 채널 관리
-BXXP를 위한 Java SpaceKit
-커스텀 BXXP 모듈 만들기
-BXXP 클라이언트 작성하기
-터널 모니터를 이용해 BXXP 트래픽을 검사하기
-BXXP 로그 검사하기
XML 프로토콜들을 비교하고 대조하기
-XMLRPC
-SOAP
-BXXP
요약
제 20 장 XML과 메시징
메시징과 XML에 대한 개요
메시지를 전송하기 위한 메커니즘
-Peer-to-Peer 통신
-메시징 서비스 기반의 통신
분산된 기업형 애플리케이션 시나리오
-Peer-to-Peer 예제
MOM(Message-oriented middleware, 메시지 지향적인 미들웨어)의 필요성
메시징 안에서의 XML
-서비스 요청과 응답
JMS API
-PTP 메시징에 대한 JMS API
-JMS를 활용한 요청/응답 메시징
-JMS를 이용하는 예제
SOAP을 JMS와 결합하기
-JMS를 이용한 Apache SOAP
요약
제 21 장 B2B 마켓플레이스(Marketplaces)
B2B 메시징에 대한 소개
-전자적 마켓플레이스의 아키텍처
E-Business XML 실천 전략
-cXML(Commerce XML)
-xCBL(XML Common Business Library)
-Rosetta Net
-UDDI(Universal Description, Discovery, and Integration)
-비즈토크 프레임워크(BizTalk Framework)
-ebXML(Electronic Business XML Initiative)
Commerce XML - 튜토리얼
-Supplier 도큐먼트
-Buyer 도큐먼트
전자 카탈로그 만들기
OrderRequest 도큐먼트를 파싱하기
EDI(Electronic Data Interchange, 전자적 데이터 교환)
보안(Security) 사항들
요약
제 22 장 웹 서비스들
웹 서비스 표준
웹 서비스 시나리오
WSDL을 이용해 웹 서비스를 설명하기(Describing)
-WSDL 도큐먼트
웹 서비스 개발하기
-인터페이스 정의하기
-웹 서비스 환경을 구성하기
-서비스 구축하기(WSDL2Java)
-Java2WSDL을 사용하여 웹 서비스 구축하기
-WSDL 툴을 사용하지 않고 직접 구축해 보기
웹 서비스의 생명주기(lifecycle)
-스코프(Scope) 보여주기
-웹 서비스 확장하기(Scaling)
웹 서비스 찾아내기(Locating)
-UDDI
-UDDI 데이터 모델
-WSTK UDDI 레지스트리(Registry)
-UDDI 클라이언트 작성하기
-UDDI 요약
요약
부록 A XML과 관련된 표준들
XLink
-Simple Links
-Extended Links
XPointer
-문법(Syntax)
-XPointer Extensions to XPath
XPath Reference
-Axes
-Node Tests
-Functions
-XPath Expressions에 대한 몇몇 예제들
부록 B XML을 위한 The Simple API
SAX 1.0
-Classes
-Interfaces
SAX 2.0에 나오는 새로운 클래스와 인터페이스들
-Classes
-Interfaces
부록 C W3C 도큐먼트 오브젝트 모델
org.w3c.dom 패키지
-Classes
-Interfaces
org.w3c.dom.events 패키지
-Classes
-Interfaces
org.w3c.dom.ranges 패키지
-Classes
-Interfaces
org.w3c.dom.traversal 패키지
-Interfaces
부록 D XML을 위한 변환
The javax.xml.transform 패키지
-Classes
-Interfaces
The javax.xml.transform.dom 패키지
-Classes
-Interfaces
The javax.xml.transform.sax 패키지
-Classes
-Interfaces
The javax.xml.transform.stream 패키지
-Classes
부록 E JAXP 1.1 API
javax.xml.parsers 패키지
-Classes
-Exceptions
부록 F JDOM API
The org.jdom 패키지
-Classes
The org.jdom.adapters 패키지
-Classes
-Interfaces
The org.jdom.input 패키지
-Classes
The org.jdom.output 패키지
-Classes
부록 G XSLT 레퍼런스
Elements
Functions
Inherited XPath Functions
Types
부록 H Tomcat 설치하기
Tomcat 4.0.3을 설치하기
-기본적인(Basic) Tomcat 설치하기
-Tomcat 디렉토리 구조
-Tomcat 환경 설정
찾아보기