티스토리 뷰
Insert
insert Form
<form action="insertPro.jsp" method="post">
아이디 : <input type="text" name="id"><br>
비밀번호 : <input type="password" name="pass"><br>
이름 : <input type="text" name="name">
<input type="submit" value="회원가입">
</form>
우선 공통적으로 DB 서버에 연결하고
<%
// form post request 처리
request.setCharacterEncoding("UTF-8");
// request id pass name 파라미터값 저장 => 변수저장
String id=request.getParameter("id");
String pass=request.getParameter("pass");
String name=request.getParameter("name");
// JDBC 프로그램 불러오기
Class.forName("com.mysql.cj.jdbc.Driver");
// JDBC 프로그램으로 DB서버 접속 => 연결정보 저장
String dbUrl="jdbc:mysql://localhost:3306/jspdb1?serverTimezone=UTC";
String dbId="root";
String dbPass="1234";
Connection con=DriverManager.getConnection(dbUrl,dbId,dbPass);
%>
연결 정보로 insert sql 구문 작성
각각의 물음표에 들어가는 항목 1, 2, 3 표시
<%
String sql="insert into members(id,pass,name,date) values(?,?,?,now())";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, id);
pstmt.setString(2, pass);
pstmt.setString(3, name);
%>
sql 구문 실행하면 알림창 뜨고 loginForm.jsp로 이동
<%pstmt.executeUpdate(); %>
회원 가입 성공 : <%=pstmt %>
<script type="text/javascript">
alert("회원가입 성공");
location.href="loginForm.jsp";
</script>
Update
update Form의 경우, 우선 DB에 연결해 데이터가 있는지부터 찾아봐야한다.
로그인하면 생기고, 페이지 상관없이 값이 유지되는 세션 값부터 가져온다.
<%
String id=(String)session.getAttribute("id");
%>
DB 서버에 연결
<%
Class.forName("com.mysql.cj.jdbc.Driver");
String dbUrl="jdbc:mysql://localhost:3306/jspdb1?serverTimezone=UTC";
String dbId="root";
String dbPass="1234";
Connection con =DriverManager.getConnection(dbUrl, dbId, dbPass);
%>
select 구문을 이용해 sql 구문을 실행하고 결과를 저장한다.
<%
String sql="select * from members where id=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, id);
ResultSet rs=pstmt.executeQuery();
%>
rs.next() 결과에서 다음 행 이동하고
데이터가 있을 경우 true, 없으면 false
<%
if(rs.next()){
%>
<form action="updatePro.jsp" method="post">
아이디 : <input type="text" name="id" value="<%=rs.getString("id") %>" readonly><br>
비밀번호 : <input type="password" name="pass"><br>
이름 : <input type="text" name="name" value="<%=rs.getString("name") %>"><br>
<input type="submit" value="회원정보수정">
</form>
<%
}
%>
<a href="main.jsp">메인으로 이동</a>
'배운 것 기록 > jsp' 카테고리의 다른 글
[jsp] MemberDTO, MemberDAO (0) | 2022.06.24 |
---|---|
[jsp] delete, list 구현 (0) | 2022.06.15 |
[jsp] login 구현 (0) | 2022.06.12 |
[jsp] main, logout 구현 (0) | 2022.06.11 |
[jsp] DB연결 (0) | 2022.05.30 |
댓글