DESIGN PATTERN
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

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.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

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]

Employee.java
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 đó.

EmployeeView.java
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.

EmployeeController.java
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ả.

Main.java
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:

mvc pattern PNG

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!!!

Cùng chuyên mục:

Hướng dẫn Upload file với Spring Boot và jQuery Ajax trong Java

Hướng dẫn Upload file với Spring Boot và jQuery Ajax trong Java

Hướng dẫn download file với Spring Boot trong Java

Hướng dẫn download file với Spring Boot trong Java

Hướng dẫn Upload file với Spring Boot trong Java

Hướng dẫn Upload file với Spring Boot trong Java

Hướng dẫn CRUD với Spring Boot, REST và AngularJS trong Java

Hướng dẫn CRUD với Spring Boot, REST và AngularJS trong Java

Cách sử dụng Spring  Scheduled trong Spring Boot

Cách sử dụng Spring Scheduled trong Spring Boot

Cách dùng Groovy trong Spring Boot Java

Cách dùng Groovy trong Spring Boot Java

Cách dùng Spring Boot và Mustache trong Java

Cách dùng Spring Boot và Mustache trong Java

Cách dùng Spring Boot và MongoDB trong Java

Cách dùng Spring Boot và MongoDB trong Java

Cách tạo Restful Client bằng RestTemplate trong Spring Boot

Cách tạo Restful Client bằng RestTemplate trong Spring Boot

Hướng dẫn sử dụng Interceptor trong Spring Boot

Hướng dẫn sử dụng Interceptor trong Spring Boot

Sử dụng Twitter Bootstrap trong Spring Boot

Sử dụng Twitter Bootstrap trong Spring Boot

Tạo trang web đa ngôn ngữ với Spring Boot trong Java

Tạo trang web đa ngôn ngữ với Spring Boot trong Java

Tạo ứng dụng Chat với Spring Boot và Websocket

Tạo ứng dụng Chat với Spring Boot và Websocket

Sử dụng JUnit để tạo unit test trong Spring Boot

Sử dụng JUnit để tạo unit test trong Spring Boot

Cách triển khai Spring Boot trên Tomcat Server

Cách triển khai Spring Boot trên Tomcat Server

Cách test RESTful API trong Spring Boot

Cách test RESTful API trong Spring Boot

Cách dùng Spring Security trong Spring Boot để xác thực và phân quyền

Cách dùng Spring Security trong Spring Boot để xác thực và phân quyền

Duyệt cây nhị phân bằng phương pháp inOder trong Java

Duyệt cây nhị phân bằng phương pháp inOder trong Java

Xóa node của cây nhị phân tìm kiếm trong Java

Xóa node của cây nhị phân tìm kiếm trong Java

Bảo mật Spring Boot RESTful Service sử dụng Basic Authentication trong Java

Bảo mật Spring Boot RESTful Service sử dụng Basic Authentication trong Java

Top