[spring] 데이터베이스 연동
테이블 생성
drop table userinfo;
create table userinfo (
userid varchar2(15) primary key,
username varchar2(20),
userpwd varchar2(10),
email varchar2(50),
phone varchar2(15),
address varchar2(100)
);
insert into userinfo (userid, username, userpwd, email, phone, address)
values ('admin', '관리자', 'a1234', 'admin@mc.co.kr', '02-1234', '서울 역삼');
insert into userinfo (userid, username, userpwd, email, phone, address)
values ('user01', '길동이', '1234', 'hong@mc.co.kr', '00-0000', '서울');
commit;
thin driver 는 순수 Java 로 만들어져 있다.
오라클 xe 가 설치되어 있습니다.
패키지 구조를 만든다.
user
user.vo
user.dao
user.service
util
커넥션 관리가 이루어져야 한다.
jdbc util 을 만든다.
UserInfo 테이블을 만든다.
DB 연동을 하려면 제일 중요한 것은 커넥션
드라이버가 컴파일 타임에 결정되면 안된다.
Class.forName(“xxxxx”)
DriverManager 클래스가 있다.
DriverManager.getConnection(url, user, password)
DB 에 따라 URL 패턴이 다르다.
jdbc:oracle:thin@localhost:1521:xe
클래스 생성
package util;
public class JDBCUtil {
}
함수 생성
import java.sql.Connection;
public class JDBCUtil {
public static Connection getConnection(){
Connection con = null;
return con;
}
public static void close(){
}
}
resources
에 db 패키지 생성. 프로퍼티 파일 생성
driver=oracle.jdbc.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:xe
user=hr
pwd=hr
c 드라이브로 파일을 복사한다.
getConnection 함수를 구현한다.
public static Connection getConnection(){
String file = "C:/db/db.properties";
Connection con = null;
try {
Properties p = new Properties();
p.load(new FileInputStream(file));
String driver = p.getProperty("driver");
String url = p.getProperty("url");
String user = p.getProperty("user");
String pw = p.getProperty("pwd");
Class.forName(driver);
con = DriverManager.getConnection(url, user, pw);
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
close 함수를 구현한다.
public static void close(ResultSet rs, PreparedStatement ps, Connection con){
try {
if (rs != null) rs.close();
if (ps != null) ps.close();
if (con != null) con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
테스트 실행
public class Test {
public static void main(String[] args) {
Connection con = JDBCUtil.getConnection();
System.out.println(con);
JDBCUtil.close(null, null, con);
}
}
정상적으로 실행되면 주소값이 출력된다.
oracle.jdbc.driver.T4CConnection@16b8460f
export 파일 : https://goo.gl/uDRrMY
'Programming > Spring' 카테고리의 다른 글
[spring] Annotation 기반 설정 (0) | 2016.04.20 |
---|---|
[spring] DI 관련 Source 내용 (0) | 2016.04.20 |
[spring] DI(Dependency Inversion) 개념 (0) | 2016.04.19 |
[Spring] 설정 파일 (0) | 2016.04.18 |
[Spring] IoC(Inversion of Controller) 컨테이너 (0) | 2016.04.18 |
댓글