2-1.(7) Properties
Properties
- Properties는 Map보다 축소된 기능의 객체라고 할 수 있다.
Properties / Map 차이점
1) Properties
- key와 value값으로 String만 사용
- setProperty(), getProperty()메서드를 통해서 데이터 출력
- DB에 대한 연결정보를 파일로 저장해 놓고 사용하는 용도로 많이 쓰임
: db.properties라는 파일명으로 자주 작명
2) Map
- 모든 형태의 객체 데이터를 key와 value값으로 사용
- put(), get()메서드를 이용해서 데이터를 출력
public static void main(String[] args) throws FileNotFoundException, IOException {
System.out.println("Properties는 key와 value 모두 String으로 넣어야 함!!!");
Properties prop = new Properties();
prop.setProperty("name", "홍길동");
prop.setProperty("tel", "010-7896-4563");
prop.setProperty("addr", "대전");
String name = prop.getProperty("name");
String tel = prop.getProperty("tel");
System.out.println("이름 : "+name);
System.out.println("전화 : "+tel);
System.out.println("주소 : "+prop.getProperty("addr"));
//내용 파일로 저장하기 => 패키지안에 properties파일 생성됨
prop.store(new FileOutputStream("src/kr/or/ddit/basic/test.properties"),"this is comment");
// => 패키지안에 properties파일 생성됨 (아래 내용)
// #this is comment
// #Wed Sep 16 16:54:46 KST 2020
// tel=010-7896-4563
// name=\uD64D\uAE38\uB3D9 : \홍\길\동
// addr=\uB300\uC804 : \대\전
//키값 = value값
}
}
: db.properties라는 파일명으로 자주 작명
public static void main(String[] args) throws FileNotFoundException, IOException {
System.out.println("Properties는 key와 value 모두 String으로 넣어야 함!!!");
Properties prop = new Properties();
prop.setProperty("name", "홍길동");
prop.setProperty("tel", "010-7896-4563");
prop.setProperty("addr", "대전");
String name = prop.getProperty("name");
String tel = prop.getProperty("tel");
System.out.println("이름 : "+name);
System.out.println("전화 : "+tel);
System.out.println("주소 : "+prop.getProperty("addr"));
//내용 파일로 저장하기 => 패키지안에 properties파일 생성됨
prop.store(new FileOutputStream("src/kr/or/ddit/basic/test.properties"),"this is comment");
// => 패키지안에 properties파일 생성됨 (아래 내용)
// #this is comment
// #Wed Sep 16 16:54:46 KST 2020
// tel=010-7896-4563
// name=\uD64D\uAE38\uB3D9 : \홍\길\동
// addr=\uB300\uC804 : \대\전
//키값 = value값
}
}
================================================
2020.09.29 (금)
- JDBC 연동하다가 넘어옴
예시
- 6_1.JDBCTest // T03_PropertiesTest
- 외부의 properties파일을 읽어와 Properties객체로 처리하기
- 6_1.JDBCTest 폴더안에 sourcefolder 'res' 생성 후
'file'생성 후 'db.properties'로 저장 후 아래 내용 입력
driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@localhost:1521/xe
user=zhyun
pass=java
- 순서
-
읽어온 정보를 저장할 Properties객체 생성
Properties prop = new Properties();
-
읽어올 파일명을 이용한 File객체 생성
File file = new File("읽어올 파일명 경로");
-
파일 읽기를 수행할 FileInputStream객체 생성
FileInputStream fis = new FileInputStream(file);
-
Properties 객체로 파일 내용 읽기
prop.load(fis);
-
읽어온 자료 출력 -> key값만 읽어와 Enumeration객체로 반환
Enumeration<String> keys = (Enumeration<String>)prop.propertyNames();
=> key값 개수만큼 반복해서 값 출력 -
keys.hasMoreElement()
=> 다음 포인터 위치에 자료가 있으면 true, 없으면 false반환
while(keys.hasMoreElements()){
String key = keys.nextElement();
String value = prop.getProperty(key);
System.out.println(key + " => "+ value);
}
- Console창 :
Author And Source
이 문제에 관하여(2-1.(7) Properties), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@zhyun1220/Properties저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)