자바 서블릿(JAVA Servlet)은 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며, 흔히 "서블릿"이라 불린다. 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종이다.
서블릿은 JSP와 비슷한 점이 있지만, JSP가 HTML문서 안에 JAVA 코드를 포함하고 있는 반면, 서블릿은 자바 코드 안에 HTML을 포함하고 있다는 차이점이 있다.
서블릿 만들어 보기.
Java Resources 에서 만든다.
그런데 JSP 자바웹프로젝트에서 사용되는 모든 자바클래스는 패키지가 없으면 안된다.
그래서 저는 src 밑에 myservlet 이라는 패키지를 만들었습니다.
패키지 안에 클래스를 만들고, 우리가 만든 서블릿이 어떤 요청을 받아 들일지는 web.xml에 기술하면된다.
**web.wml 은 최초 프로젝트를 만들때 프로젝트 이름 적고 next,next 하다보면 web.xml 체크하는 박스가 나온다 거기서 체크해주고 프로젝트 생성해주면 프로젝트 안에 lib 밑에 생성된다.
*web.wml이란 파일은 웹어플리케이션에 대한 전반적인 설정 정보를 담는 파일.
이어서 서블릿 만드는방법으로
☆첫번째
-모든 서블릿은 HttpServlet이라는 클래스를 상속받음으로써 서블릿으로서의 구실을 할 수 있다.
☆두번째
-web.xml에 서블릿 등록하기.
helloServlet이라는 이름으로 아까 만든 myservlet패키지의 HelloServlet을 우리 웹어플리케이션에 등록.
☆세번째
-방금 등록한 서블릿이 처리할 요청URL 매핑(mapping)
HelloServlet 이라는 클래스가
{contextPath}/hello라는 요청을 처리하겠다.
{서버가도는호스트명}/JSP_Basic/hello 라고 요청하면 저 서블릿이 처리한다.
여기서 JSP_basic은 프로젝트명임.
☆네번째
-요청이 들어왔을때 어떻게 응답할지 기술.
Http에서 request요청은 크게 두가지로 있다.
GET / POST
마우스 오른쪽 누르고 source 들어가서 Override/implment Method 들어가 보시면
do시리즈들이 요청에 대해 응답을 구현할 수 있는 함수들이 있다.
각 함수들은 매개 변수로 request와 response기본객체가 있는데 거기에는 각 request/response 기본객체가 들어온다.
doGet 메소드를 클릭해서 작성해보자.
public class HelloServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// FIXME Auto-generated method stub
// super.doGet(req, resp);
PrintWriter pw = resp.getWriter();
pw.println("<html>");
pw.println("<head><title>직접만든서블릿</title></head>");
pw.println("<body>");
pw.println("Hello World <br> Welcome to hell <br>");
pw.println("This is Servlet Version <br>");
pw.println("Your IP Address is " + req.getRemoteAddr());
pw.println("</body>");
pw.println("</html>");
}
}
HTML형식으로 작성해주시고~
실행해보실때는
프로젝트 우클릭 → run → run on server
'[JSP]' 카테고리의 다른 글
[JSP]10월 27일 쿠키(Cookie), 쿠키 만들기, 쿠키읽기, 쿠키삭제 예제 (0) | 2015.10.29 |
---|---|
[JSP]10월 27일 forward,form을 이용한 로그인 예제 (0) | 2015.10.29 |
[JSP]10월 23일 JSP웹 어플리케이션 프로젝트 만들기 (0) | 2015.10.23 |
[JSP]10월 23일 이클립스(eclipse) 톰캣(Tomcat) 연동하는법 (0) | 2015.10.23 |
[JSP]10월 23일 웹 어플리케이션 기초, JSP (0) | 2015.10.23 |