MVC Pattern trong Java - Cách triển khai và ví dụ
Trong bài này chúng ta sẽ cùng nhau tìm hiểu về MVC Pattern trong Java. Đây là một trong những Design Pattern thuộc nhóm Java J2EE. Pattern này được sử dụng rất nhiều và rộng rãi trong các dự án.
Chúng ta sẽ tìm hiểu lần lượt về các khái niệm liên quan đến MVC Pattern. Cũng như cách triển khai nó như thế nào trong Java thông qua một chương trình đơn giản.
MVC Pattern là gì?
MVC Pattern là một trong những pattern được sử dụng phổ biến và nhiều nhất trong nhóm Java J2EE. MVC là chữ viết tắt bởi Model-View-Controller.
- Models về cở bản là một object, hay chính xác là POJO's. Được sử dụng làm bản thiết kế / mô hình cho tất cả các object sẽ được sử dụng trong ứng dụng.
- View đại diện cho khía cạnh trình bày của dữ liệu và thông tin nằm trong các mô hình.
- Controller kiểm soát đóng vai trò kết nối giữa Model và View. Vừa khởi tạo, cập nhật, xóa các mô hình, điền thông tin, sau đó gửi thông tin đến views (khung hình) để trình bày cho end-user (người dùng cuối).
Chương trình đơn giản với MVC Pattern
Chúng ta sẽ tạo một chương trình đơn giản để quản lý thông tin nhân viên trong một công ty. Để bắt đầu chương trình này, đầu tiên chúng ta sẽ tạo model như đã nói ở trên.
Bài viết này được đăng tại [free tuts .net]
public class Employee { private int employeeId; private String name; public int getEmployeeId() { return employeeId; } public void setEmployeeId(int id) { this.employeeId = id; } public String getName() { return name; } public void setEmployeeName(String name) { this.name = name; } }
Chúng ta cần một cách để trình bày dữ liệu từ model trên. Vì vây, chúng ta sẽ tạo một view để làm việc đó.
public class EmployeeView { public void printEmployeeInformation(String employeeName, int employeeId) { System.out.println("Thông tin nhân viên: "); System.out.println("ID: " + employeeId); System.out.println("Tên: " + employeeName); } }
Tiếp đến chúng ta sẽ tạo một controller. Controller này sẽ sử dụng cả model và view ở trên để khởi tạo model.
public class EmployeeController { private Employee employee; private EmployeeView employeeView; public EmployeeController(Employee employee, EmployeeView employeeView) { this.employee = employee; this.employeeView = employeeView; } public String getEmployeeName() { return employee.getName(); } public void setEmployeeName(String name) { employee.setEmployeeName(name); } public int getEmployeeId() { return employee.getEmployeeId(); } public void setEmployeeId(int id) { employee.setEmployeeId(id); } public void updateView() { employeeView.printEmployeeInformation(employee.getName(), employee.getEmployeeId()); } }
Sau khi hoàn thành được ba thành phần trên, chúng ta đã có thể tạo class Main để chạy chương trình và kiểm tra kết quả.
public class Main { public static void main(String[] args) { Employee employee = getEmployeeFromDatabase(); EmployeeView view = new EmployeeView(); EmployeeController controller = new EmployeeController(employee, view); controller.updateView(); controller.setEmployeeId(5); System.out.println("--------------------------------------"); System.out.println("Sau khi update:"); System.out.println("--------------------------------------"); controller.updateView(); System.out.println("------------------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } // simulating a database public static Employee getEmployeeFromDatabase() { Employee employee = new Employee(); employee.setEmployeeName("Quyền"); employee.setEmployeeId(1); return employee; } }
Kết quả sau khi chạy chương trình: Sau khi tạo một nhân viên, chúng ta gọi phương thức updateView để có thể update thông tin cho nhân viên đó. Hãy xem kết quả dưới đây:
Như vậy là chúng ta đã thực hiện xong chương trình đơn giản với MVC Pattern trong Java. Chúc các bạn thực hiện thành công!!!