๐ ์๋ธ๋ฆฟ (Servlet)
โ ์คํ๋ง ๋ถํธ ์๋ธ๋ฆฟ ํ๊ฒฝ ๊ตฌ์ฑ
@ServletComponentScan // ์คํ๋ง์ด ํ์ ํจํค์ง์ ์๋ ์๋ธ๋ฆฟ์ ์๋์ผ๋ก ์ฐพ์ ๋ฑ๋กํด์ค
@SpringBootApplication
public class ServletApplication {
public static void main(String[] args) {
SpringApplication.run(ServletApplication.class, args);
}
}
- ์คํ๋ง ๋ถํธ๋ ์๋ธ๋ฆฟ์ ์ง์ ๋ฑ๋กํด์ ์ฌ์ฉํ ์ ์๋๋ก @ServletComponetScan ์ ๋ ธํ ์ด์ ์ ์ง์ํ๋ค.
โ ์๋ธ๋ฆฟ ๋ฑ๋ก
@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");
// HTTP ๋ฉ์ธ์ง ๋ฐ๋์ ๋ฐ์ดํฐ ๋ค์ด๊ฐ
response.getWriter().write("hello " + username);
}
}
- @WebServlet ์ ๋ ธํ ์ด์ ์ ์ฌ์ฉํด์ ์๋ธ๋ฆฟ์ ๋ฑ๋กํ ์ ์๋ค. ์ด๋ ์๋ธ๋ฆฟ์ ์ด๋ฆ๊ณผ URL ๊ฒฝ๋ก๋ฅผ ์ง์ ํด์ค ์ ์๋ค.
- HTTP ์์ฒญ์ ํตํด ๋งคํ๋ URL์ด ํธ์ถ๋๋ฉด ์๋ธ๋ฆฟ ์ปจํ ์ด๋๋ service ๋ฉ์๋๋ฅผ ํธ์ถํ๋ค.
โ HTTP ์์ฒญ ๋ฉ์ธ์ง ๋ก๊ทธ๋ก ํ์ธ
logging.level.org.apache.coyote.http11=debug
- application.properties ํ์ผ์ ์ ์ฝ๋๋ฅผ ์์ฑํด์ค๋ค.
- ์์ฒญ์ด ๋ค์ด์ค๋ฉด ์๋ฒ๊ฐ ๋ฐ์ HTTP ์์ฒญ ๋ฉ์ธ์ง์ ๋ฉํ ๋ฐ์ดํฐ ์ ๋ณด๋ฅผ ์ถ๋ ฅํ๋ค.
- ์ด์ ์๋ฒ์ ๋ชจ๋ ์ ๋ณด๋ฅผ ๋ค ๋จ๊ธฐ๋ฉด ์ฑ๋ฅ ์ ํ๊ฐ ๋ฐ์ํ ์ ์์ผ๋ฏ๋ก ๊ฐ๋ฐ ๋จ๊ณ์์๋ง ์ ์ฉํ๋ ๊ฒ์ด ์ข๋ค.
๐ ์๋ธ๋ฆฟ ์ปจํ ์ด๋ ๋์ ๋ฐฉ์

- ์คํ๋ง ๋ถํธ๊ฐ ๋ด์ฅ ํฐ์บฃ ์๋ฒ๋ฅผ ๋์์ฃผ๊ณ , ๋ด์ฅ ํฐ์บฃ ์๋ฒ๋ ์๋ธ๋ฆฟ ์ปจํ ์ด๋๋ฅผ ํตํด ์๋ธ๋ฆฟ์ ์์ฑํด์ค
- HTTP ์์ฒญ ๋ฉ์ธ์ง๊ฐ ๋ค์ด์ด
- ์๋ฒ๋ ๋ฉ์ธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก request, response ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด์ ์๋ธ๋ฆฟ์ service ๋ฉ์๋๋ฅผ ํธ์ถ
- ์๋ฒ๋ ์๋ธ๋ฆฟ์์ ์์ฑ๋ Response ๊ฐ์ฒด ์ ๋ณด๋ก HTTP ์๋ต ๋ฉ์ธ์ง๋ฅผ ์์ฑํด์ ์น ๋ธ๋ผ์ฐ์ ์ ์ ๋ฌ
๊ฐ์ ๋งํฌ
์คํ๋ง MVC 1ํธ - ๋ฐฑ์๋ ์น ๊ฐ๋ฐ ํต์ฌ ๊ธฐ์ - ์ธํ๋ฐ | ๊ฐ์
์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ ๋ ํ์ํ ๋ชจ๋ ์น ๊ธฐ์ ์ ๊ธฐ์ด๋ถํฐ ์ดํดํ๊ณ , ์์ฑํ ์ ์์ต๋๋ค. ์คํ๋ง MVC์ ํต์ฌ ์๋ฆฌ์ ๊ตฌ์กฐ๋ฅผ ์ดํดํ๊ณ , ๋ ๊น์ด์๋ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ก ์ฑ์ฅํ ์ ์์ต๋๋ค., -
www.inflearn.com
'Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring] MVC 1ํธ (3) - HTTP ์์ฒญ ๋ฐ์ดํฐ (0) | 2022.03.29 |
---|---|
[Spring] MVC 1ํธ (1) - ์น ์ ํ๋ฆฌ์ผ์ด์ ์ดํด (0) | 2022.03.28 |
[Spring] ํต์ฌ ์๋ฆฌ ๊ธฐ๋ณธ (9) - ๋น ์ค์ฝํ (0) | 2022.03.15 |