
1. # ์๋ธ๋ฆฟ??!!
1.0.1.
1.0.2. ์๋ธ๋ฆฟ์ ์๋ฒ ์ชฝ์์ ์คํ๋๋ฉฐ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๊ฒ๋ ๋์์ฃผ๋ ์๋ฐ ํด๋์ค์ ๋๋ค.
1.0.3. ์๋ธ๋ฆฟ์ ์๋ฐ ํด๋์ค์ด๋ฏ๋ก ์๋ฐ์ ์ผ๋ฐ์ ์ธ ํน์ง์ ๋ชจ๋ ๊ฐ์ง๊ณ ์์ต๋๋ค. ํ์ง๋ง ์๋ฐ์ ๋ฌ๋ฆฌ ์๋ธ๋ฆฟ์ ํฐ์บฃ๊ณผ ๊ฐ์ ์๋ธ๋ฆฟ ์ปจํ ์ด๋์์ ์คํ๋์ผ ํฉ๋๋ค.

1.0.4. ํด๋ผ์ด์ธํธ๊ฐ ์น ์๋ฒ์ ์์ฒญ์ ํ๋ฉด ์น ์๋ฒ๋ ๊ทธ ์์ฒญ์ ํฐ์บฃ๊ณผ ๊ฐ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ(WAS)์ ์์ํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด WAS ๋ ๊ฐ ์์ฒญ์ ํด๋นํ๋ ์๋ธ๋ฆฟ์ ์คํํฉ๋๋ค. ๊ทธ ํ ์๋ธ๋ฆฟ์ ์์ฒญ์ ๋ํ ๊ธฐ๋ฅ์ ์ํํ ํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ์ฌ ํด๋ผ์ธํธ์๊ฒ ์๋ตํ๊ฒ ๋ฉ๋๋ค.
1.0.5.
1.1. ์๋ธ๋ฆฟ์ ํน์ง
- ์๋ฒ์์ ์คํ๋๋ค.
- ์ ์ ์ธ ์น ํ๋ก๊ทธ๋จ์ ๋์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๊ฒ ํด์ค๋ค.
- ์ค๋ ๋ ๋ฐฉ์์ผ๋ก ์คํ๋๋ค.
- ์๋ฐ ํด๋์ค์ด๊ธฐ ๋๋ฌธ์ ์๋ฐ์ ํน์ง์ ๊ฐ๋๋ค.
- ์๋ธ๋ฆฟ ์ปจํ ์ด๋(ํฐ์บฃ)์์ ์คํ๋๋ค.
1.1.1.
2. # ์๋ธ๋ฆฟ์ ์๋ช ์ฃผ๊ธฐ ๋ฉ์๋
2.0.1. ์๋ธ๋ฆฟ ์๋ช ์ฃผ๊ธฐ ๋ฉ์๋๋ ์๋ธ๋ฆฟ ์คํ ๋จ๊ณ๋ง๋ค ํธ์ถ๋์ด ๊ธฐ๋ฅ์ ์ํํ๋ ์ฝ๋ฐฑ ๋ฉ์๋๋ฅผ ๋งํฉ๋๋ค. ์๋ธ๋ฆฟ์ ์๋ช ์ฃผ๊ธฐ๋ฅผ ์์ธํ ์์๋ณด๊ธฐ ์ํด ์๋ธ๋ฆฟ ํด๋์ค๋ฅผ ๋ง๋ค์ด ๋ณด์ฌ๋๋ฆฌ๊ฒ ์ต๋๋ค.
<code />
package servletTest.servlet1;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FirstServlet extends HttpServlet{
@Override
public void init() throws ServletException{ //=> ์๋ธ๋ฆฟ ์์ฑ
System.out.println("init ๋ฉ์๋ ํธ์ถ");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
System.out.println("doGet ๋ฉ์๋ ํธ์ถ");//=> ์์ฒญ ๋ฐ์
}
@Override
public void destroy() { //=> ์๋ธ๋ฆฟ ์ข
๋ฃ
System.out.println("destory ๋ฉ์๋ ํธ์ถ");
}
}
2.0.2. ๋ค์๊ณผ ๊ฐ์ด FirstSevlet๋ฅผ ๋ง๋ค์ด์ค๋๋ค. HttpServlet ์์์ ๋ฐ๋์ ๋ฐ์์ผ ํฉ๋๋ค. ์ดํ http://127.0.0.1:8090/ํ๋ก์ ํธ์ด๋ฆ/ํจํค์ง์ด๋ฆ.FirstServlet์ผ๋ก ํด๋น ์๋ธ๋ฆฟ ์์ฒญ์ด ๊ฐ๋ฅํฉ๋๋ค. ํ์ง๋ง ๋งค๋ฒ ์ด๋ ๊ฒ ์์ฒญํ๊ธฐ์๋ ๋ง์ด ๋ฒ๊ฑฐ๋ก์ฐ๋๊น web.xml์์ ๋ค์๊ณผ ๊ฐ์ ํ๊ทธ๋ฅผ ๋ง๋ค์ด์ค๋๋ค.
(web.xml ์์ ์๋์ผ๋ก ๋ง๊ณ ์ ๋ํ ์ด์ ์ ์ด์ฉํ์ฌ ์๋์ผ๋ก ํ ์๋ ์์ต๋๋ค.)

<code />
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
<display-name>servletTest</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet><!-- ์ค์ ๋ก ๋งคํ์ ๋ํด ์คํ๋๋ ์๋ธ๋ฆฟ ํด๋์ค๋ฅผ ์ค์ ํ๋ ํ๊ทธ-->
<servlet-name>firstServlet</servlet-name> <!-- ๋ฐ๋์ mapping์ ์๋ธ๋ฆฟ ์ด๋ฆ๊ณผ ๊ฐ์์ผํจ-->
<servlet-class>servletTest.servlet1.FirstServlet</servlet-class> <!-- ์ค์ ๋ก ๋งคํ๋๋ ํจํค์ง ํฌํจ๋ ํด๋์ค ๊ฒฝ๋ก -->
</servlet>
<servlet-mapping><!-- ๋
ผ๋ฆฌ์ ์ธ ์๋ธ๋ฆฟ ์ค์ ์ ์ํ ํ๊ทธ-->
<servlet-name>firstServlet</servlet-name> <!-- -->
<url-pattern>/first</url-pattern> <!-- url๋ก ๋งตํ๋ ๋ -->
</servlet-mapping>
</web-app>
2.0.3. servlet ํ๊ทธ์ servlet-mapping ํ๊ทธ๋ฅผ ๋ง๋ค์ด์ค๋๋ค. ๊ทธ๋ผ http://localhost:8090/first ์ผ๋ก ์์ฒญ์ด ๊ฐ๋ฅํฉ๋๋ค. ๋ง์ฝ ์ ๋๋ก ๊ตฌํ์ ํ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ฝ๋๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
2.0.4.

2.0.5. ๊ทธ๋ฆฌ๊ณ ๋ง์ฝ ์๋ฒ๋ฅผ ์ข ๋ฃํ์ง ์์ ์ํ์์ ํ๋ฒ ๋ ์์ฒญ์ ํ๋ฉด init ๋ฉ์๋๋ ํธ์ถ์ด ์๋๊ณ doGet ๋ฉ์๋๋ง ํธ์ถ์ด ๋ฉ๋๋ค.
2.0.6.

2.0.7. ์ด์ฒ๋ผ ๋์ํ๋ ๊ฒ์ ์๋ธ๋ฆฟ์ด ์ค๋ ๋ ๋ฐฉ์์ผ๋ก ๋์ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ฐ๋ผ์ ์๋ธ๋ฆฟ์ ๋ฉ๋ชจ๋ฆฌ์ ์กด์ฌํ๋ ์๋ธ๋ฆฟ์ ์ฌ์ฌ์ฉํจ์ผ๋ก์จ ํจ์ฌ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ๋์ํ ์ ์๊ฒ ๋ฉ๋๋ค.
2.0.8.
2.0.9. ๊ทธ๋ฆฌ๊ณ ์๋ฒ๋ฅผ ์ข ๋ฃํ๋ฉด destroy ๋ฉ์๋ ํธ์ถ์ด ๋ฉ๋๋ค.

2.1.
2.2.
2.3. ์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
2.4. ์ง๋ฌธ์ ์ธ์ ๋ ํ์ํฉ๋๋ค.
2.5.
2.6. "๋ ๋ฐ๋์ ๋ฐฑ์๋ ์์ด ๋ ๊ฑฐ์ผ"

'...' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JS]DOM ์ฝ๊ฒ ์ดํดํ๊ธฐ!! ๊ณ ์ฒ์ค์นด์ด๋ ์๋๋๋ค (4) | 2020.12.23 |
---|---|
[JS] jquery๋ก ํด๋์ค๋ช ์ด ๋์ผํ ์ฌ๋ฌ ๊ฐ์ ํ๊ทธ ์ ๊ทผํ๊ธฐ (0) | 2020.12.23 |
[DB] RDS, NoSQL ๊ทธ๋ฆฌ๊ณ NewSQL (0) | 2020.12.21 |
[JS] ํ๋กํ ํ์ ์ดํดํ๊ธฐ with ํ๋กํ ํ์ ์ฒด์ธ (2) | 2020.12.17 |
[DB] ์ ํ, ๋ฐ์ ํ, ๋น์ ํ ๋ฐ์ดํฐ (1) | 2020.12.16 |