# stmt
request.setCharacterEncoding("utf-8");
String mid = request.getParameter("mid");
String mpw = request.getParameter("mpw");
String mname = request.getParameter("mname");
String memail = request.getParameter("memail");
String driverName = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/jspdb";
String userName = "root";
String password = "12345";
String sql = "INSERT INTO members(memberid, memberpw, membername, memberemail)
VALUES('"+ mid +"','" + mpw + "','" + mname + "','" + memail + "')" ;
Connection conn = null;
Statement stmt = null ;
try {
Class.forName(driverName); // MYSQL 드라이버 클래스 불러오기
conn = DriverManager.getConnection(url, userName, password);
stmt = conn.createStatement();
int sqlResult = stmt.executeUpdate(sql);
System.out.println(sqlResult);
} catch (Exception e) {
out.println("db 에러 발생");
e.printStackTrace(); //에러 내용 출력
} finally {
try {
if(stmt != null){ // stmt가 null이 아니면 닫기 --- conn보다 먼저 닫아야한다
stmt.close();
}
if(conn != null) { // 커넥션이 null값이 아닐때만 닫기
conn.close();
}
}catch(Exception e) {
e.printStackTrace();
}
}
pstmt
request.setCharacterEncoding("utf-8");
String mid = request.getParameter("mid");
String mpw = request.getParameter("mpw");
String mname = request.getParameter("mname");
String memail = request.getParameter("memail");
String driverName = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/jspdb";
String userName = "root";
String password = "12345";
//sql문 만들기
String sql = "INSERT INTO members(memberid, memberpw, membername, memberemail) VALUES(?,?,?,?)" ;
Connection conn = null;
PreparedStatement pstmt = null;
try {
Class.forName(driverName);
conn = DriverManager.getConnection(url, userName, password);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, mid); // parameterIndex : 인덱스순서(1부터)
pstmt.setString(2, mpw);
pstmt.setString(3, mname);
pstmt.setString(4, memail);
int sqlResult = pstmt.executeUpdate(); // pstmt쓸때는 이미 (sql)위에 써서 여긴 (); 비워둔다
} catch (Exception e) {
out.println("db 에러 발생");
e.printStackTrace(); //에러 내용 출력
} finally {
try {
if(pstmt != null){ // stmt가 null이 아니면 닫기 --- conn보다 먼저 닫아야한다
pstmt.close();
}
if(conn != null) { // 커넥션이 null값이 아닐때만 닫기
conn.close();
}
}catch(Exception e) {
e.printStackTrace();
}
}
'Do it > Practice' 카테고리의 다른 글
JDBC DB연결 예제 (2) | 2025.08.18 |
---|---|
MySQL) JOIN연습 (0) | 2025.08.13 |
MySQL) SELECT문 연습 (1) | 2025.08.12 |
Java) 예외처리 연습문제 (2) | 2025.08.05 |
Java) String 클래스 연습 (1) | 2025.08.04 |