Ở phần trước chúng ta đã tìm hiểu MVC là gì, ưu và nhược điểm của mô hình này. Ở phần này chúng ta sẽ thực hành tạo chương trình login bằng mô hình MVC.
Tạo model: LoginModel.java
package vn.viettuts.mvc; public class LoginModel { private String userName; private String password; public LoginModel() { } public LoginModel(String userName, String password) { super(); this.userName = userName; this.password = password; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
Tạo view: LoginView.java
Lớp này chứa 2 phương thức:
- Phương thức showMessage(): hiển thị thông tin cho người dùng.
- Phương thức getUserInfo(): được sử dụng để thu thập thông tin user mà người dùng nhập.
package vn.viettuts.mvc; import java.util.Scanner; public class LoginView { public static Scanner scanner = new Scanner(System.in); public void showMessage(String smg) { System.out.println(smg); } public LoginModel getUserInfo() { LoginModel user = new LoginModel(); System.out.print("Username: "); user.setUserName(scanner.next()); System.out.print("Password: "); user.setPassword(scanner.next()); return user; } }
Tạo controller: LoginController.java
package vn.viettuts.mvc; public class LoginController { private LoginView view; public LoginController(LoginView view) { this.view = view; } public void login() { while (true) { LoginModel user = view.getUserInfo(); if (checkLogin(user)) { view.showMessage("success!"); break; } else { view.showMessage("wrong username or password!"); } } } private boolean checkLogin(LoginModel user) { if ((user.getUserName().equals("admin")) && (user.getPassword().equals("admin"))) { return true; } return false; } public LoginView getView() { return view; } public void setView(LoginView view) { this.view = view; } }
Tạo lớp App.java chứa hàm main để chạy ứng dụng.
package vn.viettuts.mvc; public class App { public static void main(String[] args) { LoginView view = new LoginView(); LoginController control = new LoginController(view); // goi ham login control.login(); } }
Tham khảo khóa học lập trình web 6 tháng, đảm bảo 100% công việc đầu ra!
Nguồn: https://viettuts.vn/java/mo-hinh-mvc-la-gi-vi-du-login-su-dung-mo-hinh-mvc-trong-java