반응형

#9강 서블릿(Servlet) 문자열 출력

*서블릿 문자열 출력방법

- 웹이란 서버에서 클라이언트로 원격에 있는곳에 출력 결과를 보여주는 것. 또는 클라이언트로부터 입력을 받을수있는 원격으로부터 입력받는 방법을 다루는 것.

- 소스코드 수정, 컴파일 재 실행, 배포 재 실행, 서버 재 실행, 브라우저에 주소입력하여 확인 하는 복잡한 절차를 진행해야 한다.  (이런 불편함을 해소하기 위해 통합개발환경인 이클립스 사용).

- 아래 소스코드(문자열 출력) Nana.java에 수정진행 > 콘솔 창 cmd 열어서 입력( 설치된 경로 d: > jsp > cd jsp > dir > javac -cp C:\tools\apache-tomcat-9.0.34\lib\servlet-api.jar Nana.java > startup 재 실행 > 브라우저에 localhost:8080/hello 입력하여 확인

- Stream을 사용하여 출력.

OutputStream os = response.getOutputStream(); 
PrintStream out = new PrintStream(os, true); 
out.println("Hello Servlet!!"); 

- Writer계열 사용하여 출력 (사용될수 있는 문자코드가 다국어 코드일 경우) 

PrintWriter out = response.getWriter(); 
out.println("Hello Servlet!!"); 

 

#10강 웹 개발을 위한 이클립스 IDE 준비하기.

*이클립스 IDE

- 기존에 코드수정 시 코드수정, 컴파일, 배포, 톰캣 서버 재시작, 브라우저로 요청을 각각 진행해줬어야 했다.

- 이클립스 IDE 사용 시 Ctrl + F11로 위 과정을 한번에 끝낼 수 있다.

 

*이클립스 설치 및 설정방법

- www.eclipse.org > downloads > Eclipse IDE for Enterprise java developers > 운영체제에 따른 버전 설치

- eclipse.exe 파일 실행 > Workspace 생성 > 원하는 위치로 지정

- Workspace 변경 희망 할 경우 File > Switch Workspace > Other 눌러서 변경

- File > New > Web > Dynamic Web Project > name 입력 > 밑에 Target runtime(WAS 선택하는 곳 (보통 톰캣 9.0)) > Browse 눌러서 톰캣 위치 입력(C:\tools\apache-tomcat-9.0.34)

- 폰트설정방법 : 상단에 Window > preferneces > General > Appearance > Colors and Fonts > Text Font 클릭 후 next 눌러서 원하는 설정으로 변경

 

#11강 이클립스를 이용한 서블릿 프로그래밍

*html 문서 만들기

- 기존에 만든 프로젝트 파일에서 WebContent는 홈 디렉터리를 의미한다.

- 홈 디렉터리에 서블릿 파일이 아닌 파일 생성하여 body에 값 입력 후 Ctrl + F11 로 실행 시 오류 발생(8080 오류(포트 충돌)는 톰캣 startup이 실행되어있는 경우 발생), 톰캣 종료 후 재 진행 시 정상작동, 보통 이클립스 자체적으로 브라우저 실행( 사용자가 어떤 브라우저를 사용하는지 모르기 때문에 실행 환경도 정해져있음 )

- 외부 브라우저를 사용하길 희망할 경우 상단에 Windows > Web Browser > 희망하는 브라우저 선택

 

*Root 프로젝트가 되도록 하는 방법

- 프로젝트명 우클릭(JSPJpj) > properties > Web Project Settings > Context root 명을 / 로 변경

- 하단 Console 중지 > 하단 Servers탭에서 기존 Context 명으로 된 것 삭제 > index.html 선택하여 Ctrl + F11 재 실행

 

*서블릿 만들기

- 왼쪽 프로젝트명 > Java Resources > src > new > class > class name : Nana, package : com.newlecture.web

- 만들어진 Nana.java에 public class Nana extends HttpServlet 으로 변경

- service 함수 오버라이드 진행

public class Nana extends HttpServlet { 
@Override 
protected void service(HttpServletRequest req, HttpServletResponse) { 

printWriter out = resp.getWriter(); 
out.println("Hello ~~~~ "); 
  } 
} 
반응형

+ Recent posts