반응형

 

Properties

 

: Map보다 축소된 기능의 객체로 key와 value로 구성되어 있다.

 

Map의 경우 모든 타입의 객체를 key와 value로 사용할 수 있지만,

Properties는 key와 value값으로 String만 사용할 수 있다.

 

 

package kr.or.ddit.basic;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;

public class T10PropertiesTest {
	public static void main(String[] args) throws FileNotFoundException, IOException {
		/*
		 * Properties는 Map보다 축소된 기능의 객체라고 할 수 있다.
		 * Map은 모든 타입의 객체를 key와 value로 사용할 수 있지만,
		 * Properties객체는 key와 value값으로 String만 사용할 수 있다.
		 */
		
		Properties prop = new Properties();
		
		prop.setProperty("name", "홍길동");
		prop.setProperty("tel", "010-1234-5678");
		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"));
		
		
		// 데이터를 파일로 저장하기
		prop.store(
				new FileOutputStream(
						"./src/kr/or/ddit/basic/test.properties"), "코멘트(Comment)입니다.");
	}
}

 

결과 화면1 : 파일로 저장된 데이터

 

test.properties 파일 내용

 

 

properties 내 설명

# : 주석

\u : 유니코드로 시작한다는 뜻. properties 파일은 한글을 작성할 수 없음.

 

 

- test.properties 파일 내용

#\uCF54\uBA58\uD2B8(Comment)\uC785\uB2C8\uB2E4.
#Tue Jan 23 11:44:33 KST 2024
tel=010-1234-5678
name=\uD64D\uAE38\uB3D9
addr=\uB300\uC804
fruit=Apple

 

package kr.or.ddit.basic;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.util.Properties;

public class T10PropertiesTest {
	public static void main(String[] args) throws FileNotFoundException, IOException {
		/*
		 * Properties는 Map보다 축소된 기능의 객체라고 할 수 있다.
		 * Map은 모든 타입의 객체를 key와 value로 사용할 수 있지만,
		 * Properties객체는 key와 value값으로 String만 사용할 수 있다.
		 */
		
		// 파일로부터 데이터 읽어오기
		prop.load(new FileReader("./src/kr/or/ddit/basic/test.properties"));
		System.out.println("읽어온 데이터...");
		System.out.println("fruit => " + prop.getProperty("fruit"));
	}
}

 

결과 화면2

 

 

반응형