스프링 부트 환경에서 서블릿을 등록하고 사용해 보자!
스프링 부트는 서블릿을 직접 등록해서 사용할 수 있도록 @ServletComponentScan을 지원한다.
이 애노테이션을 사용하면 서블릿을 자동 등록 해 준다.
@ServletComponentScan
@SpringBootApplication
public class ServletApplication {
public static void main(String[] args) {
SpringApplication.run(ServletApplication.class, args);
}
}
서블릿을 등록해 보자
@WebServlet(name = "helloServlet", urlPatterns = "/hello")
public class HelloServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
System.out.println("HelloServlet.service");
System.out.println("request = " + request);
System.out.println("response = " + response);
String username = request.getParameter("username");
System.out.println("username = " + username);
response.setContentType("text/plain");
response.setCharacterEncoding("utf-8");
response.getWriter().write("hello " + username);
}
}
@WebServlet 애노테이션을 통해 등록한다 name으로 서블릿 이름을 지정해 주고 urlPatterns에 서블릿 함수가 실행될 url을 지정해 준다. 저 url에 방문하면 service함수가 실행된다.
service함수는 protected를 선택해야한다.
주소창에 localhost:8080/hello?username=kim을 넣어주면 service함수 네에 request.getParameter함수를 통해 username변수의 값을 받아올 수 있다.
그리고 response객체의 setContentType함수를 통해 클라이언트로 보낼 데이터 타입을 지정해 주고 setCharacterEncoding함수를 통해 형식을 지정해 주고 getWriter().write함수를 통해 데이터를 보내준다.
그러면 페이지에 hello kim이라는 text가 나오게 된다.
출처 : 스프링MVC 1편 - 백엔드 웹 개발 핵심 기술 김영한
'스프링MVC' 카테고리의 다른 글
JSP 사용하기 (0) | 2023.08.02 |
---|---|
HttpServletResponse 사용 (0) | 2023.08.02 |
HTTP 요청 데이터 (0) | 2023.08.02 |
멀티 쓰레드 (0) | 2023.07.31 |
웹 애플리케이션과 서블릿 (0) | 2023.07.31 |