Run 클래스
package edu.kh.jdbc.run;
import edu.kh.jdbc.view.UserView;
public class Run {
public static void main(String[] args) {
UserView view = new UserView();
view.test();
}
}
User 클래스
package edu.kh.jdbc.dto;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class User {
private int userNo;
private String userId;
private String userPw;
private String userName;
private String enrollDate;
}
UserView 클래스
package edu.kh.jdbc.view;
import java.util.Scanner;
import edu.kh.jdbc.dto.User;
import edu.kh.jdbc.service.UserService;
public class UserView {
private Scanner sc = new Scanner(System.in);
private UserService service = new UserService();
public void test() {
System.out.print("ID 입력 : ");
String input = sc.next();
User user = service.selectId(input);
if(user == null) {
System.out.println("없음");
} else {
System.out.println(user);
}
}
}
UserService 클래스
package edu.kh.jdbc.service;
import java.sql.Connection;
import edu.kh.jdbc.common.JDBCTemplate;
import edu.kh.jdbc.dao.UserDAO;
import edu.kh.jdbc.dto.User;
public class UserService {
private UserDAO dao = new UserDAO();
public User selectId(String input) {
Connection conn = JDBCTemplate.getConnection();
User user = dao.selectId(conn, input);
JDBCTemplate.close(conn);
return user;
}
}
UserDAO 클래스
package edu.kh.jdbc.dao;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import static edu.kh.jdbc.common.JDBCTemplate.*;
import edu.kh.jdbc.dto.User;
public class UserDAO {
private Statement stmt = null;
private PreparedStatement pstmt = null;
private ResultSet rs = null;
public User selectId(Connection conn, String input) {
User user = null;
try {
String sql = "SELECT * FROM TB_USER WHERE USER_ID =?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, input);
rs = pstmt.executeQuery();
if(rs.next()) {
int userNo = rs.getInt("USER_NO");
String userId = rs.getString("USER_ID");
String userPw = rs.getString("USER_PW");
String userName = rs.getString("USER_NAME");
Date enrollDate = rs.getDate("ENROLL_DATE");
user = new User(userNo, userId, userPw, userName,
enrollDate.toString());
}
} catch (Exception e) {
e.printStackTrace();
} finally {
close(rs);
close(pstmt);
}
return user;
}
}