기은P
시간이 멈추는 장소
기은P
  • Programming (272)
    • 개발노트 (1)
    • FrontEnd (56)
      • ES&JS 문법 (14)
      • HTML&CSS (4)
      • React 기본 (18)
      • React 심화 (12)
      • React 이슈 (2)
      • Project 연습 (1)
      • Next.js (5)
    • Backend&Devops (33)
      • AWS (2)
      • Docker (9)
      • Jenkins (6)
      • Nginx (6)
      • Node.js (1)
      • ElasticSearch (5)
      • 프레임워크&아키텍처 (2)
      • 암호화 (0)
      • 기타 (2)
    • 알고리즘 (3)
    • C# (8)
      • WPF (8)
    • Java (51)
      • 순수 Java (18)
      • RDF&Jena (12)
      • RCP&GEF (9)
      • JMX (5)
      • JMapper (3)
      • 오류해결 (4)
    • Database (21)
      • RDBMS (9)
      • NoSQL (2)
      • TSDB (1)
      • GraphQL (1)
      • Hibernate (3)
      • 데이터베이스 이론 (4)
      • Redis (1)
    • 프로토콜 (11)
      • Netty (4)
      • gRPC (5)
      • 프로토콜 개념 (2)
    • Server (4)
      • Linux (4)
    • 2020 정보처리기사 필기 (43)
      • 목차 (1)
      • 기출문제 (1)
      • 1과목 - 소프트웨어 설계 (6)
      • 2과목 - 소프트웨어 개발 (7)
      • 3과목 - 데이터베이스 구축 (8)
      • 4과목 - 프로그래밍 언어 활용 (7)
      • 5과목 - 정보시스템 구축 관리 (10)
    • 2020 정보처리기사 실기 (31)
      • 목차 (4)
      • 기출예상문제 (19)
      • 실기요약 (8)
    • 빅데이터분석기사 필기 (4)
      • 목차 (0)
      • 필기 요약 (3)
    • 전기 공학 (1)
      • CIM (1)
    • 산업자동화시스템 (3)
      • SCADA (1)
      • OPC UA (2)
    • 디자인패턴 (1)
    • 휴지통 (0)

공지사항

  • 공지사항/포스팅 예정 항목

최근 댓글

최근 글

전체 방문자
오늘
어제

티스토리

hELLO · Designed By 정상우.
기은P

시간이 멈추는 장소

Java/순수 Java

[Java] Property 파일(.properties) 생성 및 사용

2020. 3. 5. 11:41
반응형

Property 클래스는 Windows의 INI 파일과 같은 기능을 합니다.

 

DB에 대한 연결정보를 파일로 저장해 놓고 사용하는 용도로 가장 많이 쓰이는데요. 이런 경우 db.proerties라는 파일명으로 자주 작명됩니다.

 

프로젝트에 특별한 설정이 필요한 경우 properties 파일을 생성해서 사용합니다.

 

아래 예제는 프로젝트 경로에 application.properties 파일을 생성해서 getProperty, setProperty 기능을 사용해 본 예제입니다.

 

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

public class PropertiesDemo {
	private final String FilePath = System.getProperty("user.dir") + "\\application.properties";
	private Properties properties;

	public PropertiesDemo() throws IOException {
		properties = new Properties();
		createFile();
	}

	public Properties getProperties() {
		return properties;
	}

	private void loadProperty() throws IOException {
		FileInputStream inputStream = new FileInputStream(FilePath);
		properties.load(new BufferedInputStream(inputStream));
		inputStream.close();
	}

	private void createFile() throws IOException {
		File file = new File(FilePath); // 현재 프로젝트 베이스 경로
		if (!file.exists())
			file.createNewFile();
	}

	public static void main(String[] args) throws IOException {
		// 프로퍼티 클래스 생성하며 프로퍼티 파일 생성
		PropertiesDemo propertiesDemo = new PropertiesDemo();
		// 프로퍼티 파일 읽기
		propertiesDemo.loadProperty();
		
		Properties properties = propertiesDemo.getProperties();
		for (int i = 0; i < 10; i++) {
			properties.setProperty("KEY" + i, "키값" + i);
		}
		String msg = properties.getProperty("KEY3");

		properties.list(System.out); // 프로퍼티 값 출력
		System.out.println("Key3 포함여부 =>> " + properties.containsKey("KEY3"));
		System.out.println("키값2 포함여부 =>> " + properties.containsValue("키값2"));
		System.out.println("Result =>> " + msg);
	}

}
반응형

'Java > 순수 Java' 카테고리의 다른 글

[Java] Eclipse 이클립스 크롬 연동하기(Web Browser 연동)  (0) 2020.03.13
[Java] SWT Tree와 Map을 활용한 Directory 출력 예제 소스  (0) 2020.03.12
[Java] SWT Tree 사용 예제  (0) 2020.03.12
[Java] Reflection  (0) 2020.03.06
[Java] Apache log4j .properties 생성 및 오류 해결 방법  (0) 2020.03.06
    'Java/순수 Java' 카테고리의 다른 글
    • [Java] SWT Tree와 Map을 활용한 Directory 출력 예제 소스
    • [Java] SWT Tree 사용 예제
    • [Java] Reflection
    • [Java] Apache log4j .properties 생성 및 오류 해결 방법
    기은P
    기은P
    기은P의 블로그 일상과 개발 관련 포스팅 #React #Typescript #Next #Nest https://github.com/kimdongjang

    티스토리툴바