본 고 는 자바 Servlet 프로 그래 밍 에 필요 한 소프트웨어 와 환경 설정 을 소개 한다.윈도 95/98 이 설 치 된 PC 기기 만 있 으 면 본 고의 절차 에 따라 Servlet 프로그램 을 개발 할 수 있다.본 고 는 자바 Servlet 을 통 해 사용자 의 하 드 디스크 에 쿠키 를 기록 하고 읽 는 방법 과 예 를 제시 했다.이 를 통 해 인터넷 에서 흔히 볼 수 있 는 맞 춤 형 홈 페이지,인터넷 쇼핑 바구니,비밀번호 검증 등 을 실현 할 수 있다.자바 Servlet 은 웹 서버 에서 실행 되 는 자바 코드 로 사용자 의 요청 을 받 아들 여 해당 하 는 처 리 를 하고 사용자 에 게 피드백 을 제공 할 수 있 습 니 다.CGI 프로그램 과 유사 하 게 웹 페이지 의 많은 상호작용 효 과 를 실현 할 수 있 지만 CGI 프로그램 보다 효율 이 높다.쿠키 는 사용자 가 웹 서버 를 방문 할 때 웹 서버 가 사용자 컴퓨터 의 특정 디 렉 터 리 에 기록 하 는 짧 은 정보 로 자바 서 블 릿 에서 쿠키 클래스 를 제공 하여 쿠키 를 조작 할 수 있다.특정 시점 에 쿠키 를 사용자 컴퓨터 에 기록 하고 필요 할 때 다시 꺼 내 사용 할 수 있 습 니 다.1.소프트웨어 는 PC 기 를 다운로드 하고 윈도 95/98 을 설치 하 며 IP 주소 가 있 습 니 다(없 으 면 아무 거나 맞 출 수 있 습 니 다).개발 소프트웨어 는 두 가지 가 있 는데 그것 이 바로 JDK 1.3 과 JSWDK 1.0.1 이다.도착 하 다http://java.sun.com,"Products&API"링크 를 클릭 하면 다운로드"JavaTM 2 SDK,Standard Edition,v 1.3 을 클릭 할 수 있 습 니 다.다운로드 한 파일 을 컴퓨터 에 설치 하 세 요.JSWDK 1.0.1 763,414 bytes 만 있 습 니 다.http://java.sun.com/products/jsp/download.html다운로드다운로드 한 jswdk 10_1-win.zip 는 Winzip 소프트웨어 로 특정한 디 렉 터 리 로 압축 을 풀 었 습 니 다.예 를 들 어 d:app,이 디 렉 터 리 에서 자동 으로 하위 디 렉 터 리 를 만 듭 니 다:jswdk-1.0.1.이때 JSWDK 1.0.1 은 d:appjswdk-1.0.1 디 렉 터 리 에 설치 되 어 있 습 니 다.2.JSWDK 1.0.1 을 시작 하여 DOS 창 을 엽 니 다.아래 그림 에서 창 왼쪽 상단 DOS 아이콘 을 클릭 하고 속성 메뉴 를 선택 한 다음 에 나타 나 는 창 에서'메모리'를 클릭 하고'초기 환경'후의 드 롭 다운 메뉴 에서'자동'을 2816 으로 바 꾸 고'exit'단 추 를 누 르 면 창 에서 나 와 DOS 창 으로 다시 들 어 갑 니 다.이 설정 은 한 번 만 하면 됩 니 다.이 DOS 창 에서 다음 DOS 명령 을 실행 하여 환경 변 수 를 설정 합 니 다:set CLASSPATH=c:jdk 1.3bin;. set path=c:jdk1.3bin;c:windows;c:windowscommand 는 JDK 1.3 과 Windows 운영 체제 가 다른 디 렉 터 리 에 설치 되 어 있다 면 DOS 명령 의 디 렉 터 리 이름 을 수정 해 야 합 니 다.그리고 이 DOS 창 에서 JSWDK 1.0.1 설치 디 렉 터 리(예:d:appjswdk-1.0.1)에 CD 명령 으로 들 어가 startserver.bat 를 실행 하면 됩 니 다.주의:JDK 1.3,즉 본 논문 에서 말 한 환경 에 대해 startserver.bat 를 수정 해 야 합 니 다.원본 파일 의 start java com.sun.web.shell.Startup%1%2%3%4%5%7%8%9 remi java com.sun.web.shell.Startup%1%2%3%4%5%6%7%9 을(를)remi start java com.sun.web.shell.Startup%1%2%3%4%5%6%7%8%9 java com.sun.web.shell.Startup%1%2%3%4%5%6%8%9 을(를)오래된 버 전 으로 사용한다 면의 JDK 1.2,startserver.bat 를 수정 할 필요 가 없습니다.실행 하면 다른 DOS 창 이 나타 납 니 다.실행 후 문자열 을 표시 합 니 다.마지막 으로 endpoint created:localhost/127.0.1:8080 을 표시 합 니 다.정상 가동 완료.그러나 데이터베이스 중국어 필드 와 중국어 값 조 회 는 지원 되 지 않 습 니 다.브 라 우 저 를 엽 니 다.입력:http://기계 IP 주소:8080,이 때 브 라 우 저 에 결 성 된 페이지 가 표 시 됩 니 다.이 페이지 에서 Servlet 예 를 볼 수 있 습 니 다.자바 Servlet 에 서 는 Cookie 류 를 제공 합 니 다.구조 기 는 두 개의 매개 변수 가 있 는데 각각 Cookie 의 이름과 값 을 대표 합 니 다.쿠키 클래스 에 서 는 setMaxAge()방법 을 통 해 쿠키 의 생존 시간 을 설정 할 수 있 는 다양한 방법 으로 쿠키 의 속성 을 설정 합 니 다.생존 시간 이 마이너스 일 경우 브 라 우 저가 쿠키 를 닫 으 면 사라 집 니 다.생존 시간 은 0 으로 쿠키 삭제,생존 시간 은 양수 로 쿠키 가 몇 초 동안 존재 하 는 지 를 나타 낸다.또한 Servlet 의 HttpServletResponse 클래스 는 addCookie()방법 을 제공 하여 만 든 Cookie 를 사용자 컴퓨터 에 기록 할 수 있 습 니 다.다음 코드 는 사용자 의 컴퓨터 에 두 개의 Cookie 를 기록 할 수 있 습 니 다.하 나 는 my 1 이 고 값 은 hi1 이 며 다른 하 나 는 my 2 이 며 값 은 hi2 import javax.servlet 입 니 다.*; import javax.servlet.http.*; import java.io.*; public class xx extends HttpServlet { public void service(HttpServletRequest rq, HttpServletResponse rp) throws ServletException,IOException { Cookie c; c=new Cookie("my1","hi1"); c.setMaxAge(100*60); rp.addCookie(c); c=new Cookie("my2","hi2"); c.setMaxAge(-1); rp.addCookie(c); }이 프로그램 에 서 는 Cookie c=new Cookie("my 1","hi1")를 사용 합 니 다.실제로 두 쌍 의 문자열 인 Cookie 를 만 들 었 습 니 다.첫 번 째 문자열 은 Cookie 의 이름 을,두 번 째 문자열 은 Cookie 의 값 을 나 타 냅 니 다.그리고 rp.addCookie(c)를 사용 합 니 다.사용자 의 컴퓨터 에 기록 합 니 다.Cookie my 1 의 생존 시간 은 100*60 초 즉 100 분 이 며,my 2 는 브 라 우 저 를 닫 을 때 자동 으로 사라 집 니 다.앞의 DOS 창 에 명령 을 입력 하 십시오:set path=c:jdk 1.3bin;c:windows;c:windowscommand set CLASSPATH=c:jdk1.3bin;d:appjswdk-1.0.1libservlet.jar 는 환경 변 수 를 설정 합 니 다.javac xx.java 컴 파일 자바 프로그램 copy*.class D:appjswdk-1.0.1examples WEB-INFservlets 는 컴 파일 된 프로그램 을 자바 Servlet 실행 디 렉 터 리 로 복사 합 니 다.*기 존 버 전의 JDK 1.2 를 사용 하면 자바 Servlet 프로그램 을 실행 하기 위해 서 는 파일 을 수정 해 야 합 니 다.D:appjswdk-1.0.1examples WEB-INFservlets.properties 는 텍스트 편집기 로 파일 을 엽 니 다.마지막 으로 몇 줄 을 추가 합 니 다:xx.code=xx xx.initparams=foo 는 브 라 우 저 에 http:/기계 의 IP 주 소 를 입력 하 십시오:8080/examples/servlet/xx 는 사용자 의 컴퓨터 에 Cookie 를 기록 할 수 있 습 니 다.HttpServletRequest 클래스 의 getCookies()방법 을 통 해 해당 사용자 로부터 Cookie 목록 을 읽 어 쿠키 형식의 배열 에 넣 을 수 있 습 니 다.각 Cookie 의 getName()과 getValue()방법 을 통 해 각 Cookie 의 이름과 값 을 얻 을 수 있 습 니 다.다음 예 는 Servlet 이 있 는 서버 가 사용자 기기 에 기록 한 Cookie 이름과 값 의 목록 을 출력 할 수 있 습 니 다.my 1 이라는 쿠키 가 있 으 면 그 값 에 문자 x 를 추가 합 니 다.쿠키 가 생존 하 는 동안 사용자 의 방문 사 서 를 간단하게 집계 할 수 있 는 카운터 와 유사 하 다. import javax.servlet.*; import javax.servlet.http.*; import java.io.*; public class yy extends HttpServlet { Cookie x[]; public void service(HttpServletRequest rq, HttpServletResponse rp) throws ServletException,IOException { int have=0; Cookie c;