適合中職學生學生管理系統的研發(java+jdbc+mysql)(一)
阿新 • • 發佈:2018-11-20
中職學生從學生主動性來講幾乎沒有,基礎差,在學習java的過程中,大部分學生是懶作的.所有研發一套適合中職學生的管理系統.
首先登陸介面此係統所有的介面都是用java的swing寫的
這裡面因為登陸與登陸邏輯相分離(採用的是介面回撥,這個是難點,多型知識一定要紮實,否則理解上可能存在問題)
public class LoginLayout extends JFrame { //登入的使用者名稱和密碼 private String userName; private String password; //宣告螢幕的寬高,程式視窗的寬高 private int windowWidth; private int windowHeight; private int screenSizeWidth; private int screenSizeHeight; //定義介面實現介面介面與邏輯分離(這個地方是個難點,因為用到多型的知識) private LoginPresent loginPresent; //建構函式, public LoginLayout(String title, String userName, String password,LoginPresent loginPresent) { super(title); //設定標題 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //設定能關閉視窗 this.setSize(600, 600); //設定視窗的大小 this.setLayout(null); //設定程式預設佈局格式為空,以便於後期自己簡單的設定佈局 this.setResizable(false); //設定不可縮放 init(); //執行初始化函式(將使用者名稱密碼等元件加入到面板中) this.setVisible(true); //使程式可見 this.userName = userName; this.password = password; this.loginPresent=loginPresent; } public void init() { //給螢幕的寬度高度,程式視窗的寬度高度賦值 Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); screenSizeWidth = (int) dimension.getWidth(); screenSizeHeight = (int) dimension.getHeight(); windowWidth = this.getWidth(); windowHeight = this.getHeight(); //設定程式視窗的位置為螢幕的正中央 this.setLocation(screenSizeWidth / 2 - windowWidth / 2, screenSizeHeight / 2 - windowHeight / 2); // 宣告姓名,密碼的標籤 JLabel username_label = new JLabel("姓名"); JLabel password_label = new JLabel("密碼"); // 宣告姓名輸入框和密碼輸入框 final JTextField user_field = new JTextField(); final JPasswordField password_field = new JPasswordField(); //宣告登入按鈕 JButton login_btn = new JButton("登入"); //設定各個標籤和輸入框的大小和位置 username_label.setBounds(150, 100, 100, 50); password_label.setBounds(150, 200, 100, 50); user_field.setBounds(200, 100, 300, 50); password_field.setBounds(200, 200, 300, 50); login_btn.setBounds(300, 300, 100, 50); this.add(username_label); this.add(password_label); this.add(user_field); this.add(password_field); this.add(login_btn); //登入按鈕的監聽器 login_btn.addActionListener(new ActionListener() { @SuppressWarnings("deprecation") @Override //當按鈕被單擊時自動調動這個方法 public void actionPerformed(ActionEvent event) { //如果使用者名稱和密碼都是123,那麼彈出對話方塊顯示登入成功,並且開啟另一個主框架(主頁) if (user_field.getText().equals(userName) && password_field.getText().equals(password)) { JOptionPane.showMessageDialog(null, "登入成功", "Login", JOptionPane.INFORMATION_MESSAGE); //介面回撥 loginPresent.success(); setVisible(false);//登入頁面隱藏 } else //反之,登入不成功,重新登入 { JOptionPane.showMessageDialog(null, "登入失敗,請重新登入", "Login", JOptionPane.INFORMATION_MESSAGE); //設定輸入框的內容為空,讓使用者重新輸入 user_field.setText(""); password_field.setText(""); } } }); } }
public interface LoginPresent {
//登入成功的方法
public void success();
}