Chủ Nhật, 25 tháng 12, 2016

EJB - 1. Miêu tả lại về công nghệ của Java EE và EJB

A. Java EE:
"Java EE" tên đầy đủ là "Java Enterprise Edition" dịch sang tiếng việt có nghĩa là là "Java Phiên Bản Doanh Nghiệp", nó là một nền tảng dành cho việc xây dựng các ứng dụng cấp doanh nghiệp.
Java EE tập hợp nhiều công nghệ kỹ thuật và phối hợp chúng với nhau, việc này sẽ làm giảm đáng kể chi phí và độ phức tạp cho việc xây dựng, phát triển, triển khai, quản lý các tầng làm việc (managing multi-tier), cho các ứng dụng máy chủ trung tâm.

Java EE được xây dựng dưa trên nền tảng Java SE và có thêm các tập APIs (application programming interfaces) để phát triển các ứng dựng phái máy chủ một cách nhanh chóng, linh động, mạnh mẽ, khả năng mở rộng cao, đáng tinh cậy và bảo mật.

Java EE đã ra rất nhiều phiên bản và có rất nhiều thành phần mới hoặc hỗ trợ mới khác nhau theo từng phiên bản tuy nhiên bài viết này chỉ nhắm vào mục đích là khái miện cơ bản về Java EE, nên mình chỉ nói tới hai phần chủ chốt nhất trong nền tảng Java EE là:

  • Enterprise Java Beans (EJB): một thành phần kiến trúc của các ứng dụng server được quản lý, sử dụng để đóng gói các business logic của các ứng dụng. Kỹ thuật EJB cho phép nhanh chóng tạo ra các ứng dụng có các tính chất như là đơn giản hóa việc phân phối, dễ dàng tương tác, an toàn và linh hoạt dựa trên công nghệ Java.
  • Java Persistence API (JPA): một framework cho pháp nhà phát triển quản lý dữ liệu bằng cách sử dụng ánh xạ đối tượng quan hệ (Object Relational Mapping - ORM) trong các dứng dụng được xây dựng trên nền tảng Java

Nói tóm lại bạn có thể hiểu đơn giản Java EE là một nền tảng cung cấp nhiều công nghệ, kỹ thuật, dịch vụ giúp ta có thể nhanh chóng tạo ra các ứng dụng ở cấp doanh nghiệp, còn bạn muốn biết nó hỗ trợ như thế nào thì phải đi chi tiết vào thực tế mới có thể hiểu rõ được.

Một điều nữa khi nói tới ứng dụng doanh nghiệp thì sẽ liên quan tới services và client chính vì thế Java EE thiên về hướng Server-Client.


B. EJB:
EJB (Enterprise Java Bean) là các thành phần công nghệ phía máy chủ dùng để đóng gói lớp business logic và hỗ trợ mạnh việc thực hiện các giao tác và bảo mật.


Session Bean: Nếu đối tượng Bean chỉ thực hiện các hành vi xử lý, tính toán đơn thuần thì chúng được phân loại thành Bean thao tác. Nó chỉ có nhiệm vụ phục vụ hành khách, nơi triệu gọi đối tượng. Trong một phiên kết nối, những thao tác nhất thời không đòi hỏi việc thể hiện dữ liệu thường bao gồm: tính toán, phân tích, thống kê... Bean thao tác được chia làm 2 loại:
  • Stateless: Là các thành phần Bean không lưu lại trạng thái của giao dịch trước đó để sử dụng cho lần giao dịch sau. Bean thao tác phi trạng thái là đối tượng Bean đơn giản, dễ dùng, dễ thiết kế và quản lý nhất trong tất cả các đối tượng ejb.
  • Stateful: Bean thao tác lưu vết trạng thái là các thành phần Bean cần lưu lại vị trí của giao dịch trước đó để sử dụng cho các lần giao dịch sau. Các Bean này thường phục vụ cho các thao tác đòi hỏi phải qua nhiều bước triệu gọi trước khi trả về kết quả cuối cùng.
Entity Bean: Đối tượng thường mô tả một thực thể nào đó trong đời thực. Nó cung cấp một đối tượng xem xét dữ liệu trong cơ sở dữ liệu. Thông thường Bean đại diện cho một hàng trong tập hợp các bảng của cơ sở dữ liệu quan hệ. Một Bean thực thể thường phục vụ nhiều hơn một Client. Không giống như Bean thao tác, Bean thực thể thì tồn tại lâu hơn. Chúng duy trì một trạng thái tồn tại miễn là dữ liệu còn trong cơ sở dữ liệu, hay nói đúng hơn miễn là còn Client riêng biệt cần đến nó. Việc quản lý dữ liệu được chia ra làm 2 loại:
  • Bean Managed: Có khả năng thực thi các câu truy vấn cơ sở dữ liệu để lấy về dữ liệu mà nó thể hiện. Ví dụ trong phương thức khởi dựng Bean thực thể có thể dùng các câu lệnh SQL như SELECT, INSERT thông qua JDBC để tự tìm hoặc thêm mới dữ liệu mà nó thể hiện vào các bảng trong cơ sở dữ liệu.
  • Container Managed: Có thể không cần phải sử dụng lệnh SQL để tự tìm kiếm hạy tạo mới dữ liệu mà nó thể hiện. Thay vào đó đối tượng Bean sẽ tự khai báo trong trường hay cột dữ liệu tương ứng với các bảng trong hệ quản trị cơ sở dữ liệu. Trình chứa sẽ tự động thực hiện công việc truy vấn dữ liệu.
Message-Driven Bean: Là một chuẩn mới. Mục đích là phục vụ cho nhu cầu về các dịch vụ không đồng bộ của các thành phần. Bởi vì Session và Entity chỉ phục vụ cho các dịch vụ đồng bộ. Do đó cách sử dụng Message Driven Bean có phần giống với Session Stateless Bean, chỉ khác ở cách gọi Bean.

Tóm lại đây là mô hình phân tầng và lập trình đối ợng rất hiệu quả cho các ứng dụng mạng Java. Chúng ta xây dựng đối tượng (được gọi là các thành phần Bean) hoạt động bên trong trình chứa. Trình chứa đóng vai trò điều khiển và làm trung gian trong giao tiếp giữa Bean và trình khách. Ngày nay công nghệ lập trình đã chuyển hướng rất nhanh sang mô hình lập trình mạng đa tầng. Hiểu vEJB sẽ giúp chúng ta dễ dàng sâu hơn. Cũng như lĩnh vực lập trình phân tán triệu gọi đối ợng từ xa, lập trình trong mô hình phân tầng EJB rất mới mvà khá phức tạp đối với hầu hết các lập trình viên.

Không có nhận xét nào:

Đăng nhận xét