Properties
- Map계열의 컬렉션으로 키+ 밸류 세트로 저장
- 주로 키, 밸류 모두 문자열로 기술
- .properties 또는 .xml 파일과 작업
Properties prop = new Properties();
try {
// prop.load(new FileInputStream("resources/test.properties"));
prop.loadFromXML(new FileInputStream("resources/test.xml"));
} catch (IOException e) {
e.printStackTrace();
}
>> Properties 생성 후 .load() 메소드를 이용해 properties파일과 xml파일에 접근
동적 코딩
dbms 나 접속할 db의 url, 계정명/ 비번 등이 변경 되었을 경우 자바소스 코드 수정시 프로그램 재구동이 필요함
=> db관련 구문들을 별도로 관리하는 외부파일(.properties)에 관리하면 수정시 외부파일만 수정하면 프로그램 재구동없이 프로그램 실행이 가능함.
또한, dao 클래스의 sql문을 외부파일(.xml)에 별도로 관리하면 실시간으로 그 파일에 기록된 sql문을 읽어들여 실행할 수 있음
예시) sql 문을 별도의 xml파일에 저장 후 불러오기
private Properties prop = new Properties();
public MemberDao() {
try {
prop.loadFromXML(new FileInputStream("resources/query.xml"));
} catch (IOException e) {
e.printStackTrace();
}
}
public int insertMember(Connection conn, Member m) {
int result = 0;
PreparedStatement pstmt = null;
String sql = prop.getProperty("insertMember");
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,m.getUserId());
pstmt.setString(2, m.getUserPwd());
pstmt.setString(3, m.getUserName());
pstmt.setString(4, m.getGender());
pstmt.setInt(5, m.getAge());
pstmt.setString(6, m.getEmail());
pstmt.setString(7, m.getPhone());
pstmt.setString(8, m.getAddress());
pstmt.setString(9, m.getHobby());
result = pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
close(pstmt);
}
return result;
}
'JDBC' 카테고리의 다른 글
JDBC 04 _ mvc 패턴 이용한 JDBC _ Service, JDBC Template (0) | 2022.12.05 |
---|---|
JDBC 03 _ mvc 패턴 이용한 JDBC_Prepared Statement (0) | 2022.12.05 |
JDBC 02 _ mvc 패턴 이용한 JDBC Statement(2) (0) | 2022.12.01 |
JDBC 02 _ mvc 패턴 이용한 JDBC Statement(1) (0) | 2022.12.01 |
JDBC 01 _ delete문 (0) | 2022.11.30 |