Page 23 -
P. 23

2.3.2 비즈니스 레이어


                   비즈니스 레이어는 업무 요건을 처리하거나 도메인 내부의 특정 비즈니스 로직을 실행합니다.

                   그 과정에서 EIS 티어에 있는 DB에서 데이터를 가져오고 클라이언트 데이터를 취합합니다. 은행
                   도메인이라면 송금액에 비례한 송금 수수료가 발생하고 그 액수를 웹 레이어를 거쳐 클라이언트

                   에 보내 확인을 요청하겠죠. 전자상거래 도메인이라면 웹 레이어로 보내 처리하기 전, 클라이언트
                   의 물리적인 위치에 따라 적용 세율이 달라지므로 그에 맞춰 웹 페이지를 렌더링해야 합니다.

                   비즈니스 애플리케이션의 주요 로직은 비즈니스 레이어에 있습니다. 비즈니스 로직은 EJB에 보관
                   되어 있고 사용할 데이터는 자바 퍼시스턴스(Java Persistence API, JPA), 자바 트랜잭션(Java Transaction
                   API, JTA), 자바 데이터베이스 연결(Java Database Connectivity, JDBC) 기술로 EIS 티어에서 가져옵니다.

                   JAX-RS, JAX-WS 기술로 구현한 웹 서비스를 통해 데이터를 요청/수정하는 일도 흔합니다(자세
                   한 내용은 13장 REST형 웹 서비스 참고). 웹 레이어에서 쓸 수 있는 기술은 아주 다양합니다. 전체

                   목록은 그림 2-2를 보세요.

                      그림 2-2 웹/비즈니스 레이어에서 사용하는 기술
                    Full Product                                 New in
                    Requirements  2                              Java
                                            JSR Reference  Optional  Web Pro›le 3  EE7  Web Container  EJB Container
                    Java API for WebSocket  JSR 356
                    Java API for JSON Processing  JSR 353
                    Java Servlet 3.1        JSR 340
                    JavaServer Faces 2.2    JSR 344
                    Expression Language 3.0  JSR 341
                    JavaServer Pages 2.3    JSR 245
                    Standard Tag Library for JavaServer Pages (JSTL) 1.2  JSR 52
                    Batch Applications for the Java Platform  JSR 352
                    Concurrency Utilities for Java EE 1.0  JSR 236
                    Contexts and Dependency Injection for Java 1.1  JSR 346
                    Dependency Injection for Java 1.0  JSR 330
                    Bean Validation 1.1     JSR 349
                    Enterprise JavaBeans 3.2 (except for EJB entity
                    beans and associated EJB QL, which have been
                    made optional)          JSR 345            1           1
                    Managed Beans 1.0       JSR-316
                    Interceptors 1.2        JSR 318
                    Java EE Connector Architecture 1.7  JSR 322
                    Java Persistence 2.1    JSR 338
                    Common Annotations for the Java Platform 1.2  JSR 250
                    Java Message Service API 2.0  JSR 343
                    Java Transaction API (JTA) 1.2  JSR 907
                    JavaMail 1.5            JSR 919
                    Java API for RESTful Web Services (JAX-RS) 2.0  JSR 339
                    Implementing Enterprise Web Services 1.4  JSR 109
                    Java API for XML-Based Web Services (JAX-WS) 2.2  JSR 224
                    Web Services Metadata for the Java Platform  JSR 181
                    Java API for XML-Based RPC (JAX-RPC) 1.1  JSR 101
                    Java API for XML Registries (JAXR) 1.0   JSR 93
                    Java Authentication Service Provider Interface for
                    Containers 1.1          JSR 196
                    Java Authorization Contract for Containers 1.5  JSR 115
                    Java EE Application Deployment 1.2  JSR 88
                    J2EE Management 1.1     JSR 77
                    Debugging Support for Other Languages 1.0  JSR 45
                    Java Architecture for XML Binding (JAXB) 2.2  JSR 222
                      EJB 3.2 ۄ੉౟ Lite
                      ୹୊  ੗߄ ೒ۖಬ  ূఠ೐ۄ੉ૉ ী٣࣌    ੗߄ EE 7   JSR 342  EE.9.7 ੗߄ EE ઁಿ੄ ੹୓ ਃѤ
                      ୹୊  ੗߄ ೒ۖಬ  ূఠ೐ۄ੉ૉ ী٣࣌    ੗߄ EE 7   ਢ ೐۽౵ੌ ݺࣁ  JSR 342  WP.2.1 ೙ࣻ ஹನք౟
             040


         java_06.indd   40                                                                       2017-02-28   �� 3:00:52
   18   19   20   21   22   23