ervlet 요약
1. 서블릿은 서버 측에서 사용자 요청을 처리하는 역할을 담당합니다. 클라이언트가 서버에 요청을 보내면 서버는 web.xml 구성 파일을 통해 해당 서블릿을 찾아서 처리합니다. 요청. 서블릿은 URL에 바인딩되어야 하며 사용자는 URL에 액세스하여 서블릿에 액세스합니다.
2. 서블릿을 구현하는 세 가지 방법
Java.servlet.Sertvlet 클래스
Java .servlet.GenericServlet 클래스
Java.servlet.HttpServlet 클래스
3. 서블릿 인터페이스의 메소드
//초기화
void init(ServletConfig 구성)
void service(ServletRequest 요청,ServletResponse 응답)
//Destroy
void destroy()
String getServletInfo()
ServletConfig getServletConfig()
클라이언트가 요청을 보내고, 서버는 URL을 통해 해당 서블릿을 찾습니다. 객체가 존재하지 않으면 서버는 서블릿 객체
를 생성합니다. 객체 생성 후 서버는 즉시 init(ServletConfig config)를 호출하여 초기화 작업을 완료한 다음 서버는
을 호출합니다. 서블릿의 서비스(ServletRequest req, ServletResponse res) 메소드에는 요청 및 응답 매개변수를 전달해야 합니다.
클라이언트가 이 서블릿에 다시 접근할 때 서블릿 객체가 이미 존재하기 때문에 생성되지 않습니다. 서블릿은 싱글톤입니다.
(참고: 싱글톤 패턴은 일반적으로 사용되는 소프트웨어 디자인 패턴입니다. 핵심 구조에는 싱글톤 클래스라는 특수 클래스만 포함되어 있습니다. 싱글톤 패턴은 시스템의 클래스가 하나의 인스턴스로 외부에서 쉽게 접근할 수 있어 인스턴스 수 제어가 용이하고 시스템 리소스가 절약됩니다. 시스템에 특정 클래스의 객체 하나만 존재하게 하려면 싱글톤 모드가 가장 좋습니다.
서버가 서블릿 개체를 삭제해야 하는 경우 먼저 destroy()를 호출하여 일부 리소스의 해제를 완료한 다음 개체를 삭제합니다.
4. web에서 서블릿을 구성합니다. xml
HelloWorldServlet
< ;servlet-class>
cn.edu.aynu.rjxy.servlet.HelloWorldServlet
HelloWorldServlet
< url-pattern>
/helloWorld
구성은 URL과 Serlvet을 함께 바인딩하는 것입니다. 사용자가 액세스하면 해당 Servlet을 찾아 요청 처리를 완료합니다.
5.ServletConfig: 서블릿 구성 객체와 해당 서블릿 구성 정보를 나타내는 init() 메서드의 매개변수
실제로 구성 정보는 web.xml 파일 ;요소.
servlet-class> cn.edu.aynu.rjxy.servlet.HelloServlet
ServletConfig 객체는 서버에서 생성되어, 서버가 init() 메소드를 호출하면 init() 메소드에 실제 매개변수로 전달됩니다.
에서 사용할 수 있습니다. init() 메소드.
(1) String getInitParameter(String name) : web.xml에 구성된 초기화 파라미터를 얻어오고, 파라미터 이름을 통해 파라미터 값을 얻어오는데 사용됩니다.
(2) 열거형 getInitParameterNames(): web.xml에 구성된 모든 초기화 매개변수 이름을 가져오는 데 사용됩니다.
(3) ServletContext getServletContext(): ServletContext 객체를 반환하는데 사용
(4) String getServletName(): web.xml에 구성된 Servlet의 이름, 즉 ,
;
실행 결과:
객체가 생성되고 즉시 초기화되었습니다.
school=aysfxy
major=java
class1=2
school=aysfxy
class1=2
major=java
school=aysfxy
major=java
class1=2
school=aysfxy
class1=2
major=java
6 . GenericServlet: javax.servlet.Servlet 인터페이스를 구현하는 추상 클래스입니다. 이 클래스를 상속하여 서블릿을 구현할 수도 있습니다.
클래스의 getServletContext(), getInitParameter() 및 기타 메소드를 직접 사용할 수 있습니다. 일부 초기화 매개변수 작업을 수행하려면
init(ServletConfig config) 메소드를 재정의하지 마세요. Write method init()
HttpServlet: HTTP 프로토콜 요청을 처리하는 데 특별히 사용되는 Servlet 클래스입니다. HttpServlet
을 상속하여 Servlet을 구현할 수 있습니다. 클라이언트가 보내는 요청 방법은 get과 post 두 가지뿐이므로 앞으로 이 작업을 수행할 것입니다. 따라서 이 두 가지 방법만 다시 작성하면 됩니다.
7.HttpServlet: HTTP 프로토콜 요청을 처리하는 데 특별히 사용되는 Servlet 클래스입니다. HttpServlet을 상속하여 Servlet을 구현할 수 있습니다.
이것이 가장 쉽습니다. 클라이언트가 보낸 요청은 가져오고 게시하는 두 가지 방법일 뿐이므로 앞으로 이 작업을 수행하는 것이 좋습니다.
따라서 이 두 가지 방법만 다시 작성하면 됩니다.