JSP, DB연동을 이용한 회원리스트 구현(회원추가)
/* input.jsp */
/* 앞에서 목록생성을 한 list에서 저장링크를 누르면 나오는 페이지입니다(회원가입)*/
<%@ page contentType="text/html;charset=utf-8" %>
<HTML>
<HEAD></HEAD>
<BODY>
<FORM action="save_do.jsp" method="post"> <!-- 입력받은 데이터들을 save_do.jsp로 넘겨줍니다. DB에 저장하기 위해서죠. -->
ID : <INPUT type="text" name="id" maxlength="8" size="8"><BR>
이름 : <INPUT type="text" name="name" maxlength="12" size="12"><BR>
PW : <INPUT type="password" name="pwd" maxlength="8" size="8"><BR>
<INPUT type="submit" value=" 저 장 ">
</FORM>
</BODY>
</HTML>
/* save_do.jsp */
<%@ page contentType="text/html;charset=utf-8"
import="java.sql.*" %>
<%
request.setCharacterEncoding("utf-8");
String id = request.getParameter("id"); // input.jsp에서 입력받은 값들을 받아옵니다.
String name = request.getParameter("name");
String pwd = request.getParameter("pwd");
try
{
Class.forName("com.mysql.jdbc.Driver");
String DB_URL = "jdbc:mysql://localhost:3306/web01?useUnicode=true&characterEncoding=utf8"; // 아까 예제에서와 마찬가지로 url을 설정하죠
Connection con = DriverManager.getConnection(DB_URL, "admin", "1234");
String sql = "INSERT INTO member(id,name,pwd) VALUES(?,?,?)"; // sql문 작성(id와 name, pwd값들을 보내기위한 작업)
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setString(1,id); // values에 들어갈 각각의 id, name, pwd 설정
pstmt.setString(2,name);
pstmt.setString(3,pwd);
pstmt.executeUpdate(); // sql문 실행(회원추가 실행)
pstmt.close();
con.close();
}
catch(ClassNotFoundException e) // 예외처리
{
out.println(e);
}
catch(SQLException e)
{
out.println(e);
}
response.sendRedirect("list.jsp"); // 다시 list.jsp를 실행시켜 새로운 정보를 업데이트 시킵니다.
%>
실행결과
list.jsp 하단에 있는 저장버튼을 누르면 회원가입창인 input.jsp가 뜨고 양식을 입력을 합니다.
input.jsp에서 저장을 누르게되면 아까 입력했던 회원양식이 추가되는걸 볼 수 있겠네요.
마찬가지로 MYSQL에서 새로운 데이터가 추가된 것을 볼수 있겠습니다.