▶ 간단한 Servlet
▷ get 방식
데이터가 보인다
Query String(주소표시줄에 통해서 이동)
default
문자열 처리만 가능
▷ post 방식
데이터가 안보인다(내부적으로 처리)
페이지 단위 - 대량의 데이터를 이동시킬 수 있다
클라이언트가 post 요청시 가능
1. class앞에 반드시 public 를 붙여야 한다
2. main() 메소드가 없다
javax 는 오라클이 아닌 타사방식을 가져온 것.
servlet을 쓰려면
http servlet을 사용
service()메소드를 오버라이드 하지 않는다.
doGet() doPost()를 오버라이드 한다.
C:\Tomcat 7.0\webapps\study\WEB-INF\classes
여기에 HelloServlet.java를 만든다.
//톰켓의 path 설정
CLASSPATH 에
C:\Tomcat 7.0\lib\servlet-api.jar;
을 추가해준다.
(이클립스설정이다.)
===========
에디트플러스에서 사용
C:\Tomcat 7.0\lib\servlet-api.jar
-> C:\Program Files\Java\jdk1.6.0_29\jre\lib\ext 폴더로 복사
* 권장하는 방법은 아닙니다.
*주의* *.class 파일을 수정하면 톰캣을 재실행 해야만 한다.
http://tomcat.apache.org/tomcat-7.0-doc/servletapi/index.html
톰캣의 document에서 servlet javadoc을 본다.
HttpServlet 페이지
http://tomcat.apache.org/tomcat-7.0-doc/servletapi/javax/servlet/http/HttpServlet.html
HttpServlet 클래스에 구현이 되어있다.
doGet과 doPost클래스를 복사해오자.
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException, ServletException {
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
out.println("Hello Servlet!!");
out.println("</html>");
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws IOException, ServletException {
doGet(req, resp);
}
8080/study/WEB-INF/classes/HelloServlet
로 실행이 되어야하는데 404에러가 뜬다. 이는 servlet이 막아둬서 보안을 유지하기 위함이다.
http://localhost:8080/study/WEB-INF/classes/HelloServlet 실행시는 확장자 생략
-> http://localhost:8080/study/servlet/HelloServlet 로 실행해야만 한다.
C:\Tomcat 6.0\conf\context.xml <Context reloadable="true" privileged="true"> 로 수정
C:\Tomcat 6.0\conf\web.xml 126, 386번째 줄 주석풀기
404 error -> 사용자 실수. 오타. 주소 오류
( 500 서버측 문제, 405 서비스 문제 )
* Tomcat 7.0 *
7.0 버전에서는 주석을 풀 수 없다.
context의 web.xml에 써 넣어줘야 한다.
<servlet>
<display-name>HelloServlet</display-name>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern> //여기에 aaa로 이름을 바꿔적으면 위의 class에 맵핑이되어있어서 실행이된다.
</servlet-mapping>
C:\Tomcat 7.0\webapps\study\WEB-INF
폴더의 xml을 editplus로 수정한다.
톰캣을 껏다가 켜고
http://localhost:8080/study/HelloServlet
을 시작하면 된다.
'개인 공부방 > JSP' 카테고리의 다른 글
person.html 만들기 (0) | 2011.12.07 |
---|---|
자바-eclipse 에서 html 설정 및 기본실행 (0) | 2011.12.07 |
html 기본문법2 (0) | 2011.12.06 |
html 기본문법 (0) | 2011.12.06 |
교재 (0) | 2011.12.06 |