βΆ μλΈλ¦Ώμμ μΈμ μ΄ν΄λ³΄κΈ°
β
*μΈμ μ κ°λ
μΈμ μ κ°λ μ μ΄ν΄νλ €λ©΄ μ°μ HTTP νλ‘ν μ½μ νΉμ±λΆν° μ΄ν΄ν΄μΌ νλ€. HTTP νλ‘ν μ½μ λνμ μΈ νΉμ§ μ€μ νλλ μνλ₯Ό μ μ§νμ§ μλλ€λ κ²μ΄λ€. μ¦, ν΄λΌμ΄μΈνΈκ° ν λ² μμ²μ νκ³ μλ²μμ μλ΅μ νλ©΄ ν΄λΉ ν΄λΌμ΄μΈνΈμ μλ²μμ μ°κ²°μ μ μ§λμ§ μλλ€λ νΉμ§μ΄ μλ€.
β
μ κ·Έλ¦Όμμ νμΈν μ μλ―μ΄ HTTP νλ‘ν μ½μ μνλ₯Ό μ μ§νμ§ μλ νΉμ±μ΄ μκΈ° λλ¬Έμ 첫 λ²μ§Έ ν΄λΌμ΄μΈνΈμ μμ²μ λν΄μ μλ²μμ μλ΅μ λ΄λ € 보λ΄λ©΄ λκ°μ ν΄λΌμ΄μΈνΈκ° λ λ²μ§Έ μμ²μ νμ λ μλ²μμλ λ λ²μ§Έ μμ²μ ν ν΄λΌμ΄μΈνΈκ° 첫 λ²μ§Έ μμ²μ ν ν΄λΌμ΄μΈνΈμμ μΈμνμ§ λͺ»νλ€.
HTTPμ μ΄λ° νΉμ§ λλ¬Έμ μΉ μλ²λ λμμ μ¬λ¬ κ°μ μμ²μ ν¨κ³Όμ μΌλ‘ μ²λ¦¬ν μ μλ κ²μ΄λ€. κ·Έλ μ§λ§ HTTP νλ‘ν μ½μ μνλ₯Ό μ μ§νμ§ μλ νΉμ§ λλ¬Έμ λ‘κ·ΈμΈ, μ₯λ°κ΅¬λ λ± μνκ° μ μ§λμ΄μΌ ν νλ‘κ·Έλ¨μ μμ±νκΈ°λ νλ€λ€.
β
μ΄ λ¨μ μ 보μνκΈ° μν λ°©λ²μ΄ λ°λ‘ μΈμ μ΄λ€. μΈμ μ μλΈλ¦Ώμμ ν΄λΌμ΄μΈνΈμ μλ²μ μνλ₯Ό μ μ§νκΈ° μν΄ μ 곡λλ API(Application Programming Interface)μ΄λ€. μλΈλ¦Ώ κ°λ μ΄ μ μ©λλ©΄ μμ μμ² μ²λ¦¬ λ¨κ³κ° λ€μκ³Ό κ°μ΄ μμ λλ€.
βμΈμ κΈ°λ₯μ μ΄μ©νλ©΄ ν΄λΌμ΄μΈνΈμ μμ²μ λν μλ΅μ ν λ μλ²μμλ μ€λ³΅λμ§ μλ μΈμ μμ΄λλ₯Ό ν΄λΌμ΄μΈνΈλ§λ€ λΆμ¬ν΄μ μλ΅μ κ°μ΄ 보λΈλ€. κ·Έλ¦¬κ³ μ΄ μΈμ μμ΄λλ ν΄λΌμ΄μΈνΈμ μΏ ν€ μ μ₯μμ μ μ₯λκ² λκ³ ν΄λΌμ΄μΈνΈκ° λ€μ μμ²μ νλ©΄ μ΄ μΈμ μμ΄λκ° μμ²μ κ°μ΄ μ μ‘λλ€. μλ²λ μμ²μ μ μ‘λμ΄μ€λ μΈμ μμ΄λλ₯Ό νλ³νμ¬ λ λ²μ§Έ μμ²μ ν ν΄λΌμ΄μΈνΈκ° 첫 λ²μ§Έ μμ²μ ν ν΄λΌμ΄μΈνΈμμ νμΈν μ μλ€.
β
ββ
β
*κ°λ¨ν μΈμ μμ
κ°λ¨νκ² ν΄λΌμ΄μΈνΈκ° μμ²μ νμ λ μΈμ κ°μ²΄λ₯Ό μμ±ν΄μ μμ μ μΈμ μμμ μ΄λ¦μ μμ±μΌλ‘ μ μ₯νκ³ , μΈμ μ μ μ₯λμ΄ μλ μ΄λ¦ μμ± κ°μ μΆλ ₯ν΄ λ³΄λλ‘ νκ² λ€.
μ°μ μΈμ μμ μ μΈμ μμμ μ΄λ¦ μμ±μ μ μ₯νλ μ½λλ₯Ό μμ±ν΄ 보μ. μλΈλ¦Ώμμλ μΈμ μ λ€λ£° μ μλ HttpSession μΈν°νμ΄μ€λ₯Ό μ 곡νκ³ μλ€. μΈμ κ°μ²΄λ λ€μ λ©μλλ₯Ό μ΄μ©ν΄μ μ»μ΄μ¬ μ μλ€.
β
-HttpServletRequest.getSession(true) : ν΄λΉ ν΄λΌμ΄μΈνΈμ μΈμ μ΄ ν λΉλμ΄ μμΌλ©΄, μ¦, μ΄μ μμ²μ μν΄μ μ΄λ―Έ μΈμ μ΄ μμ±λμ΄ μμΌλ©΄ κΈ°μ‘΄μ μμ±λμ΄ μλ μΈμ κ°μ²΄μ λ νΌλ°μ€λ₯Ό λ°ννκ³ , μμ±λμ΄ μμ§ μμΌλ©΄, μ¦, 첫 λ²μ§Έ μμ²μ΄λ©΄ μλ‘κ² μΈμ κ°μ²΄λ₯Ό μμ±νλ λ©μλ.
νλΌλ―Έν° κ°μ μλ΅νμ κ²½μ°, μ¦, HttpServletRequest.getSession( )λ κ°μ μλ―Έμ΄λ€. μ¦, κΈ°λ³Έ νλΌλ―Έν° κ°μ trueμ΄λ€.
β
-HttpServletRequest.getSession(false) : κΈ°μ‘΄μ ν΄λΌμ΄μΈνΈμ λν΄μ μΈμ κ°μ²΄κ° μμ±λμ΄ μμΌλ©΄ κΈ°μ‘΄ μμ±λ μΈμ μ λ νΌλ°μ€λ₯Ό λ°ννκ³ , κΈ°μ‘΄μ μΈμ κ°μ²΄κ° μμ±λμ΄ μμ§ μμΌλ©΄ μλ¬λ₯Ό λ°μμν€λ λ©μλμ΄λ€.
β
ββ
SetNameServlet.java
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
HttpSession session = request.getSession();
session.setAttribute("name", "μ€μ μ");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<h1>μ΄λ¦μ μ₯</h1>");
}
μ΄μ ν΄λΉ μΈμ μμμ μ μ₯λμ΄ μλ name μμ± κ°μ κ°μ Έμμ μΆλ ₯νλ μλΈλ¦Ώμ μμ±ν΄λ³΄μ.
ββ
β
GetNameServlet.java
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession();
String name = (String)session.getAttribute("name");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<h1>name="+name+"</h1>");
}
<μ€ν κ²°κ³Ό>
βμΈμ κ°μ²΄λ ν΄λΌμ΄μΈνΈλ§λ€ νλμ© ν λΉλλ©΄ λΈλΌμ°μ λ₯Ό μ’ λ£νκ³ μΈμ μμ λκ° λκΉμ§λ κ³μν΄μ μΈμ μ΄ μ μ§λλ€λ κ²μ μ μ μλ€. μ΄ μΈμ μ κΈ°λ₯μ μ΄μ©ν΄μ μνκ° μ μ§λμ΄μΌ νλ νλ‘κ·Έλ¨, μ¦ λ‘κ·ΈμΈ νλ‘κ·Έλ¨, μ₯λ°κ΅¬λ νλ‘κ·Έλ¨ λ±μ ꡬν ν μ μλ€.
κ·ΈλΌ μΈμ κΈ°λ₯μ μ΄μ©ν΄μ λ‘κ·ΈμΈ νλ‘κ·Έλ¨μ ꡬνν΄ λ³΄λλ‘ νμ.
β
β
login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="sessionLogin" method="post">
μμ΄λ:<input type="text" name="id"/>
λΉλ°λ²νΈ:<input type="password" name="passwd"/><br>
<input type="submit" value="λ‘κ·ΈμΈ"/>
</form>
</body>
</html>
menu.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<%
String id = (String)session.getAttribute("id");
%>
<body>
<%
if (id == null) {
%>
<a href="login.jsp">λ‘κ·ΈμΈ</a>
<%
} else {
%>
<%=id %> λ νμν©λλ€.
<%
}
%>
</body>
</html>
SessionLoginServlet.java
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String id = request.getParameter("id");
String passwd = request.getParameter("passwd");
if(id.equals("java")&&passwd.equals("1111")) {
HttpSession session = request.getSession();
session.setAttribute("id", id);
RequestDispatcher dispatcher = request.getRequestDispatcher("menu.jsp");
dispatcher.forward(request, response);
}
else {
out.println("<script>");
out.println("alert('μμ΄λλ λΉλ°λ²νΈκ° μΌμΉνμ§ μμ΅λλ€.')");
out.println("history.back()");
out.println("</script>");
}
}
<μ€ν κ²°κ³Ό>
'JSP' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JSP] μ§μμ΄ (Directive) (0) | 2021.02.09 |
---|---|
[JSP] forwarding (0) | 2021.02.09 |
[JSP] Servletμ μ΄μ©ν ν΄λΌμ΄μΈνΈμμ μ μ‘λλ μμ² μ²λ¦¬ (0) | 2021.02.09 |
[JSP] μΉ νλ‘μ νΈ μμ±νκ³ μ ν리μΌμ΄μ μ€ννκΈ° (0) | 2021.02.05 |
[JSP] μ΄ν΄λ¦½μ€ JSP μ μ₯ κ²½λ‘ μ€μ (0) | 2021.02.05 |
λκΈ