728x90
데이터베이스 연결
<%@page import="java.security.Timestamp"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsp4/info.jsp</title>
</head>
<body>
<h1>jsp4/info.jsp</h1>
<h1>회원 정보 조회</h1>
<%
String id = (String)session.getAttribute("id");
//()클래스의 형 변환
//main.jsp에서 info.jsp로 이동할 때 값을 들고오지 않음
//연결정보를 저장하는 session 내장객체 안에 로그인표시("id","id값") 저장
//session에서 로그인 표시값 가져오기 → String id 변수에 저장
request.setCharacterEncoding("utf-8");
//1단계 : Driver.class 자바실행 파일 불러오기
Class.forName("com.mysql.cj.jdbc.Driver");
//2단계 : 불러온 파일을 이용해 DB 연결 → 연결정보 저장
String dbUrl ="jdbc:mysql://localhost:3306/jspdb?serverTimezone=Asia/Seoul";
String dbUser = "root";
String dbPw = "1234";
Connection con = DriverManager.getConnection(dbUrl, dbUser, dbPw);
//3단계 : 연결정보를 이용해 SQL구문을 만들고 실행할 수 있는 객체생성
String sql = "select * from members where id=?";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setString(1, id);
//4단계 : SQL 구문 실행 → 실행 후 결과 저장 → ResultSet 내장객체저장
ResultSet rs = pstmt.executeQuery();
//5단계 : 결과를 이용해서 출력
if(rs.next()){
%>
아이디 : <%=rs.getString("id") %> <br>
비밀번호 : <%=rs.getString("pw") %> <br>
이름 : <%=rs.getString("name") %> <br>
가입날짜 : <%=rs.getTimestamp("date") %> <br>
<%
}
%>
<a href="main.jsp">main.jsp 이동</a>
</body>
</html>
<!-- 231214 -->
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="com.mysql.cj.xdevapi.PreparableStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsp4/update.jsp</title>
</head>
<body>
<h1>jsp4/update.jsp</h1>
<h1>회원 정보 수정</h1>
<!-- 비밀번호가 맞는지 안맞는지를 먼저 확인한 후 이름만 수정 -->
<%
request.setCharacterEncoding("utf-8");
String id = (String)session.getAttribute("id");
Class.forName("com.mysql.cj.jdbc.Driver");
String dbUrl = "jdbc:mysql://localhost:3306/jspdb?serverTimezone=Asia/Seoul";
String dbUser = "root";
String dbPw = "1234";
Connection con = DriverManager.getConnection(dbUrl, dbUser, dbPw);
String sql = "select * from members where id=?";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1, id);
ResultSet rs = ps.executeQuery();
if(rs.next()){
%>
<form action="06_updatePro.jsp" method="post">
아이디 : <input type="text" name="id" value="<%=rs.getString("id") %>" readonly><br>
비밀번호 : <input type="password" name="pw"> 비밀번호 입력 시 회원정보 수정<br>
이름 : <input type="text" name="name" value="<%=rs.getString("name")%>"><br>
<%
}
%>
<input type="submit" value="회원정보수정">
</form>
</body>
</html>
<!-- 231214 -->
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsp4/updatePro.jsp</title>
</head>
<body>
<h1>jsp4/updatePro.jsp</h1>
<%
request.setCharacterEncoding("utf-8");
//request에서 id, pass, name 태그(파라미터)값 가져와서 변수에 저장
String id = request.getParameter("id");
String pw = request.getParameter("pw");
String name = request.getParameter("name");
Class.forName("com.mysql.cj.jdbc.Driver");
String dbUrl ="jdbc:mysql://localhost:3306/jspdb?serverTimezone=Asia/Seoul";
String dbUser = "root";
String dbPw = "1234";
Connection con = DriverManager.getConnection(dbUrl, dbUser, dbPw);
String sql1 = "select * from members where id=? and pw=?";
PreparedStatement ps1 = con.prepareStatement(sql1);
ps1.setString(1,id);
ps1.setString(2,pw);
ResultSet rs1 = ps1.executeQuery();
if(rs1.next()){
out.println("비밀번호 일치");
String sql2 = "update members set name=? where id=?";
PreparedStatement ps2 = con.prepareStatement(sql2);
ps2.setString(1, name);
ps2.setString(2, id);
ps2.executeUpdate();
response.sendRedirect("03_main.jsp");
}else{
out.println("비밀번호 불일치");
response.sendRedirect("06_update.jsp");
}
%>
</body>
</html>
<!-- 231214 -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsp4/delete.jsp</title>
</head>
<body>
<h1>jsp4/delete.jsp</h1>
<h1>회원 정보 삭제</h1>
<%
//main.jsp에서 delete.jsp로 이동할 때 아무값도 없이 이동
//연결정보를 저장하는 session 내장객체 안에 로그인표시("id","asdf") 저장
//session에서 로그인 표시값 가져오기 String id 변수저장
String id = (String)session.getAttribute("id");
%>
<form action="07_deletePro.jsp" method="post">
아이디 : <input type="text" name="id" value="<%=id %>" readonly><br>
비밀번호 : <input type="password" name="pw"><br>
<input type="submit" value="회원정보삭제">
</form>
</body>
</html>
<!-- 231214 -->
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsp4/deletePro.jsp</title>
</head>
<body>
<h1>jsp4/deletePro.jsp</h1>
<h1>회원 정보 삭제</h1>
<%
//폼에서 입력한 내용이 서버에 전달되어지면 서버에 request 내장객체 저장
//request에서 id,pw 태그값 가져와서 변수에 저장
request.setCharacterEncoding("utf-8");
String id = request.getParameter("id");
String pw = request.getParameter("pw");
Class.forName("com.mysql.cj.jdbc.Driver");
String dbUrl ="jdbc:mysql://localhost:3306/jspdb?serverTimezone=Asia/Seoul";
String dbUser = "root";
String dbPw = "1234";
Connection con = DriverManager.getConnection(dbUrl, dbUser, dbPw);
String sql1 = "select * from members where id=? and pw=?";
PreparedStatement ps1 = con.prepareStatement(sql1);
ps1.setString(1, id);
ps1.setString(2, pw);
ResultSet rs = ps1.executeQuery();
if(rs.next()){
out.println("아이디, 비밀번호 일치");
String sql2 = "delete from members where id=?";
PreparedStatement ps2 = con.prepareStatement(sql2);
ps2.setString(1, id);
ps2.executeUpdate();
session.invalidate();
response.sendRedirect("03_main.jsp");
} else{
out.println("아이디, 비밀번호 불일치");
response.sendRedirect("07_delete.jsp");
}
%>
</body>
</html>

728x90
'KDT > WEB' 카테고리의 다른 글
231218 WEB - JSP13(jar,war파일 Export,Import, MVC) (0) | 2023.12.18 |
---|---|
231215 WEB - JSP12(데이터베이스 연결, MVC) (0) | 2023.12.15 |
231212 WEB - JSP10(데이터베이스 연결) (0) | 2023.12.12 |
231211 WEB - JSP9(데이터베이스 연결) (0) | 2023.12.11 |
231208 WEB - JSP8(데이터베이스 연결) (0) | 2023.12.08 |