카테고리 없음
CRUD.java
별초롱언니
2025. 6. 6. 00:51
package dto;
public class member {
private String id;
private String pw;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPw() {
return pw;
}
public void setPw(String pw) {
this.pw = pw;
}
@Override
public String toString() {
return "member [id=" + id + ", pw=" + pw + "]";
}
}
dto/member.java
package dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import dto.member;
public class member_repository {
//싱글턴 패턴 : member_repository의 객체를 1개만 유지할수있음. 남이 new못함
private static member_repository repository = new member_repository();
private member_repository() {}
public static member_repository getInstance() {
return repository;
}
//create
public void save(member mb) {
System.out.println(mb.toString());
//Connection 객체 생성 : 데이터베이스연결
System.out.println("저장");
Connection conn = null;
String url="jdbc:mysql://localhost:3306/test_crud";
String id="root";
String pw="1234";
try {
Class.forName("com.mysql.jdbc.Driver");
conn= DriverManager.getConnection(url,id,pw);
System.out.println("데이터 베이스 연결됨");
}catch(Exception e) {}
//PreparedStatement 객체생성 : 쿼리 전송
PreparedStatement pstmt =null;
String sql = "insert into member values(?,?)";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, mb.getId());
pstmt.setString(2, mb.getPw());
pstmt.executeUpdate();
}catch(Exception e) {}
}
//read_all
public ArrayList<member> readall(){
ArrayList<member> allmember=new ArrayList<member>();
ResultSet rs=null;
//Connection 객체 생성 : 데이터베이스연결
Connection conn = null;
String url="jdbc:mysql://localhost:3306/test_crud";
String id="root";
String pw="1234";
try {
Class.forName("com.mysql.jdbc.Driver");
conn= DriverManager.getConnection(url,id,pw);
}catch(Exception e) {}
//PreparedStatement 객체생성 : 쿼리 전송
PreparedStatement pstmt =null;
String sql = "select * from member";
try {
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while(rs.next()) {
String rsid = rs.getString("id"); //id컬럼
String rspw = rs.getString("pw"); //pw컬럼
//가져온 데이터를 묶음
member mb = new member();
mb.setId(rsid);
mb.setPw(rspw);
//묶은 데이터를 ArrayList에 저장
allmember.add(mb);
}
}catch(Exception e) {}
return allmember;
}
//read_one
public member readone(String rid) {
member mb = new member();
ResultSet rs=null;
//Connection 객체 생성 : 데이터베이스연결
Connection conn = null;
String url="jdbc:mysql://localhost:3306/test_crud";
String id="root";
String pw="1234";
try {
Class.forName("com.mysql.jdbc.Driver");
conn= DriverManager.getConnection(url,id,pw);
}catch(Exception e) {}
//PreparedStatement 객체생성 : 쿼리 전송
PreparedStatement pstmt =null;
String sql = "select * from member where id=?";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, rid);
rs = pstmt.executeQuery();
while(rs.next()) {
String rsid = rs.getString("id"); //id컬럼
String rspw = rs.getString("pw"); //pw컬럼
//가져온 데이터를 묶음
mb.setId(rsid);
mb.setPw(rspw);
}
}catch(Exception e) {}
return mb;
}
public void update(String rid, String rpw) {
Connection conn = null;
String url="jdbc:mysql://localhost:3306/test_crud";
String id="root";
String pw="1234";
try {
Class.forName("com.mysql.jdbc.Driver");
conn= DriverManager.getConnection(url,id,pw);
System.out.println("데이터 베이스 연결됨");
}catch(Exception e) {}
//PreparedStatement 객체생성 : 쿼리 전송
PreparedStatement pstmt =null;
String sql = "update member set pw=? where id=?";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, rpw);
pstmt.setString(2, rid);
pstmt.executeUpdate();
}catch(Exception e) {}
}
public void delmember(String rid) {
Connection conn = null;
String url="jdbc:mysql://localhost:3306/test_crud";
String id="root";
String pw="1234";
try {
Class.forName("com.mysql.jdbc.Driver");
conn= DriverManager.getConnection(url,id,pw);
System.out.println("데이터 베이스 연결됨");
}catch(Exception e) {}
//PreparedStatement 객체생성 : 쿼리 전송
PreparedStatement pstmt =null;
String sql = "delete from member where id=?";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, rid);
pstmt.executeUpdate();
}catch(Exception e) {}
}
}
dao.member_repository.java
Controller
package Controller;
import java.io.IOException;
import dao.member_repository;
import dto.member;
import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/create")
public class create_controller extends HttpServlet {
member_repository repository = member_repository.getInstance();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
RequestDispatcher ds = req.getRequestDispatcher("createForm.jsp");
ds.forward(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//전처리 : form --> 데이터 전달받음
String id = req.getParameter("id");
String pw = req.getParameter("pw");
System.out.println(id+","+pw);
//전처리 : 전달된 데이터를 묶음
member mb = new member();
mb.setId(id);
mb.setPw(pw);
//DB에 저장하기 위해서 repository클래스에게 전달.
repository.save(mb);
resp.sendRedirect("read_all");
}
}
create.java
package Controller;
import java.io.IOException;
import java.util.ArrayList;
import dao.member_repository;
import dto.member;
import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/read_all")
public class readAll_controller extends HttpServlet {
member_repository repository = member_repository.getInstance();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("allread");
//전처리 데이터 없음
//모델이동
ArrayList<member> allmember = repository.readall();
//뷰이동
req.setAttribute("allmember", allmember);
RequestDispatcher ds = req.getRequestDispatcher("allview.jsp");
ds.forward(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
}
readAll.java
package Controller;
import java.io.IOException;
import dao.member_repository;
import dto.member;
import jakarta.servlet.RequestDispatcher;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/update")
public class update_controller extends HttpServlet {
member_repository repository = member_repository.getInstance();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//전처리
String id = req.getParameter("id");
//모델이동
member mb = repository.readone(id);
//뷰이동
req.setAttribute("member", mb);
RequestDispatcher ds = req.getRequestDispatcher("updateForm.jsp");
ds.forward(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String id = req.getParameter("id");
String pw = req.getParameter("pw");
repository.update(id,pw);
resp.sendRedirect("read_all");
}
}
update.java
package Controller;
import java.io.IOException;
import dao.member_repository;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet("/delete")
public class delete_controller extends HttpServlet {
member_repository repository = member_repository.getInstance();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//전처리
String id = req.getParameter("id");
//모델이동
repository.delmember(id);
//뷰이동
resp.sendRedirect("read_all");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
}
delete.java