웹은 서버에서 클라이언트로 즉 원격으로 출력결과를 보내고 입력을 받는다.
Servlet 문자열 출력
1. Nana.class를 수정한다.
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class Nana extends HttpServlet
{
public void service(HttpServletRequest request
, HttpServletResponse response)
throws IOException, ServletException
{
OutputStream os = response.getOutputStream();
PrintStream out = new PrintStream(os,true);
out.println("Hello Servlet!!");
}
}
HttpServletRequest : 서블릿을 만들 때 필요한 요청도구
HttpServletResponse : 서블릿의 출력도구
OutputStream os = response.getOutputStream();
PrintStream out = new PrintStream(os,true);
OutputStream을 이용하여 PrintStream 객체를 생성, PrintStream은 다양한 데이터 타입을 문자열로 출력할 수 있는 편리한 메서드를 제공한다. 이 생성자의 두 번째 인자로는 autoFlush를 나타내며, true로 설정하면 println() 메서드 호출 시 자동으로 버퍼를 비워내어 데이터를 출력합니다.
2. 다시 cmd에 해당 명령어 실행

3. 수정된 Nana.class파일을 D:\dev\tools\apache-tomcat-9.0.86\webapps\ROOT\WEB-INF\classes로 가서 덮어쓴다.
4. 톰캣 재실행
5. 브라우저에서 http://localhost:8080/hello 실행 , 클라이언트단에 출력되는 것을 확인

즉 코드수정 - 컴파일 - 배포 - 톰캣 서버 재시작 - 브라우저 요청 의 순서를 갖는다.
참고) outputStream 대신 Writer를 쓴 이유 : 다국어가 가능
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class Nana extends HttpServlet
{
public void service(HttpServletRequest request
, HttpServletResponse response)
throws IOException, ServletException
{
PrintWriter out = response.getWriter();
out.println("Hello Servlet!!");
}
}
이클립스 사용해 문자열 출력
웹 개발에서는 서블릿 코드를 효율적으로 관리하기 위해 프로젝트 파일 또는 프로젝트 정보 파일을 사용한다.
이 파일에는 프로젝트의 구조, 컴파일된 내용, 문서화된 내용 등이 포함된다. 이 정보를 프로젝트 관리 도구나 IDE에서 사용하여 프로젝트를 관리하고 지원한다 이를 통해 개발자는 프로젝트를 보다 효율적으로 관리하고 작업할 수 있다.
코드수정 - 컴파일 - 배포 - 톰캣 서버 재시작 - 브라우저 요청 의 순서가
코드 수정 + Ctrl + F11 로 완료된다. 따라서 수정이 용이하다.
이클립스로 Servlet 생성 및 동적 페이지 요청하기 과정은 이렇다.
위를 참고한 나의 코드
WEB-INF에 web.xml 복붙하고 Source에서 코드 수정
* com.servlet.web 는 pacakge
<servlet>
<servlet-name>na</servlet-name>
<servlet-class>com.servlet.web.Nana</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>na</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
public class Nana extends HttpServlet{
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter out = resp.getWriter();
out.println("Hello!! sarah");
}
}
참고 자료 출처 :
https://www.youtube.com/watch?v=sF4wwzlj_yQ&list=PLq8wAnVUcTFVOtENMsujSgtv2TOsMy8zd&index=9
https://www.youtube.com/watch?v=0fASNgpvkOQ&list=PLq8wAnVUcTFVOtENMsujSgtv2TOsMy8zd&index=12
'서블릿 JSP' 카테고리의 다른 글
입력 데이터 배열로 받기 (0) | 2024.02.21 |
---|---|
GET요청 & POST요청 & 서블릿 필터 (0) | 2024.02.20 |
Servlet 출력 형식의 이해 (0) | 2024.02.20 |
Annotation을 이용한 Servlet과 URL 매핑 (0) | 2024.02.20 |
Servlet 프로그램 만들기 (0) | 2024.02.20 |