1. System Properties
- 응용 프로그램이 실행되고 있는 OS 환경을 알고싶다거나 JDK 버전을 확인하고 싶다거나 사용자 계정을 확인하고 싶을 때 이용
[Java/자바] System Properties에 대해 알아보자
2. JNDI(Java Naming and Directory Interface)
- 이름 지정 및 디렉토리 서비스에서 제공하는 데이터 및 객체를 참조(lookup)하기 위한 자바 API이다.
- 일반적으로 자바 애플리케이션을 외부 디렉터리 서비스(DB server, LDAP server 등)에 연결할 때 쓰이는데 그 중에서도 데이터베이스 연결에 가장 많이 쓰임
- 데이터베이스 연결 시에는 데이터베이스 커넥션을 미리 만들어서 저장해두고, 필요할 때 저장된 공간(DB Pool)에서 가져다 쓰고 반환하는 기법
- 커넥션 풀을 이용하면 미리 커넥션을 만들어두고 사용하기 때문에 매번 사용할때마다 드라이버를 로드하고, 커넥션 객체 생성-연결-종료하는 과정을 반복하지 않아도 되어서 데이터베이스의 부하를 줄이고 자원을 효율적으로 관리할 수 있음
JNDI란? Java Naming and Directory Interface.
- 즉 JNDI는 WAS 단에서 커넥션을 제어하기 때문에 서버가 여러개 생성될 시 유리
JNDI(Java Naming and Directory Interface)는 Java 애플리케이션에서 객체를 검색하고 참조하기 위한 API입니다. JNDI는 분산 환경에서 애플리케이션 컴포넌트 간에 통신을 가능하게 하는 데 사용됩니다. 예를 들어, JNDI를 사용하여 데이터 소스, EJB, JMS 메시지 큐 및 기타 리소스를 검색할 수 있습니다.
장점:
- JNDI를 사용하면 애플리케이션 개발자는 리소스에 대한 세부 정보를 코드에서 하드 코딩하지 않아도 됩니다. 대신, 리소스를 검색하고 액세스할 수 있는 일반적인 API를 사용할 수 있습니다.
- JNDI를 사용하면 애플리케이션 구성을 쉽게 변경할 수 있습니다. 리소스 위치 또는 구성 변경에 대한 변경 사항이 필요할 때 코드를 다시 컴파일하지 않고도 애플리케이션 구성을 변경할 수 있습니다.
- JNDI는 분산 환경에서 리소스를 검색하는 데 사용되므로, 분산 애플리케이션을 개발하는 데 유용합니다.
단점:
- JNDI를 사용하면 추가 구성 및 관리 작업이 필요합니다. 리소스를 검색하려면 JNDI 이름 또는 경로를 설정해야 합니다.
- JNDI를 사용하면 애플리케이션에서 검색할 리소스의 타입 및 위치를 알고 있어야 합니다. 그렇지 않으면 리소스를 검색하는 데 어려움이 있을 수 있습니다.