<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package iaquizapp;

import java.io.Serializable;
import java.sql.Date;
import java.util.List;

/**
 *
 * @author vunvd
 */
public class DotThi implements Serializable {
    private String dotthiID;
    private String dotthiTen;
    private Date dotthiNgay;
    private String dottthiDesc;
    private List<Lop> dotthiLop;
    private List<MonHoc> dotthiMon;
    private List<DeThi> dotthiDe;

    public DotThi() {
    }

    public DotThi(String dotthiTen, Date dotthiNgay, String dottthiDesc) {
        this.dotthiTen = dotthiTen;
        this.dotthiNgay = dotthiNgay;
        this.dottthiDesc = dottthiDesc;
    }

    public DotThi(String dotthiID, String dotthiTen, Date dotthiNgay, String dottthiDesc) {
        this.dotthiID = dotthiID;
        this.dotthiTen = dotthiTen;
        this.dotthiNgay = dotthiNgay;
        this.dottthiDesc = dottthiDesc;
    }

    public DotThi(String dotthiID, String dotthiTen, Date dotthiNgay, String dottthiDesc, List<Lop> dotthiLop, List<MonHoc> dotthiMon, List<DeThi> dotthiDe) {
        this.dotthiID = dotthiID;
        this.dotthiTen = dotthiTen;
        this.dotthiNgay = dotthiNgay;
        this.dottthiDesc = dottthiDesc;
        this.dotthiLop = dotthiLop;
        this.dotthiMon = dotthiMon;
        this.dotthiDe = dotthiDe;
    }
    
    public String getDotthiID() {
        return dotthiID;
    }

    public void setDotthiID(String dotthiID) {
        this.dotthiID = dotthiID;
    }

    public String getDotthiTen() {
        return dotthiTen;
    }

    public void setDotthiTen(String dotthiTen) {
        this.dotthiTen = dotthiTen;
    }

    public String getDottthiDesc() {
        return dottthiDesc;
    }

    public void setDottthiDesc(String dottthiDesc) {
        this.dottthiDesc = dottthiDesc;
    }

    public Date getDotthiNgay() {
        return dotthiNgay;
    }

    public void setDotthiNgay(Date dotthiNgay) {
        this.dotthiNgay = dotthiNgay;
    }

    public List<Lop> getDotthiLop() {
        return dotthiLop;
    }

    public void setDotthiLop(List<Lop> dotthiLop) {
        this.dotthiLop = dotthiLop;
    }

    public List<MonHoc> getDotthiMon() {
        return dotthiMon;
    }

    public void setDotthiMon(List<MonHoc> dotthiMon) {
        this.dotthiMon = dotthiMon;
    }

    public List<DeThi> getDotthiDe() {
        return dotthiDe;
    }

    public void setDotthiDe(List<DeThi> dotthiDe) {
        this.dotthiDe = dotthiDe;
    }
    
     
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package Data;

import iaquizapp.MonHoc;
import iaquizapp.SinhVien;
import java.util.List;

/**
 *
 * @author vunvd
 */
public class DataAccess {
    private static SinhVien sv;
    private static String dotthiID;
    private static String maDeThi;
    private static List<MonHoc> listMonThi;

    public DataAccess() {
    }

    public static String getDotthiID() {
        return dotthiID;
    }

    public static void setDotthiID(String dotthiID) {
        DataAccess.dotthiID = dotthiID;
    }

    
    public static SinhVien getSv() {
        return sv;
    }

    public static void setSv(SinhVien sv) {
        DataAccess.sv = sv;
    }

    public static List<MonHoc> getListMonThi() {
        return listMonThi;
    }

    public static void setListMonThi(List<MonHoc> listMonThi) {
        DataAccess.listMonThi = listMonThi;
    }

    public static String getMaDeThi() {
        return maDeThi;
    }

    public static void setMaDeThi(String maDeThi) {
        DataAccess.maDeThi = maDeThi;
    }
    
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package iaquizapp;

import java.io.Serializable;

/**
 *
 * @author vunvd
 */
public class DeThi implements Serializable {
    private String dethiID;
    private int dethiSoCau;
    private String dethiDSCauHoi;
    private int dethiMon;
    private String dotthiID;

    public DeThi() {
    }

    public DeThi(String dethiID, int dethiSoCau, String dethiDSCauHoi, int dethiMon, String dotthiID) {
        this.dethiID = dethiID;
        this.dethiSoCau = dethiSoCau;
        this.dethiDSCauHoi = dethiDSCauHoi;
        this.dethiMon = dethiMon;
        this.dotthiID = dotthiID;
    }
    
    public String getDotthiID() {
        return dotthiID;
    }

    public void setDotthiID(String dotthiID) {
        this.dotthiID = dotthiID;
    }

    

    public String getDethiID() {
        return dethiID;
    }

    public void setDethiID(String dethiID) {
        this.dethiID = dethiID;
    }

    public int getDethiSoCau() {
        return dethiSoCau;
    }

    public void setDethiSoCau(int dethiSoCau) {
        this.dethiSoCau = dethiSoCau;
    }

    public String getDethiDSCauHoi() {
        return dethiDSCauHoi;
    }

    public void setDethiDSCauHoi(String dethiDSCauHoi) {
        this.dethiDSCauHoi = dethiDSCauHoi;
    }

    public int getDethiMon() {
        return dethiMon;
    }

    public void setDethiMon(int dethiMon) {
        this.dethiMon = dethiMon;
    }
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package iaquizapp;

import java.io.Serializable;

/**
 *
 * @author vunvd
 */
public class SinhVien implements Serializable {
    private String svID;
    private String svPass;
    private String svHoTen;
    private int svGioiTinh;
    private String svEmail;
    private String svSDT;
    private int classID;
    private String classTen;

    public SinhVien(String svID, String svPass, String svHoTen, int svGioiTinh, String svEmail, String svSDT, int classID) {
        this.svID = svID;
        this.svPass = svPass;
        this.svHoTen = svHoTen;
        this.svGioiTinh = svGioiTinh;
        this.svEmail = svEmail;
        this.svSDT = svSDT;
        this.classID = classID;
    }

    public SinhVien(String svID, String svPass, String svHoTen, int svGioiTinh, String svEmail, String svSDT, String classTen) {
        this.svID = svID;
        this.svPass = svPass;
        this.svHoTen = svHoTen;
        this.svGioiTinh = svGioiTinh;
        this.svEmail = svEmail;
        this.svSDT = svSDT;
        this.classTen = classTen;
    }
    
    public String getSvID() {
        return svID;
    }

    public void setSvID(String svID) {
        this.svID = svID;
    }

    public String getSvPass() {
        return svPass;
    }

    public void setSvPass(String svPass) {
        this.svPass = svPass;
    }

    public String getSvHoTen() {
        return svHoTen;
    }

    public void setSvHoTen(String svHoTen) {
        this.svHoTen = svHoTen;
    }

    public int getSvGioiTinh() {
        return svGioiTinh;
    }

    public void setSvGioiTinh(int svGioiTinh) {
        this.svGioiTinh = svGioiTinh;
    }

    public String getSvEmail() {
        return svEmail;
    }

    public void setSvEmail(String svEmail) {
        this.svEmail = svEmail;
    }

    public String getSvSDT() {
        return svSDT;
    }

    public void setSvSDT(String svSDT) {
        this.svSDT = svSDT;
    }

    public int getClassID() {
        return classID;
    }

    public void setClassID(int classID) {
        this.classID = classID;
    }

    public String getClassTen() {
        return classTen;
    }

    public void setClassTen(String classTen) {
        this.classTen = classTen;
    }
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package Thi;

import com.jfoenix.controls.JFXButton;
import com.jfoenix.controls.JFXTextField;
import iaquizapp.DeThi;
import iaquizapp.MonHoc;
import iaquizapp.SinhVien;
import java.io.IOException;
import java.net.URL;
import java.rmi.RemoteException;
import java.sql.SQLException;
import java.util.List;
import java.util.ResourceBundle;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.text.Text;
import javafx.stage.Stage;
import quizapp.Login;
import quizapp.LoginController;

/**
 * FXML Controller class
 *
 * @author vunvd
 */
public class MaDeController implements Initializable {

    private static SinhVien sv;
    private static Stage stage;
    private static int indexMon;
    private iaquizapp.IAQuizApp server;
    @FXML
    private JFXTextField tfMaDe;
    @FXML
    private JFXButton btnBatDauThi;
    @FXML
    private Text txtMonThi;
    /**
     * Initializes the controller class.
     */
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        server = LoginController.getServer();
        MonHoc mon = Data.DataAccess.getListMonThi().get(indexMon);
        txtMonThi.setText(mon.getMonName());
    }
    
    public static void tangIndexMon() {
        MaDeController.indexMon++;
    }
    
    public static Stage getStage() {
        return stage;
    }

    public static void setStage(Stage stage) {
        MaDeController.stage = stage;
    }
    
    public static SinhVien getSv() {
        return sv;
    }

    public static void setSv(SinhVien sv) {
        MaDeController.sv = sv;
    }

    public static int getIndexMon() {
        return indexMon;
    }

    public static void setIndexMon(int indexMon) {
        MaDeController.indexMon = indexMon;
    }
    
    @FXML
    private void clickedThi(ActionEvent event) {
        if (tfMaDe.getText() == null) {
            System.out.println("Sai ma De");
        } else {
            try {
                String dotthiID = Data.DataAccess.getDotthiID();
                MonHoc mon = Data.DataAccess.getListMonThi().get(indexMon);
                List<DeThi> dethi = server.getListDeThi(mon.getMonID(), dotthiID);
                if (dethi.stream().anyMatch(x -> x.getDethiID().equals(tfMaDe.getText()))) {
                    TrangThiController.setMaDe(tfMaDe.getText());
                    Parent root = FXMLLoader.load(getClass().getResource("/Thi/TrangThi.fxml"));
                    Stage stage = new Stage();
                    Scene scene = new Scene(root);
                    stage.setResizable(false);
                    stage.setScene(scene);
                    TrangThiController.setStage(stage);
                    TrangThiController.setMonthi(mon);
                    stage.show();
                    getStage().close();
                } else {
                    System.out.println("Sai");
                }
            } catch (RemoteException ex) {
                Logger.getLogger(MaDeController.class.getName()).log(Level.SEVERE, null, ex);
            } catch (SQLException ex) {
                Logger.getLogger(MaDeController.class.getName()).log(Level.SEVERE, null, ex);
            } catch (IOException ex) {
                Logger.getLogger(MaDeController.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
    
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package quizapp;

import Admin.AdminHomeController;
import Thi.MaDeController;
import com.jfoenix.controls.JFXPasswordField;
import com.jfoenix.controls.JFXTextField;
import iaquizapp.IAQuizApp;
import iaquizapp.SinhVien;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.rmi.Naming;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import java.sql.SQLException;
import java.util.List;
import java.util.ResourceBundle;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

/**
 *
 * @author vunvd
 */
public class LoginController implements Initializable {
    private static iaquizapp.IAQuizApp server;
    @FXML
    private JFXTextField tfID;
    @FXML
    private JFXPasswordField tfPass;
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        try {
            server = (IAQuizApp) Naming.lookup("rmi://localhost:3000/server_quizapp");
            String dotthiID = server.getDotThiID();
            Data.DataAccess.setDotthiID(dotthiID);
            Data.DataAccess.setListMonThi(server.getDotThiMon(dotthiID));
        } catch (NotBoundException ex) {
            Logger.getLogger(AdminHomeController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (MalformedURLException ex) {
            Logger.getLogger(AdminHomeController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (RemoteException ex) {
            Logger.getLogger(AdminHomeController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
        }
    }    

    public static IAQuizApp getServer() {
        return server;
    }

    public static void setServer(IAQuizApp server) {
        LoginController.server = server;
    }

    @FXML
    private void clickedDangNhap(ActionEvent event) {
        try {
            String id = tfID.getText();
            String pass = tfPass.getText();
            Data.DataAccess.setSv(server.getSinhVien(id));
            if (server.isSvLogin(id, pass)) {
                Parent root = FXMLLoader.load(getClass().getResource("/Thi/MaDe.fxml"));
                Stage stage = new Stage();
                Scene scene = new Scene(root);
                stage.setResizable(false);
                stage.setScene(scene);
                MaDeController.setStage(stage);
                MaDeController.setIndexMon(0);
                stage.show();
                Login.getStage().close();
            } else {
                System.out.println("sai");
            }
        } catch (RemoteException ex) {
            Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(LoginController.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
    
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package Components;

import Admin.AdminHomeController;
import com.jfoenix.controls.JFXButton;
import com.jfoenix.controls.JFXComboBox;
import com.jfoenix.controls.JFXListCell;
import com.jfoenix.controls.JFXTextField;
import iaquizapp.Lop;
import iaquizapp.MonHoc;
import iaquizapp.SinhVien;
import java.net.URL;
import java.rmi.RemoteException;
import java.security.SecureRandom;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.application.Platform;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.ListCell;
import javafx.scene.control.ListView;
import javafx.scene.text.Text;
import javafx.stage.Stage;
import javafx.util.Callback;
import javafx.util.StringConverter;

/**
 * FXML Controller class
 *
 * @author vunvd
 */
public class AddSinhVienController implements Initializable {

    @FXML
    private JFXTextField tfSvHoTen;
    @FXML
    private JFXTextField tfSvEmail;
    @FXML
    private JFXTextField tfSvSdt;
    @FXML
    private JFXComboBox<GioiTinh> cbSvGioiTinh;
    @FXML
    private JFXComboBox<Lop> cbLopHoc;
    @FXML
    private JFXButton btnThemSV;
    @FXML
    private JFXButton btnHuy;
    
    private static Stage stage;
    private iaquizapp.IAQuizApp server;
    private static boolean editSinhVien;
    private static SinhVien sv;
    /**
     * Initializes the controller class.
     */
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        server = AdminHomeController.getServer();
        Platform.runLater(new Runnable() {
            @Override
            public void run() {
                setComboBoxLop();
                setComboBoxGioiTinh();
            }
        });
        
        Platform.runLater(new Runnable() {
            @Override
            public void run() {
                if (editSinhVien) {
                    btnThemSV.setText("Cập Nhật");
                    tfSvHoTen.setText(getSv().getSvHoTen());
                    tfSvEmail.setText(getSv().getSvEmail());
                    tfSvSdt.setText(getSv().getSvSDT());
                    cbLopHoc.getItems().stream().forEach(x -> {
                        if (x.getClassID() == getSv().getClassID()) {
                            cbLopHoc.getSelectionModel().select(x);
                        }
                    });
                    cbSvGioiTinh.getItems().stream().forEach(x -> {
                        if (x.getId() == sv.getSvGioiTinh()) {
                            cbSvGioiTinh.getSelectionModel().select(x);
                        }
                    });
                }
            }
        });
    }    
    
    private void setComboBoxGioiTinh() {
        List<GioiTinh> list = new ArrayList<>();
        list.add(new GioiTinh(0, "Nữ"));
        list.add(new GioiTinh(1, "Nam"));
        ObservableList<GioiTinh> itemList = FXCollections.observableArrayList();
        itemList.addAll(list);
        cbSvGioiTinh.setItems(itemList);
        cbSvGioiTinh.setCellFactory(new Callback<ListView<GioiTinh>, ListCell<GioiTinh>>() {
                @Override
                public ListCell<GioiTinh> call(ListView<GioiTinh> param) {
                    return new JFXListCell<GioiTinh>(){
                        @Override
                        public void updateItem(GioiTinh item, boolean empty) {
                            super.updateItem(item, empty); //To change body of generated methods, choose Tools | Templates.
                            if (item != null) {
                                Text text = new Text(item.getName());
                                getStyleClass().add("list-cell--gray");
                                setGraphic(text);
                            }
                        }
                    };
                }
            });
            
            cbSvGioiTinh.setConverter(new StringConverter<GioiTinh>() {
                @Override
                public String toString(GioiTinh object) {
                    if (object != null) {
                        return object.getName();
                    }
                    return null;
                }

                @Override
                public GioiTinh fromString(String string) {
                    return null;
                }
            });
    }
    
    private void setComboBoxLop() {
        try {
            List<Lop> list = server.getListLop();
            ObservableList<Lop> itemlist = FXCollections.observableArrayList();
            itemlist.addAll(list);
            cbLopHoc.setItems(itemlist);
            cbLopHoc.setCellFactory(new Callback<ListView<Lop>, ListCell<Lop>>() {
                @Override
                public ListCell<Lop> call(ListView<Lop> param) {
                    return new JFXListCell<Lop>(){
                        @Override
                        public void updateItem(Lop item, boolean empty) {
                            super.updateItem(item, empty); //To change body of generated methods, choose Tools | Templates.
                            if (item != null) {
                                Text text = new Text(item.getClassTen());
                                getStyleClass().add("list-cell--gray");
                                setGraphic(text);
                            }
                        }
                    };
                }
            });
            
            cbLopHoc.setConverter(new StringConverter<Lop>() {
                @Override
                public String toString(Lop object) {
                    if (object != null) {
                        return object.getClassTen();
                    }
                    return null;
                }

                @Override
                public Lop fromString(String string) {
                    return null;
                }
            });
        } catch (RemoteException ex) {
            Logger.getLogger(AddSinhVienController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(AddSinhVienController.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
    
    private String getAutoSvID() {
        String newID = null;
        try {
            String svID = server.getLastSinhVien();
            int numberID;
            if (svID == null) {
                numberID = 0;
            } else {
                numberID  = Integer.parseInt(svID.substring(1));
            }
            newID = "D" + String.format("%05d", numberID + 1);
        } catch (RemoteException ex) {
            Logger.getLogger(AddSinhVienController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(AddSinhVienController.class.getName()).log(Level.SEVERE, null, ex);
        }
        return newID;
    }
    
    private String getRdPass() {
        String Ab = "<KEY>";
        SecureRandom rnd = new SecureRandom();
        StringBuilder sb = new StringBuilder(8);
        for( int i = 0; i < 8; i++ )
           sb.append( Ab.charAt( rnd.nextInt(Ab.length()) ) );
        return sb.toString();
    }
    
    @FXML
    private void clickSubmit(ActionEvent event) {
        try {
            
            if (editSinhVien) {
                SinhVien sv2 = new SinhVien(
                        null,
                        null,
                        tfSvHoTen.getText(),
                        cbSvGioiTinh.getSelectionModel().getSelectedItem().getId(),
                        tfSvEmail.getText(),
                        tfSvSdt.getText(),
                        cbLopHoc.getSelectionModel().getSelectedItem().getClassID());
                server.modifySinhVien(getSv().getSvID(), sv2);
                setEditSinhVien(false);
                getStage().close();
            } else {
                SinhVien sv = new SinhVien(
                        getAutoSvID(),
                        getRdPass(),
                        tfSvHoTen.getText(),
                        cbSvGioiTinh.getSelectionModel().getSelectedItem().getId(),
                        tfSvEmail.getText(),
                        tfSvSdt.getText(),
                        cbLopHoc.getSelectionModel().getSelectedItem().getClassID());
                server.addSinhVien(sv);
                getStage().close();
            }
        } catch (RemoteException ex) {
            Logger.getLogger(AddSinhVienController.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(AddSinhVienController.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    @FXML
    private void clickedClose(ActionEvent event) {
        getStage().close();
    }

    public static Stage getStage() {
        return stage;
    }

    public static void setStage(Stage stage) {
        AddSinhVienController.stage = stage;
    }

    public static boolean isEditSinhVien() {
        return editSinhVien;
    }

    public static void setEditSinhVien(boolean editSinhVien) {
        AddSinhVienController.editSinhVien = editSinhVien;
    }

    public static SinhVien getSv() {
        return sv;
    }

    public static void setSv(SinhVien sv) {
        AddSinhVienController.sv = sv;
    }
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package iaquizapp;

import java.io.Serializable;

/**
 *
 * @author vunvd
 */
public class Lop  implements Serializable {
    private int classID;
    private String classTen;

    public Lop() {
    }
    
    public Lop(String classTen) {
        this.classTen = classTen;
    }

    public Lop(int classID, String classTen) {
        this.classID = classID;
        this.classTen = classTen;
    }

    public int getClassID() {
        return classID;
    }

    public void setClassID(int classID) {
        this.classID = classID;
    }

    public String getClassTen() {
        return classTen;
    }

    public void setClassTen(String classTen) {
        this.classTen = classTen;
    }  
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package iaquizapp;

import java.io.Serializable;

/**
 *
 * @author vunvd
 */
public class DiemThi implements Serializable {
    private String dotthiID;
    private String svID;
    private int monID;
    private float diemSo;
    private String monName;

    public DiemThi() {
    }

    public DiemThi(String dotthiID, String svID, int monID, float diemSo) {
        this.dotthiID = dotthiID;
        this.svID = svID;
        this.monID = monID;
        this.diemSo = diemSo;
    }

    public DiemThi(String dotthiID, String svID, int monID, float diemSo, String monName) {
        this.dotthiID = dotthiID;
        this.svID = svID;
        this.monID = monID;
        this.diemSo = diemSo;
        this.monName = monName;
    }

    public String getDotthiID() {
        return dotthiID;
    }

    public void setDotthiID(String dotthiID) {
        this.dotthiID = dotthiID;
    }

    public String getSvID() {
        return svID;
    }

    public void setSvID(String svID) {
        this.svID = svID;
    }

    public int getMonID() {
        return monID;
    }

    public void setMonID(int monID) {
        this.monID = monID;
    }

    public float getDiemSo() {
        return diemSo;
    }

    public void setDiemSo(float diemSo) {
        this.diemSo = diemSo;
    }

    public String getMonName() {
        return monName;
    }

    public void setMonName(String monName) {
        this.monName = monName;
    }
    
}
<file_sep>/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package iaquizapp;

import java.io.Serializable;

/**
 *
 * @author vunvd
 */
public class CauHoi implements Serializable {
    private int cauhoiID;
    private String cauhoiNoiDung;
    private String cauhoiDapAnA;
    private String cauhoiDapAnB;
    private String cauhoiDapAnC;
    private String cauhoiDapAnD;
    private String cauhoiDapAnDung;
    private int monID;

    public CauHoi() {
    }

    public CauHoi(String cauhoiNoiDung, String cauhoiDapAnA, String cauhoiDapAnB, String cauhoiDapAnC, String cauhoiDapAnD, String cauhoiDapAnDung, int monID) {
        this.cauhoiNoiDung = cauhoiNoiDung;
        this.cauhoiDapAnA = cauhoiDapAnA;
        this.cauhoiDapAnB = cauhoiDapAnB;
        this.cauhoiDapAnC = cauhoiDapAnC;
        this.cauhoiDapAnD = cauhoiDapAnD;
        this.cauhoiDapAnDung = cauhoiDapAnDung;
        this.monID = monID;
    }

    public CauHoi(int cauhoiID, String cauhoiNoiDung, String cauhoiDapAnA, String cauhoiDapAnB, String cauhoiDapAnC, String cauhoiDapAnD, String cauhoiDapAnDung, int monID) {
        this.cauhoiID = cauhoiID;
        this.cauhoiNoiDung = cauhoiNoiDung;
        this.cauhoiDapAnA = cauhoiDapAnA;
        this.cauhoiDapAnB = cauhoiDapAnB;
        this.cauhoiDapAnC = cauhoiDapAnC;
        this.cauhoiDapAnD = cauhoiDapAnD;
        this.cauhoiDapAnDung = cauhoiDapAnDung;
        this.monID = monID;
    }

    public int getCauhoiID() {
        return cauhoiID;
    }

    public void setCauhoiID(int cauhoiID) {
        this.cauhoiID = cauhoiID;
    }

    public String getCauhoiNoiDung() {
        return cauhoiNoiDung;
    }

    public void setCauhoiNoiDung(String cauhoiNoiDung) {
        this.cauhoiNoiDung = cauhoiNoiDung;
    }

    public String getCauhoiDapAnA() {
        return cauhoiDapAnA;
    }

    public void setCauhoiDapAnA(String cauhoiDapAnA) {
        this.cauhoiDapAnA = cauhoiDapAnA;
    }

    public String getCauhoiDapAnB() {
        return cauhoiDapAnB;
    }

    public void setCauhoiDapAnB(String cauhoiDapAnB) {
        this.cauhoiDapAnB = cauhoiDapAnB;
    }

    public String getCauhoiDapAnC() {
        return cauhoiDapAnC;
    }

    public void setCauhoiDapAnC(String cauhoiDapAnC) {
        this.cauhoiDapAnC = cauhoiDapAnC;
    }

    public String getCauhoiDapAnD() {
        return cauhoiDapAnD;
    }

    public void setCauhoiDapAnD(String cauhoiDapAnD) {
        this.cauhoiDapAnD = cauhoiDapAnD;
    }

    public String getCauhoiDapAnDung() {
        return cauhoiDapAnDung;
    }

    public void setCauhoiDapAnDung(String cauhoiDapAnDung) {
        this.cauhoiDapAnDung = cauhoiDapAnDung;
    }

    public int getMonID() {
        return monID;
    }

    public void setMonID(int monID) {
        this.monID = monID;
    }
    
    
}
