学生-课程-信息管理系统(java的GUI,连接数据库)-前端篇

这是一次作业,然后直接上项目吧!

一.展示图片,代码在下边

(1)登录界面代码//头文件你自己写,我没写,这个下边还有按键监听,防止注入 

public class loginAndEnroll extends JFrame{//登录界面
    JPanel centerPanel=new JPanel(null);
    JLabel nameLabel=new JLabel("教务三管系统");
    JLabel userNameLabel=new JLabel("用户名");
    JTextField userTxt= new JTextField();
    JLabel pwdLabel=new JLabel("密码");
    JPasswordField pwdField=new JPasswordField();
    JButton loginBtn=new JButton("登录");
    JButton resetBtn=new JButton("注册");

    JMenuBar menuBar = new JMenuBar();
    JMenu menu1=new JMenu("帮助");
    JMenuItem menuItem1=new JMenuItem("关于本产品");
    JMenuItem menuItem2=new JMenuItem("合作");
    JMenuItem menuItem3=new JMenuItem("使用说明");

    JMenu menu2=new JMenu("设置");
    JMenuItem menuItem4=new JMenuItem("数据库连接");
    JMenu menu3=new JMenu("游客模式");
    JMenuItem menuItem5=new JMenuItem("仅供GUI阅览");

    public loginAndEnroll(){


        Font centerFont1=new Font("华文行楷",Font.PLAIN,40);
        Font centerFont=new Font("楷体",Font.BOLD,20);
        nameLabel.setFont(centerFont1);
        userNameLabel.setFont(centerFont);
        pwdLabel.setFont(centerFont);
        loginBtn.setFont(centerFont);
        resetBtn.setFont(centerFont);

        nameLabel.setLocation(170,40);
        nameLabel.setSize(1000,35);

        userNameLabel.setLocation(60,120);
        userNameLabel.setSize(100,35);

        userTxt.setLocation(130,120);
        userTxt.setSize(300,35);

        pwdLabel.setLocation(60,160);
        pwdLabel.setSize(100,35);

        pwdField.setLocation(130,160);
        pwdField.setSize(300,35);

        loginBtn.setLocation(120,210);
        loginBtn.setSize(80,35);

        resetBtn.setLocation(300,210);
        resetBtn.setSize(80,35);

        menu1.add(menuItem1);
        menu1.add(menuItem2);
        menu1.add(menuItem3);
        menu2.add(menuItem4);
        menu3.add(menuItem5);
        menuBar.add(menu1);
        menuBar.add(menu2);
        menuBar.add(menu3);
        setJMenuBar(menuBar);
        //centerPanel.add(menuBar);
        centerPanel.add(nameLabel);
        centerPanel.add(userNameLabel);
        centerPanel.add(userTxt);
        centerPanel.add(pwdLabel);
        centerPanel.add(pwdField);
        centerPanel.add(loginBtn);
        centerPanel.add(resetBtn);

        menuItem4.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e){
                new initialize();
            }
        });
        
        menuItem5.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e){
                bmenu();
            }
        });

        loginBtn.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                String user=userTxt.getText();//提取输入用户名
                String pws=pwdField.getText();//提取输入密码   
                int temp=Function.login(user,pws);
                    if(temp==-1) {//如果正确调用bmenu
                        connNO a=new connNO();
                    }
                    else if(temp==1){
                        bmenu();
                    }
                    else{//如果错误
                        loginNo a=new loginNo();
                    }
             }
           //清空文本框
       });
       resetBtn.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {

                 enroll a=new enroll();//进入注册页面

             }
           //清空文本框
       });
        setContentPane(centerPanel);
        setSize(600,400);
        setLocationRelativeTo(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setResizable(false);
        setVisible(true);
        userTxt.addKeyListener(new KeyAdapter() {

            public void keyTyped(KeyEvent event) {
            
            char keyChar = event.getKeyChar();
            
            if (keyChar >= 65 && keyChar <= 90 // 只接收字母
            
            //|| (keyChar == '.' && ((JTextField)event.getSource()).getText().indexOf(".") == -1)//小数点唯一
            
            // 可以接收小数点
            
            || keyChar == '\b' // 可以接收 backspace
            ||keyChar >= 97 && keyChar <= 122 // 只接收字母
            ||keyChar >= '0' && keyChar <= '9' // 只接收字母
            
            ) {
            
            return;
            
            }
            
            // 当输入在限制之外,发出声音提示
            
            Toolkit.getDefaultToolkit().beep();
            
            // 限制之外的输入不出现在文本框中
            
            event.consume();//用于指示当前事件已被处理,不应再由其他组件或监听器进一步处理。
            
            }
            
            });
            pwdField.addKeyListener(new KeyAdapter() {

                public void keyTyped(KeyEvent event) {
                
                char keyChar = event.getKeyChar();
                
                if (keyChar >= 65 && keyChar <= 90 // 只接收字母
                
                //|| (keyChar == '.' && ((JTextField)event.getSource()).getText().indexOf(".") == -1)//小数点唯一
                
                // 可以接收小数点
                
                || keyChar == '\b' // 可以接收 backspace
                ||keyChar >= 97 && keyChar <= 122 // 只接收字母
                ||keyChar >= '0' && keyChar <= '9' // 只接收字母
                
                ) {
                
                return;
                
                }
                
                // 当输入在限制之外,发出声音提示
                
                Toolkit.getDefaultToolkit().beep();
                
                // 限制之外的输入不出现在文本框中
                
                event.consume();
                
                }
                
                });
    }

    public static void main(String[] args) {
        loginAndEnroll a=new loginAndEnroll();
    }
}

(2)注册页面

package firstGUI;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import Function.Function;
public class enroll extends JFrame  {//注册界面
    JPanel centerPanel=new JPanel(null);
    JLabel nameLabel=new JLabel("注册页面");
    JLabel userNameLabel=new JLabel("用户名");
    JTextField userTxt= new JTextField();
    JLabel pwdLabel=new JLabel("密码");
    JLabel pwdLabelagain=new JLabel("确认密码");
    JPasswordField pwdField=new JPasswordField();
    JPasswordField pwdFieldagain=new JPasswordField();
    JButton resetBtn=new JButton("注册");

    public enroll() {
        Font centerFont1 = new Font("华文行楷", Font.PLAIN, 40);
        Font centerFont = new Font("楷体", Font.BOLD, 20);
        nameLabel.setFont(centerFont1);
        userNameLabel.setFont(centerFont);
        pwdLabel.setFont(centerFont);
        pwdLabelagain.setFont(centerFont);
        resetBtn.setFont(centerFont);

        nameLabel.setLocation(170, 40);
        nameLabel.setSize(1000, 35);

        userNameLabel.setLocation(60, 120);
        userNameLabel.setSize(100, 35);

        userTxt.setLocation(150, 120);
        userTxt.setSize(300, 35);

        pwdLabel.setLocation(60, 160);
        pwdLabel.setSize(100, 35);

        pwdField.setLocation(150, 160);
        pwdField.setSize(300, 35);

        pwdLabelagain.setLocation(60, 200);
        pwdLabelagain.setSize(100, 35);

        pwdFieldagain.setLocation(150, 200);
        pwdFieldagain.setSize(300, 35);


        resetBtn.setLocation(300, 250);
        resetBtn.setSize(80, 35);

        centerPanel.add(nameLabel);
        centerPanel.add(userNameLabel);
        centerPanel.add(userTxt);
        centerPanel.add(pwdLabel);
        centerPanel.add(pwdField);
        centerPanel.add(pwdLabelagain);
        centerPanel.add(pwdFieldagain);
        centerPanel.add(resetBtn);
       resetBtn.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                 String user=userTxt.getText();
                 String pws=pwdField.getText();
                 String pwsAgain=pwdFieldagain.getText();
                    int temp=Function.eroll(user,pws);
                        if(temp==-1){
                            connNO a=new connNO();
                         }
                         else if(!pws.equals(pwsAgain)){//确定密码不一致
                             byy a=new byy();
                         }
                         else if(temp==0){
                           
                            pdUser a=new pdUser();
                         }
                         else{//注册成功.进行登录
                                bgg a=new bgg();
                         }


             }
           //清空文本框
       });
        setContentPane(centerPanel);
        setSize(600,400);
        setLocationRelativeTo(null);
       // setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setResizable(false);
        setVisible(true);
     //   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   //窗体关闭,程序结束运行。
    }
}

(3)注册成功 

package firstGUI;

import javax.swing.*;
import java.awt.*;

public class bgg extends JFrame {
    JPanel centerPanel=new JPanel(null);
    JLabel No=new JLabel("注册成功");
    public bgg(){
        Font centerFont=new Font("楷体",Font.PLAIN,20);
        No.setFont(centerFont);

        No.setLocation(30,40);
        No.setSize(200,35);

        centerPanel.add(No);

        setContentPane(centerPanel);
        setSize(200,150);//型号
        setLocationRelativeTo(null);
        setResizable(false);//可转变
        setVisible(true);//可见
    }
}

(4)注册时密码重复

package firstGUI;

import javax.swing.*;
import java.awt.*;

public class byy extends JFrame {//密码不一致
    JPanel centerPanel=new JPanel(null);
    JLabel No=new JLabel("密码不一致");
    public byy(){
        Font centerFont=new Font("楷体",Font.PLAIN,20);
        No.setFont(centerFont);

        No.setLocation(30,40);
        No.setSize(200,35);

        centerPanel.add(No);

        setContentPane(centerPanel);
        setSize(200,150);
        setLocationRelativeTo(null);
        setResizable(false);
        setVisible(true);
    }
}

(5) 设置配置环节,自动配置上了

package firstGUI;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import Function.Function;
import javax.swing.*;

public class initialize extends JFrame {
    public initialize() {
        setTitle("基于Oracle数据库的配置");
       // setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(400, 200);
        setLocationRelativeTo(null);
        setResizable(false);

        // 创建一个内容面板,并设置其布局为GridLayout
        JPanel contentPane = new JPanel(new GridLayout(4, 2, 10, 10)); // 3行2列,水平和垂直间距为10

        Font centerFont = new Font("楷体", Font.BOLD, 20);

        JLabel ipLabel = new JLabel("ip");
        JLabel userLabel = new JLabel("用户");
        JLabel passwordLabel = new JLabel("密码");

        JTextField ipField = new JTextField("127.0.0.1/xe");
        JTextField userField = new JTextField("system");
        JTextField passwordField = new JTextField("800");

        JButton sureButton = new JButton("确定");
        JButton clearButton = new JButton("清除");

        // 设置字体
        ipLabel.setFont(centerFont);
        userLabel.setFont(centerFont);
        passwordLabel.setFont(centerFont);
        ipField.setFont(centerFont);
        userField.setFont(centerFont);
        passwordField.setFont(centerFont);

        // 添加组件到内容面板
        contentPane.add(ipLabel);
        contentPane.add(ipField);
        contentPane.add(userLabel);
        contentPane.add(userField);
        contentPane.add(passwordLabel);
        contentPane.add(passwordField);
        contentPane.add(sureButton);
        contentPane.add(clearButton);

        // 将内容面板设置为JFrame的内容面板
        setContentPane(contentPane);

        // 显示窗口
        setVisible(true);
        sureButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent E){
                String a=ipField.getText();
                String b=userField.getText();
                String c=passwordField.getText();
                 if(Function.start01(a,b,c)){
                    new consuccessful();

                 }else  new confail() ;
            }

        });
        clearButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent E){
                ipField.setText("");
                userField.setText("");
                passwordField.setText("");
            }

        });
    }

    // public static void main(String[] args) {
    //     new initialize();
    // }
}

(6)登录失败的界面

package firstGUI;

import javax.swing.*;
import java.awt.*;

public class loginNo extends JFrame {//登录失败
    JPanel centerPanel=new JPanel(null);
    JLabel No=new JLabel("用户名或密码错误");
    public loginNo(){
        Font centerFont=new Font("楷体",Font.PLAIN,20);
        No.setFont(centerFont);

        No.setLocation(50,40);
        No.setSize(200,35);

        centerPanel.add(No);

        setContentPane(centerPanel);
        setSize(300,150);
        setLocationRelativeTo(null);
        setResizable(false);
        setVisible(true);
    }

}

(7)注册重复的界面

package firstGUI;

import javax.swing.*;
import java.awt.*;

public class pdUser extends JFrame {//注册的用户名已有
    JPanel centerPanel=new JPanel(null);
    JLabel No=new JLabel("已有该用户名");
    public pdUser(){
        Font centerFont=new Font("楷体",Font.PLAIN,20);
        No.setFont(centerFont);

        No.setLocation(30,40);
        No.setSize(200,35);

        centerPanel.add(No);

        setContentPane(centerPanel);
        setSize(200,150);
        setLocationRelativeTo(null);
        setResizable(false);
        setVisible(true);
    }

}

(8) 

不想写了,不写了

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值