login.java
来自「可以用的成绩管理系统」· Java 代码 · 共 234 行
JAVA
234 行
/**
* @(#)Login.java
*
*
* @author
* @version 1.00 2008/7/2
*/
import java.awt.*;
import javax.swing.*;
import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.*;
import java.sql.*;
public class Login implements ActionListener{
private JFrame frObj;
private JPanel panel1,panel2,panel3;
private JLabel label1,label2;
private JButton button1,button2,button3;
private JTextField field;
private JPasswordField pwfield;
private JRadioButton radio1,radio2;
private ButtonGroup buttgro;
DataBaseManager db = new DataBaseManager();
ResultSet rs;
public static String sName ="";
//声明一个带参的构造函数,登陆的时候,传递到登陆进去的界面,并且利用这个进行查询!
public Login(String s){
sName =s;
}
public Login(){
frObj = new JFrame("登陆对话框");
frObj.setBounds(300,200,400,310);
frObj.setLayout(new BorderLayout());
frObj.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frObj.setSize(400,290);
label1 = new JLabel("帐号:");
label1.setPreferredSize(new Dimension(50,25));
label2 = new JLabel("密码:");
label2.setPreferredSize(new Dimension(50,25));
Icon in = new ImageIcon("F:/1234.JPG");
button1 = new JButton(in);
button2 = new JButton("登陆");
button2.addActionListener(this);
button3 = new JButton("退出");
button3.addActionListener(this);
field = new JTextField("0508010001",10);
field.setPreferredSize(new Dimension(130,25));
pwfield = new JPasswordField("0508010001",10);
pwfield.setEchoChar('*');
pwfield.setPreferredSize(new Dimension(130,25));
radio1 = new JRadioButton("学生",true);
radio1.setPreferredSize(new Dimension(80,25));
radio2 = new JRadioButton("教师");
radio2.setPreferredSize(new Dimension(80,25));
buttgro = new ButtonGroup();
buttgro.add(radio1);
buttgro.add(radio2);
panel1 = new JPanel();
panel1.setLayout(new BorderLayout());
panel1.add(button1);
panel1.setSize(390,120);
panel1.setBackground(new Color(241,250,255));
JPanel panel20 = new JPanel();
panel20.setLayout(new FlowLayout(FlowLayout.CENTER));
panel20.add(radio1);
panel20.add(radio2);
JPanel panel21 = new JPanel();
panel21.setLayout(new FlowLayout(FlowLayout.CENTER));
panel21.add(label1);
panel21.add(field);
JPanel panel22 = new JPanel();
panel22.setLayout(new FlowLayout(FlowLayout.CENTER));
panel22.add(label2);
panel22.add(pwfield);
panel2 = new JPanel();
panel2.setLayout(new GridLayout(3,1));
panel2.add(panel20);
panel2.add(panel21);
panel2.add(panel22);
panel2.setSize(390,120);
panel2.setBackground(new Color(241,250,255));
panel3 = new JPanel();
//panel3.setSize(390,70);
panel3.setBounds(0,250,400,60);
panel3.add(button2);
panel3.add(button3);
panel3.setBackground(new Color(241,250,255));
frObj.getContentPane().setLayout(new BorderLayout());
frObj.getContentPane().add(panel1,BorderLayout.NORTH);
frObj.getContentPane().add(panel2,BorderLayout.CENTER);
frObj.getContentPane().add(panel3,BorderLayout.SOUTH);
frObj.setResizable(false);
/* frObj.getContentPane().setLayout(new GridLayout(3,1));
frObj.getContentPane().add(panel1);
frObj.getContentPane().add(panel2);
frObj.getContentPane().add(panel3);
frObj.setResizable(false);
*/
frObj.setVisible(true);
}
private void loginPoss(){
String name = "";
String pword = "";
String type = "";
String myName= "";
String myType = "";
String myPword= "";
name = String.valueOf(field.getText()).trim();
pword = String.valueOf(pwfield.getPassword());
if(name.equals("")||name ==null){
JOptionPane.showMessageDialog(null,"请输入用户名!","提示",JOptionPane.ERROR_MESSAGE);
return;
}
if(pword.equals("")||pword==null){
JOptionPane.showMessageDialog(null,"请输入密码!","提示",JOptionPane.ERROR_MESSAGE);
return ;
}
boolean bl = false;
int i=0;
try{
String strSQL ="select * from Admin_Info where User_name ='"+name+"'and Password='"+
pword+"'";
db.rs = db.getResult(strSQL);
while(db.rs.next()){
myName = db.rs.getString(1);
myType = db.rs.getString(2);
myPword = db.rs.getString(3);
if(radio1.isSelected()){
type ="0";
}else{
type ="1";
}
if(myName.equals(name)){
if(myType.equals(type)){
if(myPword.equals(pword)){
//选择登陆方式
if(radio1.isSelected()){
frObj.dispose();
new Login(name);
StudentFace sf = new StudentFace();
}
if(radio2.isSelected()){
frObj.dispose();
new Login(name);
MainFace mf = new MainFace();
}
}else{
JOptionPane.showMessageDialog(null,"登陆失败,密码错误!",
"提示",JOptionPane.ERROR_MESSAGE);
break;
}
}else{
JOptionPane.showMessageDialog(null,"权限不对!",
"提示",JOptionPane.ERROR_MESSAGE);
break;
}
}else{
JOptionPane.showMessageDialog(null,"登陆失败,没有这个用户!",
"提示",JOptionPane.ERROR_MESSAGE);
break;
}
}
}catch(SQLException ex){
System.out.println(ex);
}catch(NullPointerException nex){
System.out.println(nex);
}
/*if(bl){
}*/
}
private void loginCanel(){
System.exit(0);
}
public static void main(String[] args){
Login log = new Login();
}
//事件监听!
public void actionPerformed(ActionEvent e) {
Object o = e.getSource();
if (o.equals(this.button2))
this.loginPoss();
else if (o.equals(this.button3))
this.loginCanel();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?