1. J2EE 의 표준 서비스들인 JNDI, JTA, JTS, JMS의 개요
가. J2EE의 정의
- Enterprise Development 에 필요한 다양한 환경을 정의해 놓은 규약, API와 TOOL들을 일컬음
나. J2EE의 3대 카테고리
구분 | 대상 | 설명 |
---|---|---|
Componet | Servlet, JSP, EJB | 비지니스 로직 구현, 프리젠테이션 로직 담당, 주로 개발자가 개발하는 부분, GUI |
Service | JDBC, JNDI, JTA | 데이터 베이스, 네이밍 서비스, 트랜잭션, 이미 존재하는 서비스들, 예로 database나 naming service 나 Transaction 서비스와 같은 것들로 개발자는 이를 그냥 사용하기만 하면 됨 |
Communication | JMS, JAF, JAVA Mail,RMI-IIOP | 객체들간의 통신에 사용되는 것들로, 메일이나 메시지를 다루는 시스템 개발때 주로 사용 |
2. JNDI, JTA, JTS, JMS의 개념 및 특징
가. JNDI(Java Naming and Directory Interchage)
- 네이밍 서비스와 자원에 속성까지 설정하는 디렉토리 서비스를 사용할 수 있게 하는 API
- A서버 : 리소스, 서빗1) 객체등을 디렉토리에 등록
- B, C, D 원격지에선 A서버의 주소로 등록된 서비스, 객체를 이름으로 검색/사용
나. JTA(Java Transaction API)
- 트랜잭션 관리를 위한 API, ACID(원자성, 일관성, 독립성, 지속성) 지원
- JTA 트랜잭션을 사용하여 제어하기 위한 메소드들
javax.transaction.UserTransaction 인터페이스의 begin(), commit(), rollback() 메소드 사용
다. JTS(Java Transaction Service)
- J2EE 트랜잭션 메니저가 어떤 일을 해야 하는지를 규정한 스팩
- JTA를 지원하는 Transaction Manager의 구현을 지정하고 OTS 1.1 스펙의 자바 매핑을 정의
- JTS는 transactions using the internet inter-ORB Protocol(IIOP)를 사용하여 트랜잭션 전파
라. JMS(Java Message Service)
- 비동기식 메시징을 위한 표준 API, 자바 어플리케이션이 비동기식 통신 수단 제공
- 핵심개념 : Message Broker(메시지를 건네받는 역할, 우체국), 목적지(수신 주소)
- 목적지 종류 : 큐(point-to-point모델), 토픽(publish-subscribe모델)
- 장점 : 대기없음, 메시지 기반, 위치 독립성, 전달보증
참고자료
JAVA2 platform
Sun에서 제사한 기본 어플리케이션에서 엔터프라즈 솔루션, 모바일 솔루션에 대한 개발 방법론과 다양한 API와 명세를 정의한 것
- J2SE(Java2 platform Standard Edition) : 자바 프로그램을 하는데 있어서 가장 기본적인 핵심부분
- J2EE(Java2 platform Enterprise Edition) : 엔터프라즈 솔루션을 개발하는데 있어 필요한 여러가지 서비스 부분과 API, 개발 방법론을 제시
- J2ME(Java2 paltform Micro Edition) : 다양한 모바일 솔루션을 개발하는데 있어서 기본적인 환경, 서비스에 대한 부분을 정의, API를 제공
J2EE
- Enterprise Development에 필요한 다양한 환경을 정의해 놓은 규약
- 위 규약만 가지고 시스템이 움직이는 것은 아님, 예로 자바 프로그램이 구동되려며 JVM이 필요한 것처럼, J2EE는 이 API와 Tool들을 일컬음
- 그리고 이와 같은 API와 TOOL등을 포함하고 기타 서비스들을 탑재한 서버를 → J2EE server, Web Application Server, J2EE application server라 일컬음
J2EE Standard Service
- Servlet, JSP, JDBC, JMS, JNDI, JTA, Java Mail, JAF, RMI-IIOP 등
- 위 기술로 JMS로 Messaging 서비스, JNDI로 Naming and Driectory 서비스, JTA로 Transaction 서비스를 생성 가능
참조
관련 문서
1)
서블릿???