⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loginscreen.java

📁 java+mysql开发的档案管理系统
💻 JAVA
字号:
package system;

import system.DataBase;
import system.MainScreen;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.sql.*;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.KeyStroke;

public class LoginScreen extends JFrame implements ActionListener {
	private static final long serialVersionUID = 1L;

	private static JButton cancelbutton = new JButton("取消");

	private static JButton okbutton = new JButton("登陆");

	private static JLabel passlabel = new JLabel("密码");

	private static JLabel userlabel = new JLabel("用户名");

	private JLabel userLabel = new JLabel("用户");

	private JComboBox box = new JComboBox();

	public JPasswordField passtext = new JPasswordField(20);

	public JTextField usertext = new JTextField(20);

	public static void main(String args[]) {
		JFrame screen = new LoginScreen();
		screen.repaint();
		screen.setVisible(true);
		screen.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);

	}

	public LoginScreen() {
		super("用户登陆");
		initialize();
	}

	public LoginScreen(String args) {
		super("用户登陆");
		initialize();
	};

	private void initialize() {
		setLocation(450, 250);
		setSize(300, 200);
		setResizable(false);
		this.getContentPane().setLayout(null);
		// okbutton.setFocusable(true);
		userlabel.setBounds(new Rectangle(15, 20, 60, 20));
		passlabel.setBounds(new Rectangle(15, 50, 60, 20));
		usertext.setBounds(80, 20, 160, 20);
		passtext.setBounds(new Rectangle(80, 50, 160, 20));
		userLabel.setBounds(15, 80, 40, 20);
		box.setBounds(80, 80, 100, 20);
		box.addItem("管理员");
		box.addItem("用户");
		okbutton.setBounds(new Rectangle(80, 120, 60, 20));
		cancelbutton.setBounds(new Rectangle(150, 120, 60, 20));
		getContentPane().add(userlabel);
		getContentPane().add(passlabel);
		getContentPane().add(usertext);
		getContentPane().add(passtext);
		this.getContentPane().add(userLabel);
		this.getContentPane().add(box);
		getContentPane().add(okbutton);
		getContentPane().add(cancelbutton);
		ActionListener s = new ActionListener() {
			public void actionPerformed(ActionEvent evt) {
				login();
			}
		};
		this.getRootPane().registerKeyboardAction(s,
				KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0, false),
				JComponent.WHEN_IN_FOCUSED_WINDOW);

		okbutton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent evt) {
				login();
			}
		});
		

		cancelbutton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent evt) {
				System.exit(0);
			}
		});
	}
		public void login() {
			String table = "";
			String val[] = new String[3];
			val[0] = usertext.getText();
			val[1] = new String(passtext.getPassword());
			val[2] = box.getSelectedItem().toString();
			if (val[2].equals("管理员")) {
				table = "admin";
			} else {
				table = "user";
			}
			if (val[0].equals("")) {
				JOptionPane.showMessageDialog(null, "用户名不能为空");
				usertext.requestFocus();
				return;
			} else if (val[1].equals("")) {
				JOptionPane.showMessageDialog(null, "密码不能为空");
				passtext.setText("");
				passtext.requestFocus();
				return;
			}
			check(val[0], val[1], table);
		}
	public void check(String val1, String val2, String val3) {
		String name = val1;
		String password = val2;
		String table = val3;
		String msg = val3;
		boolean flag = false;
		if (msg.equals("admin")) {
			flag = true;
		}
		String sql = "select*from " + table + " where name='" + name
				+ "' and password='" + password + "';";
		sql = changeChar.gbToiso(sql);// 转换为iso以查询中文字符
		System.out.println(sql);
		Statement stmt = null;
		ResultSet rs = null;
		DataBase db = new DataBase();
		db.connect();
		try {
			stmt = db.conn.createStatement();
			rs = stmt.executeQuery(sql);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		try {
			if (rs.first()) {
				dispose();
				MainScreen p = new MainScreen();
				p.setName(name);
				p.setPassword(password);
				p.setTrue(flag);
				p.initialize();
				p.repaint();
				p.setVisible(true);

			} else {
				JOptionPane.showMessageDialog(null, "用户名或密码有误");
				usertext.setText("");
				passtext.setText("");
				usertext.requestFocus();
				return;
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		try {
			rs.close();
			stmt.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

	public void actionPerformed(ActionEvent arg0) {
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -