Day1. 출발! JSP ... 18 STEP1. HTML 문서의 한계 ... 18 STEP2. CGI의 활용과 한계 ... 20 STEP3. JSP의 이전 단계, 서블릿의 활용과 한계 ... 21 STEP4. JSP의 탄생 ... 23 STEP5. JSP의 수행 과정 ... 24 Day2. JSP 개발 및 실행 환경 만들기 ... 26 STEP1. JSP 개발 및 실행 환경 ... 26 JDK ... 26 에디터 도구들 ... 26 JSP 실행 환경 ... 27 STEP2. JDK 설치하기 ... 27 JDK 설치 파일 구하기 ... 28 JDK 설치하기 ... 31 JDK 환경 설정 ... 34 STEP3. 톰캣 설치하기 ... 37 톰캣 설치 파일 구하기 ... 37 톰캣 설치하기 ... 40 STEP4. JSP 페이지 처음 만들기 ... 42 톰캣 구동하기 ... 42 첫 번째 JSP 문서 만들기 ... 43 STEP5. JSP 관련 API 문서 ... 45 Day3. JSP 기본 문법 Ⅰ ... 48 STEP1. 변수의 선언과 값의 할당 ... 48 변수란 무엇인가? ... 49 변수의 선언과 값 할당 ... 49 변수를 JSP 페이지에 포함시키기 ... 51 STEP2. 메소드의 선언과 구현 ... 52 메소드란 무엇인가? ... 52 메소드의 선언부와 구현부 ... 52 메소드를 JSP 페이지에 포함시키기 ... 54 STEP3. 표현식을 이용한 JSP 코드 출력 ... 55 STEP4. 스크립트릿을 이용한 실행 코드 작성 ... 57 Day4. JSP 기본 문법 Ⅱ ... 60 STEP1. 조건문 만들기 ... 60 if문을 이용한 조건문 만들기 ... 60 switch문을 이용한 조건문 만들기 ... 64 STEP2. 반복문 만들기 ... 66 while문을 이용한 반복문 만들기 ... 66 for문 만들기 ... 68 STEP3. 배열 만들기 ... 70 배열의 선언과 값의 할당 ... 70 반복문을 이용한 배열의 활용 ... 71 STEP4. 주석문 달기 ... 72 Day5. 객체 만들기 Ⅰ ... 76 STEP1. 객체란 무엇인가? ... 76 STEP2. 클래스의 정의와 객체의 생성 ... 78 클래스의 정의 ... 78 객체의 생성 ... 79 변수와 메소드의 사용 ... 80 STEP3. 클래스와 객체의 다양한 활용 ... 86 클래스의 변수와 메소드를 바로 쓸 수 있는 static ... 86 생성자 함수의 활용 ... 89 메소드를 이용하여 객체를 생성하기 ... 92 Day6. 객체 만들기 Ⅱ ... 94 STEP1. 상속 ... 94 STEP2. 인터페이스 ... 98 인터페이스란 ... 98 추상 클래스 ... 102 STEP3. 데이터 형변환 ... 105 원시 데이터 타입의 형변화 ... 106 객체 데이터 타입의 형변화 ... 107 STEP4. 예외 다루기 ... 110 예외란 ... 110 throws 키워드 ... 114 Day7. JSP 내장 객체와 지시자 ... 116 STEP1. request 객체 ... 116 파라미터란 무엇인가? ... 117 파라미터와 관련된 request 객체의 메소드 ... 117 그외에 request 객체와 관련된 메소드들 ... 120 STEP2. response 객체 ... 120 response 객체를 이용한 페이지 자동 이동 ... 120 그 외 response 객체의 메소드들 ... 121 STEP3. out 객체 ... 122 스크립트릿에서 내용 출력하기 ... 122 그 외 out 객체의 메소드들 ... 123 STEP4. session 객체 ... 123 세션 속성의 등록 ... 124 그 외의 session 객체의 메소드들 ... 126 STEP5. JSP 지시자 ... 127 page 지시자 ... 127 include 지시자 ... 132 Day8. 알아두면 유용한 자바 클래스 Ⅰ ... 134 STEP1. 날짜/시간 관련 클래스 ... 134 STEP2. 문자열 관련 클래스 ... 138 STEP3. 객체를 저장하는 콜렉션들 ... 144 Vector ... 144 ArrayList ... 150 HashMap ... 152 Day9. 알아두면 유용한 자바 클래스 Ⅱ ... 154 STEP1. 파일 관련 클래스들 ... 154 STEP2. 쓰레드 관련 클래스 ... 157 Thread 클래스로 쓰레드 만들기 ... 158 synchronized 키워드 ... 161 wait()과 notify() 메소드 ... 164 Day10. JSP로 폼 다루기 ... 168 STEP1. 폼 만들기 ... 168 폼이란 ... 168 폼 태그 ... 169 STEP2. 데이터 전송 방식 GET과 POST ... 171 GET 방식 ... 171 POST 방식 ... 173 STEP3. request 객체 ... 174 getParameter() 메소드 ... 175 getParameterValues() 메소드 ... 176 getParameterNames() 메소드 ... 176 STEP4 텍스트 입력 상자의 처리 ... 178 Day11. 여러 가지 폼 처리하기 ... 184 STEP1. JSP를 이용한 체크박스 처리 ... 184 STEP2. JSP를 이용한 라디오 버튼의 처리 ... 188 STEP3. JSP를 이용한 선택 메뉴의 처리 ... 192 STEP4. JSP를 이용한 여러 줄 텍스트 상자 처리 ... 197 STEP5. 기타 여러 가지 폼 ... 202 비밀번호 입력 상자 ... 202 hidden 입력 상자 ... 202 파일 업로드 상자 ... 203 Day12. JSP를 위한 자바스크립트와 스타일시트 ... 204 STEP1. 자바스크립트 기본 문법 ... 204 자바스크립트란? ... 204 변수와 함수의 선언 ... 205 브라우저 내장 객체의 사용 ... 206 브라우저 내장 객체의 속성과 메소드 ... 206 STEP2. 자바스크립트를 이용한 폼 데이터 검사 ... 212 폼 객체 ... 212 텍스트 상자의 데이터 검사 ... 216 STEP3. 스타일시트를 이용한 폼 모양 다듬기 ... 224 스타일시트란? ... 224 스타일시트 정의하기 ... 224 Day13. 쿠키와 세션을 이용한 카운터 ... 230 STEP1. 쿠키와 세션이란? ... 230 쿠키와 세션의 생성 ... 230 쿠키와 세션 비교 ... 231 STEP2. 쿠키의 설정 ... 233 STEP3. 쿠키를 이용한 카운터 만들기 ... 238 STEP4. 세션을 이용한 카운터 만들기 ... 242 Day14. 자바빈즈의 활용 Ⅰ ... 248 STEP1. 자바빈즈란? ... 248 STEP2. 자바빈 클래스의 생성 과정 ... 251 일반적인 클래스 파일의 생성 ... 251 자바빈 클래스의 생성 ... 252 STEP3. 자바빈 클래스 만들기 ... 254 자바빈 클래스의 속성과 메소드 ... 254 자바빈 클래스 소스 파일 만들기 ... 255 STEP4. 빈을 사용한 JSP 페이지 만들기 ... 258 자바빈즈와 관련된 JSP 태그 ... 258 JSP 페이지 만들기 ... 262 Day15. 자바빈즈의 활용 Ⅱ ... 266 STEP1. 자바빈즈와 파라미터 ... 266 파라미터 넘기기 ... 266 파라미터를 이용한 JSP 예제 만들기 ... 267 STEP2. scope 속성 ... 270 STEP3. application 영역 활용하기 ... 271 자바빈 만들기 ... 272 JSP 페이지 만들기 ... 279 Day16. 관계형 데이터베이스와 오라클 ... 286 STEP1. 데이터베이스와 DBMS ... 286 STEP2. 관계형 데이터베이스에 대해서 ... 287 STEP3. 고유키와 외래키 ... 288 STEP4. 오라클 설치하기 ... 290 STEP5. 오라클 시작과 종료 설정 바꾸기 ... 302 STEP6. 오라클 데이터베이스의 시작과 종료 ... 304 윈도 2000, NT, XP에서 오라클 데이타베이스 시작과 종료 ... 304 윈도 98, ME에서 오라클 데이타베이스 시작과 종료 ... 306 Day17. SQL(Structure Query Language) Ⅰ ... 308 STEP1. SQL이란? ... 308 STEP2. 오라클에서 SQL 명령 실행하기 ... 309 STEP3. 테이블 만들기 ... 311 STEP4. 오라클의 데이터형 ... 316 숫자 데이터형 ... 316 문자 데이터형 ... 325 날짜 데이터형 ... 329 STEP5. 테이블 설정 정보 알아내기 ... 330 Day18. SQL(Structure Query Language) Ⅱ ... 332 STEP1. 테이블 구조 변경하기 ... 332 칼럼 추가하기 ... 332 칼럼의 데이터형 변경 ... 333 STEP2. 테이블에 데이터 저장 ... 334 STEP3. 칼럼의 데이터 수정하기 ... 336 STEP4. 데이터 삭제하기 ... 338 STEP5. 칼럼의 데이터 검색하기 ... 339 데이터를 검색하기 ... 339 특정 조건의 데이터 검색하기 ... 340 와일드카드 %를 이용해서 검색 ... 342 ORDER BY를 이용해서 데이터 정렬하기 ... 343 레코드의 개수 세기 ... 344 최대값과 최소값 구하기 ... 345 STEP6. 시퀀스 ... 346 STEP7. COMMIT과 ROLLBACK ... 350 Day19. JDBC를 이용한 프로그램 작성 ... 356 STEP1. JDBC에 대해서 ... 356 STEP2. JDBC 드라이버 설치하기 ... 357 오라클 JDBC 드라이버 설치하기 ... 357 STEP3. JDBC 이용해서 프로그램 작성 ... 360 JDBC 드라이버 로드하기 ... 361 데이터베이스와 연결하기 ... 362 SQL문 실행 ... 366 STEP4. JDBC를 이용한 주소록 프로그램 작성 ... 373 Day20. JDBC를 이용한 JSP 페이지 작성하기 ... 378 STEP1. 도서 정보 JSP 페이지 ... 378 STEP2. 도서 정보 입력 테이블 작성하기 ... 379 STEP3. 도서 정보 입력 페이지 작성하기 ... 380 STEP4. 입력 받은 정보를 저장하는 info_act.jsp 작성 ... 385 STEP5. 입력한 도서의 리스트 보기 ... 386 Day21. JDBC의 고급 기술 ... 392 STEP1. PreparedStatement ... 392 STEP2. Database Connection Pool ... 396 DBConnectionPool 클래스 ... 396 DBConnectionPoolMgr 클래스 ... 402 STEP3. PreparedStatement와 데이터베이스 ConnectionPool을 이용한 JSP 페이지 작성하기 ... 404 Day22. JavaMail을 이용해서 웹메일 페이지 만들기 ... 412 STEP1. JavaMail에 대해서 ... 412 STEP2. JavaMail API 살펴보기 ... 414 MimeMessage 클래스 ... 415 Transport 클래스 ... 416 STEP3. 웹메일 페이지 작성하기 ... 417 편지 쓰기 페이지(mail.jsp) ... 417 메일 전송 페이지 작성 ... 420 Day23. 회원 가입 페이지 작성하기 Ⅰ ... 424 STEP1. 회원 가입 페이지의 원리 ... 424 회원 테이블 작성하기 ... 425 STEP2. 회원 정보 관리 빈즈 파일 만들기 ... 426 KoreanDecoding 클래스 ... 427 Member 클래스 ... 428 MemberManager 클래스 ... 431 Day24. 회원 가입 페이지 작성하기 Ⅱ ... 442 STEP1. 회원 정보 입력 페이지(register.jsp) ... 442 STEP2. 아이디 중복 체크 페이지(idcheck.jsp) ... 449 STEP3. 우편 번호 검색 페이지 ... 452 STEP4. 회원 정보 저장하기(register_act.jsp) ... 458 Day25. 회원 가입 페이지 작성 Ⅲ ... 460 STEP1. 로그인 처리 페이지(login.jsp) ... 460 STEP2. 로그인 정보 처리하기(login_act.jsp) ... 462 STEP3. 회원 페이지(main.jsp) ... 463 STEP4. 로그아웃 페이지(logout.jsp) ... 466 STEP5. 회원 정보 수정 페이지(modify.jsp) ... 466 STEP6. 수정된 정보 저장하기(modify_act.jsp) ... 468 STEP7. 회원 탈퇴(delete.jsp) ... 469 Day26. 답변형 게시판 만들기 Ⅰ ... 472 STEP1. 답변형 게시판의 원리 ... 472 STEP2. 답변형 게시판의 구성 파일과 역할 ... 475 STEP3. 게시판 테이블 작성하기 ... 476 STEP4. 답변형 게시판 빈즈 클래스 ... 479 Article 클래스 ... 480 Admin 클래스 ... 483 BoardManager 클래스 ... 483 Day27. 답변형 게시판 만들기 Ⅱ ... 492 STEP1. 게시물 작성 페이지(write.jsp) ... 492 STEP2. 입력된 게시물 저장 페이지(write_act.jsp) ... 496 STEP3. 게시판 리스트 보기(list.jsp) ... 497 STEP4. 게시물 읽기(read.jsp) ... 501 Day28. 답변형 게시판 만들기 Ⅲ ... 506 STEP1. 답변 등록(reply.jsp) ... 506 STEP2. 답변 처리 페이지(reply_act.jsp) ... 508 STEP3. 게시물 삭제 페이지(delete.jsp) ... 508 STEP4. 삭제 처리 페이지(delete_act.jsp) ... 511 STEP5. 게시물 수정(modify.jsp) ... 512 STEP6. 수정된 게시물 처리(modify_act.jsp) ... 514 STEP7. 관리자 로그온 페이지(admin.jsp) ... 516 STEP8. 관리자 로그인 처리(admin_act.jsp) ... 518 STEP9. 관리자 페이지(admin_list.jsp) ... 519 STEP10. 관리자 처리 페이지(admin_delete.jsp) ... 523 Day29. 파일 업로드 페이지 작성하기 ... 524 STEP1. multipartRequest 설치하기 ... 524 STEP2. 간단한 파일 업로드 페이지 작성하기 ... 527 STEP3. 여러 개의 파일을 동시에 업로드하기 ... 530 Day30. 자료실을 만들자 ... 534 STEP1. 자료실 만들기 ... 534 STEP2. 자료실 테이블 작성하기 ... 534 STEP3. 파일 업로드 페이지(upload.jsp) ... 536 STEP4. 파일 업로드 처리 페이지(upload_form_act.jsp) ... 539 STEP5. 업로드 파일 다운로드 받기 (file_list.jsp) ... 541 Appendix EditPlus 설치 및 사용법 ... 545 STEP1. EditPlus 프로그램 구하기 ... 545 STEP2. EditPlus 프로그램 설치 ... 547 STEP3. EditPlus 사용법 ... 547