>  기사  >  Java  >  Java myeclipse를 사용하여 서블릿을 생성하는 방법에 대한 그래픽 튜토리얼

Java myeclipse를 사용하여 서블릿을 생성하는 방법에 대한 그래픽 튜토리얼

黄舟
黄舟원래의
2017-07-26 15:15:292369검색

이 글은 주로 서블릿을 생성하기 위한 myeclipse 관련 정보를 소개하고 있습니다. 관심있는 친구들은 참고하시면 됩니다.

이제 아래 그림과 같이 [myservlet]이라는 웹 애플리케이션을 만들어 보겠습니다.

프로젝트 창을 보면 웹 프로젝트를 생성하기만 하면 자동으로 [WEB-INF] 디렉터리가 생성되고, 그 아래에 [lib] 디렉터리와 web.xml 파일이 생성되는 것을 볼 수 있습니다. 방금 생성한 web.xml 파일의 내용을 살펴보겠습니다.

Web.xml 파일은 홈페이지만 설정합니다. 왜 이것을 먼저 살펴보나요?

물론 "서블릿 학습(1)"의 메소드에 따라 서블릿을 구축할 수 있습니다. 즉, 서블릿 구현 클래스 GenericServelet을 상속하는 클래스를 생성하고, service() 메소드를 재정의하고, 이 서블릿을 웹에서 구성할 수 있습니다. .xml 파일.

하지만! ! ! GenericServelet 클래스를 상속받는 방식을 사용하지 않고, GenericServelet 클래스의 하위 클래스인 HttpServlet 클래스를 상속받습니다. 이렇게 하면 어떤 이점이 있나요? HttpServlet은 HTTP 요청을 처리할 수 있는 서블릿을 말하며 원래의 서블릿 인터페이스에 일부 HTTP 프로토콜 처리 방법을 추가하여 서블릿 인터페이스보다 강력하므로 HttpServlet 클래스만 상속하면 됩니다. MyEclipse에서 웹 프로젝트용 Servlet을 생성하면 아래 그림과 같이 기본적으로 HttpServlet에서 생성한 Servlet을 MyEclipse가 상속하는 것을 볼 수 있습니다.

[Servlet]을 선택하고 팝업하고 패키지 이름과 내가 만들고 싶은 서블릿 이름: SecondServlet, 아래와 같이:

MyEclipse가 자동으로 HttpServlet으로 만들고 싶은 서블릿의 상위 클래스를 선택하는 것을 볼 수 있습니다.

상속할 서블릿 상위 클래스로 HttpServlet 클래스를 선택하면 HttpServlet 클래스가 service() 메서드를 재정의했음을 알아야 합니다. 이 메서드의 코드는 사용자의 요청 메서드가 GET인지 자동으로 결정합니다. 요청에 대해 HttpServlet의 doGet() 메소드를 호출하고, POST 요청인 경우 doPost() 메소드가 호출되므로 개발할 때 doGet() 메소드 또는 doPost() 메소드만 재정의하면 됩니다. service() 메서드를 재정의해야 합니다.

자세한 내용은 Servlet API 설명서의 HttpServlet에 대한 세부 정보를 참조하세요. doGet 메소드와 doPost 메소드를 확인하고, 실제 상황에 따라 다른 메소드를 추가합니다. 그런 다음 [다음]을 클릭하면 다른 설정 창이 나타납니다.

  [web.xml 파일 생성/매핑]: 생성된 서블릿을 web.xml 파일에 매핑하면 많은 작업을 절약할 수 있습니다. 서블릿을 web.xml 파일에 매핑하도록 선택하면 다음 사양에 따라 web.xml 파일에 매핑되는 콘텐츠를 설정할 수 있습니다.

 【Servlet/JSP 클래스 이름】: web.xml 파일의 b472d9135dbff3dd7fcc77f5995c97d0 태그에 있는 내용입니다.

 【Servlet/JSP 이름】: web.xml 파일의 700b5f17c4d842e4bd410f680f40946b 태그에 내용을 설정합니다.

 【Servlet/JSP 매핑 URL】: web.xml 파일의 870ae7edaa11700bcea972d006efb06e 태그 아래에 66e1775cbd9d5002635ae3285442ba88 태그의 내용을 설정합니다. 즉, 서블릿의 외부 액세스 경로를 설정합니다.

 【web.xml 파일 경로】: web.xml 경로는 일반적으로 설정할 필요가 없습니다.

 Finish를 클릭한 후 web.xml 파일을 살펴보겠습니다. 예, 방금 설정한 Servlet에서 web.xml 파일로의 매핑이 MyEclipse에 의해 web.xml 파일에 추가되었으므로 많은 비용이 절약됩니다. 문제의. 아래 그림과 같이:

Servlet의 콘텐츠를 살펴보겠습니다.

네, MyEclipse가 Servlet을 생성할 때 템플릿에 따라 생성하기 때문입니다. 여기에서 이들을 분리할 수 있습니다. 필요한 코드가 먼저 제거되고 마지막 부분에서는 MyEclipse에서 Servlet 템플릿을 수정하는 방법을 설명하겠습니다.

이런 HttpServlet을 상속받은 서블릿 개발에서는 doGet 메소드와 doPost 메소드만 신경쓰는데, http 요청이 언제 GET 메소드인지, 언제 POST 메소드인지 모르시는 분들을 위해 다음과 같이 " GET 요청 또는 POST 요청을 동시에 처리하는 방법:

 

방금 HttpServlet의 service() 메소드가 상위 클래스 GenericServlet의 service() 메소드를 덮어썼다고 언급했습니다. 그러면 HttpServlet의 service() 메소드를 살펴보고 HttpServlet에 커서를 클릭한 다음 키보드를 누르십시오. "F3" 키를 누르면 다음이 표시됩니다.

서블릿의 jar 패키지 소스 코드가 누락되었습니다. 여기에는 두 가지 해결 방법이 있습니다.

  1. sun 공식 웹사이트 또는 oracle 공식 웹사이트에서 Servlet 소스 코드를 다운로드합니다.

2. Apache-Tomcat 공식 웹사이트 Tomcat 소스 코드에서 다운로드합니다. 여기서는 다음 방법을 선택합니다.

zip 형식을 선택하세요(tar.gz는 Linux용인 것 같습니다).

다운로드하고 압축을 풀면 디렉토리 뒤에 "src"라는 단어가 표시됩니다:

전체 디렉토리를 가져오기 때문에 MyEclipse에서 "소스 첨부"를 클릭할 수 있으므로 "외부 폴더"를 선택하고 가져오기 그 후에는 HttpServlet의 소스 코드와 해당 service() 메서드를 볼 수 있습니다. 코드가 길어서 여기에 첨부하지 않겠습니다. 그러나 먼저 요청 개체인 HttpServletRequest의 요청 메서드를 얻은 다음 판단에 사용하는 것이 좋습니다. 각 요청에 대해 이를 호출합니다. doGet 메소드 또는 doPost 메소드와 같은 다른 메소드.

다음으로 방금 생성한 서블릿으로 안전하게 돌아가서 doGet 메서드에 코드를 작성할 수 있습니다. 우리는 간단히 클라이언트에 일부 데이터를 포함하는 간단한 반환을 작성하겠습니다.


public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    
    OutputStream out = response.getOutputStream();
    out.write("Hello servlet again !".getBytes());
    
  } 

그런 다음 서버를 시작하고 다음과 같은 좋은 서블릿을 작성합니다. 가 출시되었습니다

마지막으로 브라우저에서 볼 수 있습니다.

 

  주소 표시줄에 호스트 주소와 포트(있는 경우)를 입력한 후 web.xml이 별도로 설정되지 않은 경우 다음은 다음과 같습니다. web.xml 파일에서 서블릿에 대해 설정한 웹 프로젝트 이름과 외부 액세스 경로입니다.

위 내용은 Java myeclipse를 사용하여 서블릿을 생성하는 방법에 대한 그래픽 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.