Thứ Bảy, 6 tháng 9, 2014

SESSION BEAN

Đầu tiên ta tạo một project với tên Calculator và sử dụng Java ServerFaces.

Tiếp đó ta tạo ra một lớp Session Bean và viết vào phương thức như dưới đây:


package daea.session.bean;

import javax.ejb.Stateless;


@Stateless
public class Calculator {

    public int sum(int a, int b){
        return a + b;
    }
}

Tiếp theo ta tạo một lớp Managed Bean và viết code như dưới đây:


package daea.manage.bean;

import daea.session.bean.Calculator;
import javax.ejb.EJB;
import javax.inject.Named;
import javax.faces.view.ViewScoped;

@Named(value = "home")
@ViewScoped
public class Home {
    @EJB
    private Calculator calculator;

    private int a;
    private int b;
    
    private int sum;
    
    public void sum(){
         sum = calculator.sum(a, b);
    }

    public int getA() {
        return a;
    }

    public int getB() {
        return b;
    }

    public int getSum() {
        return sum;
    }
    
}
Ở trang index.xhtml ta tạo ra một form như dưới trong thẻ body


<h:form>
            <h:inputText value="#{home.a}"/>
            <h:inputText value="#{home.b}"/>
            <h:commandButton value="=" actionListener="#{home.sum()}" />
            <h:outputText value="#{home.sum}"/>
        </h:form>

Và đây là source code của demo.



Thứ Tư, 3 tháng 9, 2014

Introduction to Java EE and EJB (Enterprise JavaBeans)

I. Giới thiệu về EJB
- EJB (Enterprise JavaBeans) là một thành phần bên phía server, nó được sử dụng cho việc phát triển các ứng dụng với quy mô lớn (Một hệ thống với nhiều chức năng, lượng truy cập nhiều).

- Nó đóng gói, chứa đựng các nghiệp vụ logic của ứng dụng.

- Nó là một nền tảng được sử dụng cho việc phát triển các ứng dụng có thể chạy trên nhiều nền tảng (như LINUX, WINDOWS), có tính tái sử dụng các thành phần của ứng dụng (Viết một lần và sẽ được dùng lại), ngoài ra nó là nền tảng mà phục vụ cho các ứng dụng có quy mô lớn sử dụng ngôn ngữ JAVA.

1. EJB là một thành phần.
- Thứ nhất thì ta nên hiểu khái niệm Component là gì: Component chính là một đoạn code mà nó sẽ đưa ra các hành vi của các khái niệm trong thế giới thực.

- Nó có thể được sử dụng trong các ứng dụng khác nhau (Vì tính không phụ thuộc vào nền tảng và nó là một phần có thể tách rời và tái sử dụng).

- EJB là một thành phần bên phía SERVER SIDE có thể được sử dụng để xây dựng các phần khác nhau của ứng dụng hoặc là một ứng dụng hoàn chỉnh.

- Yêu cầu chính của một thành phần là cái mà nó nên gói gọn các hành vi, tương tác của ứng dụng.

2. Why we need to use EJB 3.0

- Nó khá đơn giản, vì nó chỉ là một lớp java thông thường và ta sẽ gắn các annotation (Chú thích).
- Nó có tính tái sử dụng cao vì nó là một thành phần mà mang trong nó một số nghiệp vụ nhất định.
- Nó có khả năng phục vụ cho việc phát triển các ứng dụng lớn với lượng truy cập người dùng nhiều (có thể lên tới vài chục triệu).

3. Không nên sử dụng EJB trong các trường hợp sau.
- Những cái ứng dụng mà thuộc loại chỉ làm một lần mà không làm lại lần thứ 2 một ứng dụng tương tự như vậy, lượng người dùng ít, không cần đến quản lý các giao dịch và nhu cầu bảo mật không cao.
- Những ứng dụng mà có thể chạy trên đa nền tảng.

Sơ đồ của ứng dụng lớn được chia làm nhiều tầng:


Việc giao tiếp của SERVER.

II. Vai trò của EJB
- Với EJB việc quản lý các ứng dụng mang tính chất enterprise trở nên dễ dàng hơn.
- Nó có vai trò rất to lớn trong việc phát triển ứng dụng enterprise vì nó là một thành phần và có thể được dùng lại ở các ứng dụng khác.


III. Nhận xét chung

- Tuy rằng việc EJB có rất nhiều ưu điểm tuy nhiên khi bắt đầu mới học,  các lỗi xảy ra rất nhiều gây khó khăn.

- EJB có rất nhiều các ứng dụng mã nguồn mở, vì thế rất tiện lợi cho việc tham khảo.

- Tuy nhiên EJB chỉ phù hợp cho những ứng dụng lớn mang tính chất enterprise.