๐ ๋ค์ด๊ฐ๋ฉฐ
์ด๋ฒ ๊ธ์์๋ ์ธ์
(session)์ผ๋ก ๋ก๊ทธ์ธ ํผ์ ๋ง๋ค๊ณ , JSP๋ฅผ MariaDB์ ์ฐ๋ํ๋ค.
1. ์ธ์
๋ก๊ทธ์ธ ํ๋ฆ
์ธ ๊ฐ์ JSP๋ก ๋ก๊ทธ์ธ ์ํ๋ฅผ ๊ด๋ฆฌํ๋ค.
1
2
3
4
| loginForm.jsp โโPOSTโโโบ loginCheck.jsp (๊ฒ์ฆ โ session์ ์ ์ฅ)
โฒ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
logout.jsp (session.invalidate)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| <%
String cust_id = (String) session.getAttribute("cust_id");
String cust_name = (String) session.getAttribute("cust_name");
Boolean login = (cust_id != null && cust_name != null); // ๋ก๊ทธ์ธ ์ฌ๋ถ ํ๋จ
%>
<%
if (login) { // ๋ก๊ทธ์ธ ์ํ โ ๋ก๊ทธ์ธ ๋ฒํผ ๋นํ์ฑ, ๋ก๊ทธ์์ ํ์ฑ
out.print("<input type='submit' value='๋ก๊ทธ์ธ' disabled>"
+ "<input type='button' value='(" + cust_name + ")๋ ๋ก๊ทธ์์' "
+ "onClick=location.href='./logout.jsp'>");
} else { // ๋ฏธ๋ก๊ทธ์ธ โ ๋ฐ๋
out.print("<input type='submit' value='๋ก๊ทธ์ธ'>"
+ "<input type='button' value='๋ก๊ทธ์์' disabled>");
}
%>
|
loginCheck.jsp โ ์ธ์
์ ์ ์ฅ
1
2
3
4
5
6
7
8
9
10
11
12
| <%
String cust_id = request.getParameter("cust_id");
String cust_pw = request.getParameter("cust_pw");
if (cust_id.equals("root") && cust_pw.equals("admin")) {
session.setAttribute("cust_id", cust_id); // โ
์ธ์
์ ์ ์ฅ
session.setAttribute("cust_name", "๊ด๋ฆฌ์");
out.print(cust_id + "๋ ๋ฐฉ๋ฌธ์ ํ์ํฉ๋๋ค.");
} else {
out.print("ํ์ ๊ฐ์
ํ ๋ฐฉ๋ฌธํ์ญ์์ค");
}
%>
|
logout.jsp โ ์ธ์
์ญ์
1
| <% session.invalidate(); %> <!-- ๋ชจ๋ ์ธ์
์ ๋ณด ์ญ์ -->
|
| ๋ฉ์๋ | ์ญํ |
|---|
session.getAttribute | ์ธ์
๊ฐ ์กฐํ |
session.setAttribute | ์ธ์
๊ฐ ์ ์ฅ |
session.invalidate | ์ธ์
์ ์ฒด ์ญ์ |
2. DB ์ฐ๋ (MariaDB + JDBC)
DB ๋๋ผ์ด๋ฒ ์ปค๋ฅํฐ(jar)๋ฅผ lib ํด๋์ ๋ฃ๊ณ , JDBC๋ก ์ฐ๊ฒฐํ๋ค.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <%@ page import="java.sql.*" %>
<%
// โ ๋๋ผ์ด๋ฒ ๋ก๋
Class.forName("org.mariadb.jdbc.Driver");
out.print("JDBC Driver loading ์ฑ๊ณต!");
// โก ์ ์
Connection conn = null;
try {
conn = DriverManager.getConnection("jdbc:mariadb://localhost:3307", "root", "1234");
out.print("MariaDB ์๋ฒ ์ฐ๊ฒฐ ์ฑ๊ณต");
} catch (SQLException e) {
out.print("MariaDB ์๋ฒ ์ฐ๊ฒฐ ์คํจ: " + e.getMessage());
} finally {
if (conn != null) conn.close(); // โข ํด์
}
%>
|
๐ก ํ๋ฆ์ ์๋ฐ JDBC์ ๋์ผํ๋ค: โ ๋๋ผ์ด๋ฒ ๋ก๋(Class.forName) โ โก ์ ์(getConnection) โ โข ํด์ (close). ๊ฐ ๋จ๊ณ๋ฅผ try~catch๋ก ๊ฐ์ธ ์ฑ๊ณต/์คํจ๋ฅผ ์ถ๋ ฅํ๋ค.
๐ ์ ๋ฆฌ
1
2
3
4
| JSP ์ธ์
& DB
โโ ์ธ์
getAttribute/setAttribute/invalidate
โโ ๋ก๊ทธ์ธ ์ํ์ ๋ฐ๋ผ ๋ฒํผ ํ ๊ธ
โโ DB Class.forName โ getConnection โ close
|
| ๊ฐ๋
| ํ ์ค ์ ์ |
|---|
| session | ์ฌ์ฉ์๋ณ ์ํ ์ ์ง |
| invalidate | ์ธ์
์ญ์ (๋ก๊ทธ์์) |
| JDBC ์ฐ๊ฒฐ | ๋๋ผ์ด๋ฒ ๋ก๋ โ ์ ์ โ ํด์ |
์ธ์
์ โ๋ก๊ทธ์ธ ์ํ๋ฅผ ์๋ฒ๊ฐ ๊ธฐ์ตโํ๊ฒ ํด์ค๋ค. setAttribute๋ก ์ ์ฅํ๊ณ invalidate๋ก ์ง์ฐ๋ ํ๋ฆ, ๊ทธ๋ฆฌ๊ณ JDBC 3๋จ๊ณ ์ฐ๊ฒฐ๋ง ์ก์ผ๋ฉด ๋์ ์ธ ๋ก๊ทธ์ธ ์์คํ
์ ๋ง๋ค ์ ์๋ค.
Comments powered by Disqus.