Steps:
1.
On
NetBeans, create folder and file structure
as shown below:
1.1
MenuView.java
Design:
Code:
package Views;
public class
MenuView extends javax.swing.JFrame {
public MenuView(){
super("Menu");
initComponents();
}
public
MenuView(java.awt.event.ActionListener
listener) {
this();
EmployeesView.addActionListener(btnSignup, listener,"signup");
EmployeesView.addActionListener(btnEmpList, listener,"empList");
EmployeesView.addActionListener(btnUpdate, listener,"update");
EmployeesView.addActionListener(btnDelete, listener,"delete");
this.setVisible(true);
}
}
1.2
SignupView.java
Design:
Code:
package Views;
public class
SignupView extends javax.swing.JFrame {
public SignupView(){
super("Employee Signup");
initComponents();
}
public SignupView(java.awt.event.ActionListener
listener) {
this();
EmployeesView.addActionListener(btnSave, listener,"save");
this.setVisible(true);
}
}
1.3
EmpListView.java
Design:
Code:
package Views;
public class
EmpListView extends javax.swing.JFrame {
public EmpListView() {
super("Employees");
initComponents();
}
public EmpListView(java.awt.event.ActionListener
listener){
this();
EmployeesView.addActionListener(btnClose, listener,"close");
this.setVisible(true);
}
}
1.4
EmpEditDeleteView.java
Design:
Code:
package Views;
public class
EmpEditDeleteView extends javax.swing.JFrame
{
public EmpEditDeleteView() {
super("Employee Edit/Delete");
initComponents();
}
public EmpEditDeleteView(java.awt.event.ActionListener listener,String btnText){
this();
btnAction.setText(btnText);
EmployeesView.addActionListener(btnAction,
listener,btnAction.getText());
EmployeesView.addActionListener(btnSearch, listener,"search");
this.setVisible(true);
}
}
2.
On
MSAccess 2003, create a database EmployeesDB.mdb
and on query tab write the SQL statement below:
CREATE
TABLE Employees
(
id
AUTOINCREMENT ,
EmpName
TEXT(50),
EmpAddress
TEXT(100)
)
Note:
Save the database to the EmployeesMVC folder.
3.
On
EmployeesMVC.java
type the following:
package employeesmvc;
import Models.*;
import Views.*;
import Controllers.*;
public class
EmployeesMVC {
public static void main(String[] args) {
EmployeesModel
model = new
EmployeesModel(MSAccessDB.Connect());
EmployeesView
view = new EmployeesView(model);
EmployeesController controller = new
EmployeesController(model,view);
}
}
4.
On
the EmployeesModel.java type the
following:
package Models;
import java.sql.*;
public class
EmployeesModel extends PersonsModel {
private int id;
Connection db;
public int getId(){return id;}
public void setId(int id){this.id= id;}
public EmployeesModel(){}
public EmployeesModel(Connection db){
this.db=db;
}
}
5.
On
PersonsModel.java type the following:
package Models;
public class
PersonsModel {
private String name;
private String address;
public void
setName(String name){this.name=name;}
public String getName(){return
name;}
public void
setAddress(String address){this.address=address;}
public String getAddress(){return
address;}
public PersonsModel(){}
}
6.
On
EmployeesView.java
type the following:
package Views;
import Models.*;
import java.awt.event.*;
import javax.swing.*;
public class
EmployeesView {
EmployeesModel
model;
MenuView menu;
SignupView signup;
EmpListView
empList;
EmpEditDeleteView
empEditDelete;
public EmployeesView(){}
public EmployeesView(EmployeesModel model){
this.model=model;
}
public void
menu(ActionListener listener){
menu = new MenuView(listener);
}
public void
signup(ActionListener listener){
signup= new SignupView(listener);
}
public void
empList(ActionListener listener){
empList= new EmpListView(listener);
}
public void
update(ActionListener listener, String btnText){
empEditDelete
= new
EmpEditDeleteView(listener,btnText);
}
public static void addActionListener(JButton btn, ActionListener
listener,String action){
btn.addActionListener(listener);
btn.setActionCommand(action);
}
}
7.
On
EmployeesController.java
type the following:
package Controllers;
import Models.*;
import Views.*;
import java.awt.event.*;
public class
EmployeesController {
EmployeesModel
model;
EmployeesView view;
public EmployeesController(){}
public EmployeesController(EmployeesModel
model,EmployeesView view){
this.model=model;
this.view=view;
view.menu(new btnMenuActionListener());
}
class btnMenuActionListener
implements ActionListener{
@Override
public void
actionPerformed(ActionEvent e){
String
action = e.getActionCommand();
if(action.equals("signup")){
view.signup(new btnSignupActionListener());
}else if(action.equals("empList")){
view.empList(new btnEmpListActionListener());
}else if(action.equals("update")){
view.update(new btnEditDeleteActionListener(),"Update");
}else{
view.update(new btnEditDeleteActionListener(),"Delete");
}
}
}
class btnSignupActionListener
implements ActionListener{
@Override
public void
actionPerformed(ActionEvent e){}
}
class btnEditDeleteActionListener
implements ActionListener{
@Override
public void
actionPerformed(ActionEvent e){}
}
class btnEmpListActionListener
implements ActionListener{
@Override
public void
actionPerformed(ActionEvent e){}
}
}
8.
Put
your code to the test, nice jobJ
No comments:
Post a Comment