목차
제1부 JSP 기초 익히기 = 21
1. JSP 이야기 = 23
1.1 JSP의 특징 = 26
1.2 JSP의 내부 동작 =28
1.3 HTML과 JSP 페이지의 구조 = 30
1.4 폼 처리 프로그램 = 32
[1] 사용자 아이디 입력 = 32
[2] 사용자 아이디 출력 = 34
[3] welcome.jsp 페이지의 HTML 소스 보기 = 35
2. 자바 설치하기 = 39
2.1 자바 설치 = 42
3. 아파치 설치하기 = 49
3.1 아파치 설치 = 50
3.2 아파치 환경 설정 = 57
3.3 설치 확인 = 59
4. 톰캣 설치하기 = 61
4.1 톰캣 설치 = 62
4.2 톰캣 환경 설정 = 64
4.3 설치 확인 = 67
5. 아파치와 톰캣 연동하기 그리고 못다한 이야기 = 69
5.1 연동을 위한 환경 설정 = 70
5.2 연동 확인 = 74
6. 울트라 에디트 설치하기 = 85
6.1 울트라 에디트 설치 = 86
6.2 울트라 에디트 편하게 사용하기 = 91
7. 꼭 알아야 할 자바 문법 = 95
7.1 변수 = 96
7.2 주석 = 102
7.3 조건문 = 106
7.4 반복문 = 106
8. 폼(FORM)으로 웹사이트 틀 잡기 = 115
8.1 폼 데이터 처리 = 117
8.2 로그인 = 124
8.3 혈액형 조사 = 136
8.4 좋아하는 과일 = 139
8.5 거주 지역 = 143
8.6 건의함 = 146
8.7 사용자 정보 = 150
9. JSP 문법 이것만 알고 가자 = 155
9.1 JSP 기본 태그(1) = 155
[1] 페이지 지시자 = 156
[2] 포함 지시자 = 160
[3] 사용자 정의 지시자 = 161
[4] 포함 프로그램 = 162
9.2 JSP 기본 태그(2) = 166
9.2.1 스크립트 = 167
[1] JSP 선언 태그 = 167
[2] JSP 스크립트 태그 = 167
[3] JSP 출력 태그 = 168
[4] 텍스트 색깔 바꾸기 = 168
9.9.2 주석문 = 171
[1] HTML 주석문 = 171
[2] JSP 주석문 = 172
[3] JSP 스크립트 주석문 = 173
[4] 세 가지 주석 프로그램 = 174
9.3 JSP 응용 태그 = 177
9.3.1 빈 액션 = 177
[1] 〈jsp:useBean〉 = 177
[2] 〈jsp:setProperty〉 = 178
[3] 〈jsp:getProperty〉 = 179
[4] 좋아하는 과일 = 179
9.3.2 페이지 활용 액션 = 187
[1] 〈jsp:forward〉 = 187
[2] 〈jsp:include〉 = 187
[3] 좋아하는 화가의 그림 = 188
10. 맛있는 쿠키 이야기 = 195
10.1 쿠키(Cookie) = 195
10.2 JSP 에러 처리 = 205
10.2.1 컴파일타임 에러 = 205
[1] 파싱 예외 = 206
[2] 컴파일 예외 = 207
10.2.2 런타임 에러 = 209
[1] try{}-catch{} 구문 = 209
[2] 에러 페이지 = 209
11. 데이터베이스(DataBase) 이야기 = 215
11.1 MySQL 설치 = 226
11.2 쿼리를 날리자 = 223
[1] 테이블 생성 = 223
[2] 테이블 변경 = 224
[3] 테이블 제거 = 224
[4] 자료 검색 = 224
[5] 자료 삽입 = 225
[6] 자료 갱신 = 226
[7] 자료 삭제 = 226
[1] STUDENT 테이블 생성 = 230
[2] 자료 삽입 = 231
[3] 자료 검색 = 232
[4] 자료 갱신 = 233
11.3 새로운 데이터베이스와 계정 만들기 = 234
[1] 새로운 데이터베이스 만들기 = 234
[2] 계정 만들기 및 권한주기 = 236
11.4 JDBC = 239
[1] JDBC 드라이버 타입 = 239
[2] JDBC 프로그래밍 = 243
11.5 JDBC 활용하기 = 251
12. 미스터 빈 = 265
12.1 로그인 = 268
12.2 한글 처리 = 276
12.3 페이지 접속 후 경과된 시간 = 281
12.4 주민등록번호 = 284
13. 게시판 만들기 = 297
13.1 게시판 설계하기 = 300
[1] 게시판 글쓰기 = 300
[2] 게시판 글 목록 = 301
[3] 글 내용 보기 = 302
[4] 글 내용 수정하기 = 303
[5] 글 내용 삭제하기 = 304
13.2 게시판용 테이블 설계하기 = 306
13.3 게시판 글쓰기 = 309
13.4 게시판 글 목록 = 321
13.5 글 내용 보기 = 333
13.6 글 내용 수정하기 = 340
13.7 글 내용 삭제하기 = 350
제2부 XML 기초 익히기 = 359
1. XML이란? = 361
1.1 마이너리 파일과 텍스트 파일 = 362
1.2 마크업 언어란? = 363
1.3 HTML vs XML 비교 = 364
1.4 XML의 계층 구조 = 367
2. XML 문서 만들기 = 369
2.1 IE(Internet Explorer)에서 XML의 구동 원리 = 369
2.2 간단한 XML 문서 만들기 = 371
2.3 XML 문서 작성 시 주의해야 할 점 = 375
[1] 선언부 생성 시 주의할 점 = 375
[2] 태그의 대소문자가 일치하지 않는 경우 = 377
[3] 마침 태그가 없을 경우 = 378
[4] 태그가 중첩되는 경우 = 379
2.4 전자 메일을 XML 문서로 만들어 보기 = 380
2.5 빈 엘리먼트(Empty Element) 사용하기 = 384
2.6 엘리먼트 이름 작성 규칙 = 386
2.7 태그 규칙과 Well-Formed XML = 387
2.8 여러 작가의 글이 들어있는 소설책 = 390
2.9 XML 문서에 속성을 붙여보자 = 395
2.10 XML 문서에 주석을 입혀보자 = 400
2.11 PCDATA 문자들 = 403
3. CSS로 스타일링 하기 = 405
3.1 CSS란? = 405
3.2 첫 CSS 예제 = 406
3.3 CSS를 간단하게 표현하자 = 410
3.4 display property = 415
3.5 font property = 419
3.6 font property 사용 예제 = 421
3.7 text property = 423
3.8 text property 사용예제 = 425
3.9 경계선을 지정해 보자 = 427
3.10 글자색과 배경 = 430
3.11 문단 속성을 지정해 보자 = 434
4. DTD 만들기 = 437
4.1 DTD(Document Type Definitions)란? = 437
4.2 DOCTYPE 선언 = 438
4.3 엘리먼트 타입 선언(Element Type Declarations) = 439
4.4 하위 엘리먼트 타입 선언 = 443
4.5 속성 리스트 선언(Attribute List Declaration) = 444
[1] 문자형 속성 = 444
[2] 열거형 속성 = 444
[3] Entity와 Entities = 446
[4] ID, IDREF, IDREFS = 446
[5] NMTOKEN과 NMTOKENS = 447
4.6 속성 값 = 448
[1] Required = 448
[2] Implied = 448
[3] Fixed = 449
[4] Supplied = 449
4.7 엔티티(Entity) 넣기 = 450
[1] 내부 일반 엔티티 = 450
[2] 외부 일반 엔티티 = 453
[3] 외부 파라미터 엔티티 = 454
4.8 소설책 예제 - 내부 서브셋 사용 = 456
4.9 소설책 예제 - 외부 서브셋 사용 = 465
4.10 DTD 단점 = 468
5. DOM 익히기 = 469
5.1 DOM에 대하여 = 469
5.2 여러 가지 노드 타입 = 471
[1] 도큐먼트(Document) = 471
[2] 도큐먼트 프래그먼트(Document Fragment) = 471
[3] 도큐먼트 타입(Document Type) = 472
[4] 엔티티 레퍼런스(Entity Reference) = 473
[5] 엘리먼트(Element) = 473
[6] 어트리뷰트(Attr) = 474
[7] 프로세싱 인스트럭션(Processing Instruction) = 474
[8] 코멘트(Comment) = 475
[9] 텍스트(Text) = 475
[10] CDATASection = 475
[11] 엔티티(Entity) = 475
[12] 노테이션(Notation) = 476
[13] 노드리스트(NodeList) = 476
[14] 네임드 노드맵(Named NodeMap) = 476
5.3 노드 타입 예제 = 477
5.4 DOM을 이용하여 XML 문서 로딩하기 = 482
5.5 DOM을 이용해 엘리먼트 불러오기 = 484
5.6 DOM을 이용해 엘리먼트 내용 가져오기 = 487
5.7 DOM을 이용해 노드 추가/삭제하기 = 489
5.8 DOM을 이용하여 XML 문서에 속성 추가하기 = 495
5.9 DOM을 이용하여 XML 문서에 DocumentFragment 추가하기 = 498
5.10 DOM을 이용하여 XML 문서에 NodeList 추가하기 = 501
5.11 DOM을 이용하여 XML 문서에 속성값 얻어오기 = 503
5.12 DOM을 이용하여 XML 문서에 속성값 변경하기 = 505
5.13 NamedNodeMap 인터페이스 사용하기 = 508
5.14 CharacterData 인터페이스 사용하기 = 513
5.15 Comment 추가하기 = 516
5.16 CDATASection 추가하기 = 518
5.17 Process Instruction 추가하기 = 520
6. SAX 익히기 = 523
6.1 SAX(the Simple API for XML)란? = 524
6.2 JDK와 SAX를 포함한 파서 설치 = 526
6.3 파서 실행시키기 = 528
6.4 SAX를 이용해 문자 데이터 뽑아내기 = 532
7. XSL로 스타일링 하기 = 537
7.1 XSL이란? = 537
7.2 XSL을 시작해보자 = 539
7.3 XSL 확장 예제 = 542
7.4 XSL 패턴 = 546
7.5 템플릿 = 549
7.6 XSL 엘리먼트 = 550
[1] 〈xsl:stylesheet〉 = 550
[2] 〈xsl:template〉 = 550
[3] 〈xsl:apply-templates〉 = 550
[4] 〈xsl:value-of〉 = 552
[5] 〈xsl:output〉 = 553
[6] 〈xsl:element name=""〉 = 553
[7] 〈xsl:attribute〉와 〈xsl:attribute-set〉 = 554
[8] 〈xsl:text〉 = 554
[9] 〈xsl:if〉와 〈xsl:choose〉 = 556
[10] 〈xsl:for-each〉 = 556
[11] 〈xsl:copy-of〉와 〈xsl:copy〉 = 556
[12] 〈xsl:sort〉 = 557
[13] 〈xsl:variable〉 = 557
7.7 XSL 예제 = 558
8. XML 링크 익히기 = 563
8.1 HTML 링크 = 564
8.2 XML 링크 = 565
8.3 XLink와 그 속성들 = 566
[1] type = 567
[2] href = 567
[3] role = 568
[4] title = 568
[5] actuale = 568
[6] show = 569
[7] from과 to = 569
8.4 단순(Simple) 링크와 확장(Extended) 링크 = 570
[1] 단순 링크 = 570
[2] 확장 링크 = 571
8.5 XPointer와 그 속성들 = 574
8.6 Location, Point, Range = 577
[1] location = 577
[2] point = 577
[3] range = 578
9. memo 어플리케이션 만들기 = 579
9.1 memo DTD 만들기 = 579
9.2 memo xml 만들기 = 581
9.3 memo.css와 memo.xsl 만들기 = 583
10. 방명록 어플리케이션 만들기 = 587
10.1 방명록 DTD와 xml 문서 = 587
10.2 방명록 xsl = 589
11. 또 다른 xsl = 593
11.1 xslt = 593
11.2 학교 DTD와 xml 문서 = 594
11.3 학교 xslt = 697
제3부 JSP와 XML 연동 프로젝트 = 607
1. 컴퓨터 시적 목록 = 609
2. XML 데이터베이스 연동 = 619
2.1 JSP와 데이터베이스 연동 = 619
2.2 JSP XML과의 데이터베이스 연동 = 645
3. XML 파일을 또 다른 XML 파일로 = 667
3.1 한글 DTD를 영문 DTD로 바꿔라 = 667
3.2 한글 xml 문서를 영문 xml 문서로 바꿔라 = 677