DAO(Data Access Object)
db를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트
자바빈(JavaBean)
간단히 빈이라고 말하기도 함.
디폴트생성자와 프로퍼티(getter,setter)로 구성된 오브젝트를 말함, 간단히 빈이라고 부르기도 함
사용자관련 자바빈 생성
package chapter1.obj;
public class User {
private String id;
private String name;
private String password;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
사용자 정보를 입력하고 조회하는 DAO 생성하고 main을 이용한 DAO테스트
package chapter1.obj;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class UserDao {
public void add(User user) throws ClassNotFoundException, SQLException {
Class.forName("core.log.jdbc.driver.OracleDriver");
Connection c = DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.56.101:1521:orcl", "hm", "hm");
PreparedStatement ps = c.prepareStatement("insert into users(id,name,password) values(?,?,?)");
ps.setString(1, user.getId());
ps.setString(2, user.getName());
ps.setString(3, user.getPassword());
ps.executeUpdate();
ps.close();
c.close();
}
public User get(String id) throws ClassNotFoundException, SQLException {
Class.forName("core.log.jdbc.driver.OracleDriver");
Connection c = DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.56.101:1521:orcl", "hm", "hm");
PreparedStatement ps = c.prepareStatement("select * from users where id = ?");
ps.setString(1, id);
ResultSet rs = ps.executeQuery();
rs.next();
User user = new User();
user.setId(rs.getString("id"));
user.setName(rs.getString("name"));
user.setPassword(rs.getString("password"));
rs.close();
ps.close();
c.close();
return user;
}
public static void main(String[] args) throws ClassNotFoundException, SQLException {
System.out.println("test");
UserDao dao = new UserDao();
User user = new User();
user.setId("beans9");
user.setName("test");
user.setPassword("test");
dao.add(user);
System.out.println(user.getId() + "등록성공");
User user2 = dao.get(user.getId());
System.out.println(user2.getId());
System.out.println(user2.getPassword());
}
}
위의 소스를 보고 문제가 될만한 내용을 생각해보자 .. 생각해봤다면 다음장으로~
2011/11/18 - [웹개발/SPRING3.0] - [SPRING3.0] 2.오브젝트와 의존관계 .. (2)
'개발' 카테고리의 다른 글
| [spring/TIP] STS를 이용하여 순식간에 기본환경 구축하기 (4) | 2011.12.20 |
|---|---|
| [SPRING3.0] 2.오브젝트와 의존관계 .. (2) (0) | 2011.11.18 |
| [Eclipse/PLUG-IN] SVN 설치 (0) | 2011.11.17 |
| [SPRING3.0/Framework] 1. 시작 (0) | 2011.11.16 |
| [jQuery/Javascript] 달력 datepicker v2.1 (54) | 2011.11.13 |