Java 大作业之学生信息管理系统—The Second

目录

上次只讲到了java相关的数据库连接 及操作

下面就是登陆界面的了 主要由SimsLogin.java实现 效果如下:

Java 大作业之学生信息管理系统—The SecondJava 大作业之学生信息管理系统—The Second

实现代码如下:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.sql.*;
///这是一个登录类。设计成一个继承容器的类。
///WIDTH是指整个顶层框架的宽度。
///HEIGHT是指整个顶层框架的长度。
class login extends JPanel
{
static final int WIDTH=270;
static final int HEIGHT=150;
JFrame loginframe;
///按照网格组布局方式排列组件的方法
///x指控件位于第几列。
///y指控件位于第几行。
///w指控件需要占几列。
///h指控件需要占几行。

public void add(Component c,GridBagConstraints constraints,int x,int y,int w,int h)
{
constraints.gridx=x;
constraints.gridy=y;
constraints.gridwidth=w;
constraints.gridheight=h;
add(c,constraints);
}                                         //此方法用来添加控件到容器中
///这是一个构造器方法
///loginframe是就是指这个界面的框架
/// setDefaultCloseOperation这是一个使得窗口上面的关闭控件有效的类库方法
/// lay是一个网格组布局管理器的对象。
/// nameinput是用来输入用户名的文本域。
/// passwordinput是用来输入密码的文本域。
/// title是用来显示标题的标签。
/// name是用来显示“姓名”的标签。
///password是用来显示“密码”的标签。
///ok是一个按钮,使进入系统。
///cancel是一个按钮,使退出界面和系统。
/// ok.addActionListener是一个进入系统动作事件监听方法。
///cancel.addActionListener是一个退出系统和界面动作事件的监听方法。
login()
{
loginframe=new JFrame("SIMS Design By Artur"); //设置标题

loginframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
GridBagLayout lay=new GridBagLayout();
setLayout(lay);
loginframe.add(this, BorderLayout.WEST);
loginframe.setSize(WIDTH,HEIGHT);

Toolkit kit=Toolkit.getDefaultToolkit();//将程序显示在屏幕中央
Dimension screenSize=kit.getScreenSize();
int width=screenSize.width;
int height=screenSize.height;
int x=(width-WIDTH)/2;
int y=(height-HEIGHT)/2;
loginframe.setLocation(x,y);

JButton ok=new JButton("登录");
JButton cancel=new JButton("退出");
JLabel title=new JLabel("学生信息管理系统登陆         ");
JLabel name=new JLabel("用户名:");
JLabel password=new JLabel("密 码:");

final JTextField nameinput=new JTextField(15);
final JPasswordField passwordinput=new JPasswordField(15);
GridBagConstraints constraints=new GridBagConstraints();
constraints.fill=GridBagConstraints.NONE;
constraints.anchor=GridBagConstraints.EAST;
constraints.weightx=3;
constraints.weighty=4;

add(title,constraints,0,0,4,1);                 //使用网格组布局添加控件
add(name,constraints,0,1,1,1);
add(password,constraints,0,2,1,1);
add(nameinput,constraints,2,1,1,1);
add(passwordinput,constraints,2,2,1,1);
add(ok,constraints,0,3,1,1);
add(cancel,constraints,2,3,1,1);
loginframe.setResizable(false);
loginframe.setVisible(true);
ok.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent Event)
{
String nametext=nameinput.getText();
String passwordtext=passwordinput.getText();

String str=new String(passwordtext);
String sql="select * from users where username='"+nametext+"' and password='"+passwordtext+"'" ;
try
{ DBconnection con= new DBconnection();
Statement st=con.getConnection();

ResultSet rs=st.executeQuery(sql);
if(rs.next())

{
loginframe.dispose();
mainframe artur=new mainframe(); //此界面就是后面的主界面

}
else //错误提示

{
JOptionPane.showMessageDialog(null,"你输入的用户名或密码有误!", "友情提示",JOptionPane.INFORMATION_MESSAGE);

nameinput.setText("");
passwordinput.setText("");
}
}
catch(SQLException e) {JOptionPane.showMessageDialog(null,e.getMessage(), "对不起,出错啦",JOptionPane.ERROR_MESSAGE);}

}
});
cancel.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent Event)
{
System.exit(0);
}
});
}
}
public class SimsLogin
{
public static void main(String[] args){
login log=new login();}
}