学生信息管理系统-web项目实训(基于JAVA)
//登陆
package rjgc;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
public class LoginIn extends JFrame{
JTextField f1;
JTextField f2;
JButton b1;
JButton b2;
String power;//表示权限
String imgePath = "11.jpg";
JPanel p5;
Image img = Toolkit.getDefaultToolkit().createImage(imgePath);
LoginIn(){
Container cp=getContentPane();
Label l1=new Label("用户:");
Label l2=new Label("密码:");
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
JPanel p4=new JPanel();
p5=new JPanel(){
protected void paintChildren(Graphics g) {
g.drawImage(img,0,0,this);
super.paintChildren(g);
}
};
f1=new JTextField(15);
f2=new JPasswordField(15);
b1=new JButton("登录");
b2=new JButton("重置");
//p1.setBackground(Color.orange);
p2.add(l1);
p2.add(f1);
p2.setBorder(new MatteBorder(0,0,0,0,Color.BLACK));
p2.setBackground(Color.white);
p3.add(l2);
p3.add(f2);
p3.setBackground(Color.white);
p3.setBorder(new MatteBorder(0,0,0,0,Color.BLACK));
p4.add(b1);
p4.add(b2);
p4.setBorder(new MatteBorder(-3,-3,-3,-3,Color.CYAN));
p4.setBackground(Color.BLACK);
p5.setLayout(new FlowLayout(FlowLayout.CENTER,120,100));
p5.add(p2);
p5.add(p3);
p5.add(p4);
cp.add(p5,BorderLayout.CENTER);
b1.addActionListener(new Enter());
b2.addActionListener(new ReWrite());
addWindowListener(new winClose());
}
public static void main(String[] args) {
LoginIn log=new LoginIn();
log.setIconImage(Toolkit.getDefaultToolkit().createImage("F:/eclipse文件/rjgc/dl.gif"));
log.setTitle("计B191 冯帅 陈力源-学生信息管理系统");
log.setLocation(600,300);
log.setSize(600,600);
log.setVisible(true);
}
class Enter implements ActionListener{
@SuppressWarnings("deprecation")
public void actionPerformed(ActionEvent e)
{ //LoginIn log=new LoginIn();
if((f1.getText()).equals("admin")&&(f2.getText()).equals("123"))
{
JOptionPane.showMessageDialog(null, "登录成功!用户权限是adimistrator");
power="adminstrator";
Qframe frame= new Qframe();
frame.setIconImage(Toolkit.getDefaultToolkit().createImage("F:/eclipse文件/rjgc/java.gif"));
frame.setLocation(400,200);
frame.resize(500,285);
frame.show();
//log.setVisible(false);
dispose();
}
else if((f1.getText()).equals("冯帅")&&(f2.getText()).equals("123456"))
{
JOptionPane.showMessageDialog(null, "登录成功!用户权限是user");
power="adminstrator";
Qframe frame= new Qframe();
frame.setIconImage(Toolkit.getDefaultToolkit().createImage("F:/eclipse文件/rjgc/java.gif"));
frame.setLocation(400,200);
frame.resize(500,285);
frame.show();
dispose();
}
else JOptionPane.showMessageDialog(null, "登录失败,请重新登录!");
}
}
class ReWrite implements ActionListener{
public void actionPerformed(ActionEvent e)
{
f1.setText("");
f2.setText("");
f1.requestFocus();
}
}
class winClose extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
(e.getWindow()).dispose();
System.exit(0);
}
}
}
//主界面
package rjgc;
import java.awt.*;
import java.awt.event.*;
import java.security.cert.PKIXRevocationChecker.Option;
import javax.swing.*;
import java.sql.*;
class Qframe extends JFrame implements ActionListener{
JPanel contentPane;
BorderLayout borderLayout1=new BorderLayout(5,10);
Label prompt;
JTextField stm;
Button run;
public static final TextArea result=new TextArea();
public Qframe(){
contentPane=(JPanel)this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setTitle("学生信息管理系统");
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
prompt =new Label("执行语句:");
run=new Button("开始执行");
result.setEditable(false);
stm=new JTextField(100);
JPanel option =new JPanel();
Button zenjia=new Button("增加(add)");
option.add(zenjia,BorderLayout.NORTH);
zenjia.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==zenjia){
Adddialog add1= new Adddialog();
add1.setVisible(true);
}
}
});
zenjia.addActionListener(this);
Button shanchu=new Button("删除(delet)");
option.add(shanchu,BorderLayout.NORTH);
shanchu.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==shanchu){
Deletedialog dt1=new Deletedialog();
dt1.setVisible(true);
}
}
});
shanchu.addActionListener(this);
Button xiugai=new Button("修改(alter)");
option.add(xiugai,BorderLayout.NORTH);
xiugai.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==xiugai){
Alterdialog af=new Alterdialog();
af.setVisible(true);
}
}
});
Button cx=new Button("查询(query)");
option.add(cx,BorderLayout.NORTH);
cx.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==cx){
Cxdialog cj=new Cxdialog();
cj.show();
}
}
});
cx.addActionListener(this);
xiugai.addActionListener(this);
Button chaxun=new Button("刷新(refresh)");
option.add(chaxun,BorderLayout.NORTH);
chaxun.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==chaxun){
Connection sin=Dbcon.getconnectin();
ResultSet rs=Dbcon.query(sin);
try {
result.setText("刷新成功\n\n\n"); //.format("这是一个数%1$4d",10)
while(rs.next())
{
String msg=rs.getString("sno")+"\t"+rs.getString("sname")+"\t"+rs.getString("ssex")+"\t"+rs.getString("sage")+"\t"+rs.getString("sclass")+"\t"+rs.getString("smajor")+"\n";
result.append(msg);
}
sin.close();
rs.close();
}catch(Exception h){
h.printStackTrace();
}
}
}
});
chaxun.addActionListener(this);
Button tuichu=new Button("退出(quit)");
option.add(tuichu,BorderLayout.NORTH);
tuichu.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==tuichu){
System.exit(0);
}
}
});
//界面布局
contentPane.add(prompt,BorderLayout.WEST);
contentPane.add(stm,BorderLayout.CENTER);
contentPane.add(run,BorderLayout.EAST);
contentPane.add(result,BorderLayout.SOUTH);
contentPane.add(option,BorderLayout.NORTH);
run.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
Connection con=null;
Statement st=null;
ResultSet rs=null;
if(e.getSource()==run){
try{
con=Dbcon.getconnectin();
//System.out.println("连接成功");
String msg1="lianjiechenggong";
result.setText("连接成功\n\n\n");
String yuju=stm.getText();
st=con.createStatement();
rs=st.executeQuery(yuju);
//System.out.println("fengshuai");
//result.setText("");
while(rs.next())
{
String msg=rs.getString("sno")+"\t"+rs.getString("sname")+"\t"+rs.getString("ssex")+"\t"+rs.getString("sage")+"\t"+rs.getString("sclass")+"\t"+rs.getString("smajor")+"\n";
result.append(msg);
}
//System.out.println("连接完成");
}catch(SQLException sqle){
result.setText(sqle+"lianjiecuowu");
//System.out.println(sqle+"lianjiecuowu");
}
catch(Exception h){
//result.setText(h.getMessage());
//System.out.println(h+"diergecuowu");
h.printStackTrace();
}finally{
try {
rs.close();
st.close();
con.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
}
@SuppressWarnings("deprecation")
public static void main(String argc[]){
LoginIn dl=new LoginIn();
dl.show();
Qframe frame= new Qframe();
frame.setLocation(400,200);
frame.resize(600,350);
frame.show(); }}
//添加子界面
package rjgc;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Adddialog extends JFrame {
public static final int Width =320;
public static final int Heigth =230;
Button btn,btn2;
JTextField jt,jt2,jt3,jt4,jt5,jt6;
/*class MyPanel extends JPanel{
Label lb ;
MyPanel(String s,JTextField jt){
setLayout(new FlowLayout());
lb=new Label(s);
add(lb);add(jt);
}
}*/
public Adddialog(){
setSize(Width,Heigth);
setLocation(820,200);
setTitle(new String("增加"));
setLayout(new FlowLayout());
Container con=getContentPane();
jt=new JTextField(20);
Label lb=new Label("学号:");
jt2=new JTextField(20);
Label lb2=new Label("姓名:");
jt3=new JTextField(20);
Label lb3=new Label("性别:");
jt4=new JTextField(20);
Label lb4=new Label("年龄:");
jt5=new JTextField(20);
Label lb5=new Label("班级:");
jt6=new JTextField(20);
Label lb6=new Label("专业:");
btn=new Button("添加");
btn.addActionListener(new Enter());
btn2=new Button("取消");
/*MyPanel p1=new MyPanel("学号:",jt);
MyPanel p2=new MyPanel("姓名:",jt2);
MyPanel p3=new MyPanel("性别:",jt3);*/
add(lb);add(jt);add(lb2);add(jt2);add(lb3);add(jt3);add(lb4);add(jt4);add(lb5);add(jt5);add(lb6);add(jt6);add(btn);add(btn2);
}
class Enter implements ActionListener{
public void actionPerformed(ActionEvent e){
Container con=getContentPane();
Adddialog ad= new Adddialog();
if(e.getActionCommand().equals("添加")){
con.setBackground(Color.green);
String sno=jt.getText();
String sname=jt2.getText();
String ssex=jt3.getText();
String sage=jt4.getText();
String sclass=jt5.getText();
String smajor=jt6.getText();
Object str[]={sno,sname,ssex,sage,sclass,smajor};
Connection sin=Dbcon.getconnectin();
Dbcon.insert(sin, str);
JOptionPane.showMessageDialog(null,"添加成功!","操作提示",JOptionPane.NO_OPTION );
dispose();
}
}
}
}
//添加数据库
package rjgc;
import java.sql.*;
import javax.swing.JOptionPane;
public class Dbcon {
public final static Connection getconnectin(){
Connection con=null;
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/sims?serverTimezone=GMT%2B8";
String user = "root";
String password = "feng";
try{
//Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Class.forName(driver);
con=DriverManager.getConnection(url,user,password);
con.setCatalog("sims");
}
catch(SQLException sqle){
System.out.println(sqle+"lianjiecuowu");
}
catch(Exception e){
System.out.println(e+"diergecuowu");
}
return con;
}
//添加数据
public final static void insert(Connection con,Object obj[]){
PreparedStatement stmt=null;
try {
stmt=con.prepareStatement("insert into student(sno,sname,ssex,sage,sclass,smajor) values(?,?,?,?,?,?)");
stmt.setString(1,obj[0].toString());
stmt.setString(2,obj[1].toString());
stmt.setString(3,obj[2].toString());
stmt.setString(4,obj[3].toString());
stmt.setString(5,obj[4].toString());
stmt.setString(6,obj[5].toString());
stmt.execute();
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,"shibai","操作提示",JOptionPane.NO_OPTION );
}
}
//查询数据
public final static ResultSet query(Connection con){
ResultSet rs=null;
PreparedStatement stmt=null;
try {
stmt=con.prepareStatement("select * from student");
rs=stmt.executeQuery();
//stmt.close();
//con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return rs;
}
//删除数据
public final static void delete(Connection con,String s){
try {
PreparedStatement stmt;
stmt=con.prepareStatement("delete from student where sno=?");
stmt.setObject(1,s);
stmt.execute();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
}
}
}
//修改子界面
package rjgc;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Tianjiadialog extends JFrame {
public static final int Width =320;
public static final int Heigth =230;
Button btn,btn2;
JTextField jt,jt2,jt3,jt4,jt5,jt6;
/*class MyPanel extends JPanel{
Label lb ;
MyPanel(String s,JTextField jt){
setLayout(new FlowLayout());
lb=new Label(s);
add(lb);add(jt);
}
}*/
public Tianjiadialog(){
setSize(Width,Heigth);
setLocation(820,200);
setTitle(new String("请输入新的信息:"));
setLayout(new FlowLayout());
jt=new JTextField(20);
Label lb=new Label("学号:");
jt2=new JTextField(20);
Label lb2=new Label("姓名:");
jt3=new JTextField(20);
Label lb3=new Label("性别:");
jt4=new JTextField(20);
Label lb4=new Label("年龄:");
jt5=new JTextField(20);
Label lb5=new Label("班级:");
jt6=new JTextField(20);
Label lb6=new Label("专业:");
btn=new Button("修改");
btn.addActionListener(new Enter());
btn2=new Button("取消");
/*MyPanel p1=new MyPanel("学号:",jt);
MyPanel p2=new MyPanel("姓名:",jt2);
MyPanel p3=new MyPanel("性别:",jt3);*/
add(lb);add(jt);add(lb2);add(jt2);add(lb3);add(jt3);
add(lb4);add(jt4);add(lb5);add(jt5);add(lb6);add(jt6);
add(btn);add(btn2);
}
class Enter implements ActionListener{
public void actionPerformed(ActionEvent e){
Container con=getContentPane();
if(e.getActionCommand().equals("修改")){
con.setBackground(Color.blue);
String sno=jt.getText();
String sname=jt2.getText();
String ssex=jt3.getText();
String sage=jt4.getText();
String sclass=jt5.getText();
String smajor=jt6.getText();
Object str[]={sno,sname,ssex,sage,sclass,smajor};
Connection sin=Dbcon.getconnectin();
Dbcon.insert(sin, str);
JOptionPane.showMessageDialog(null,"修改成功!","操作提示",JOptionPane.NO_OPTION );
dispose();
}
}
}
}
//修改数据库
package rjgc;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Alterdialog extends JFrame {
public static final int Width =320;
public static final int Heigth =230;
Button btn,btn2;
JTextField jt,jt2,jt3;
/*class MyPanel extends JPanel{
Label lb ;
MyPanel(String s,JTextField jt){
setLayout(new FlowLayout());
lb=new Label(s);
add(lb);add(jt);
}
}*/
public Alterdialog(){
setSize(Width,Heigth);
setLocation(820,200);
setTitle(new String("修改:"));
setLayout(new FlowLayout());
Container con=getContentPane();
jt=new JTextField(20);
Label lb=new Label("学号:");
btn=new Button("确定");
btn.addActionListener(new Enter());
btn2=new Button("取消");
/*MyPanel p1=new MyPanel("学号:",jt);
MyPanel p2=new MyPanel("姓名:",jt2);
MyPanel p3=new MyPanel("性别:",jt3);*/
add(lb);add(jt);
//add(lb2);add(jt2);add(lb3);add(jt3);
add(btn);add(btn2);
}
class Enter implements ActionListener{
public void actionPerformed(ActionEvent e){
Container con=getContentPane();
if(e.getActionCommand().equals("确定")){
con.setBackground(Color.red);
Connection sin=Dbcon.getconnectin();
String sno=jt.getText();
try {
PreparedStatement stmt;
stmt=sin.prepareStatement("delete from student where sno=?");
stmt.setObject(1,sno);
stmt.execute();
} catch (SQLException h) {
// TODO Auto-generated catch block
h.printStackTrace();
}
dispose();
Tianjiadialog tg=new Tianjiadialog();
tg.show();
}
}
}
}
4.3.5删除
package rjgc;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Deletedialog extends JFrame {
public static final int Width =320;
public static final int Heigth =230;
Button btn,btn2;
JTextField jt,jt2,jt3;
/*class MyPanel extends JPanel{
Label lb ;
MyPanel(String s,JTextField jt){
setLayout(new FlowLayout());
lb=new Label(s);
add(lb);add(jt);
}
}*/
public Deletedialog(){
setSize(Width,Heigth);
setLocation(820,200);
setTitle(new String("删除:"));
setLayout(new FlowLayout());
Container con=getContentPane();
jt=new JTextField(20);
Label lb=new Label("学号:");
/*jt2=new JTextField(20);
Label lb2=new Label("姓名:");
jt3=new JTextField(20);
Label lb3=new Label("性别:");*/
btn=new Button("确定");
btn.addActionListener(new Enter());
btn2=new Button("取消");
/*MyPanel p1=new MyPanel("学号:",jt);
MyPanel p2=new MyPanel("姓名:",jt2);
MyPanel p3=new MyPanel("性别:",jt3);*/
add(lb);add(jt);
//add(lb2);add(jt2);add(lb3);add(jt3);
add(btn);add(btn2);
}
class Enter implements ActionListener{
public void actionPerformed(ActionEvent e){
Container con=getContentPane();
if(e.getActionCommand().equals("确定")){
con.setBackground(Color.red);
String sno=jt.getText();
Connection sin=Dbcon.getconnectin();
Dbcon.delete(sin, sno);
JOptionPane.showMessageDialog(null,"信息删除成功!","信息",JOptionPane.INFORMATION_MESSAGE );
dispose();
}
}
}
}
//查询
package rjgc;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Cxdialog extends JFrame {
public static final int Width =320;
public static final int Heigth =230;
Button btn,btn2;
JTextField jt,jt2,jt3;
/*class MyPanel extends JPanel{
Label lb ;
MyPanel(String s,JTextField jt){
setLayout(new FlowLayout());
lb=new Label(s);
add(lb);add(jt);
}
}*/
public Cxdialog(){
setSize(Width,Heigth);
setLocation(820,200);
setTitle(new String("查询:"));
setLayout(new FlowLayout());
Container con=getContentPane();
jt=new JTextField(20);
Label lb=new Label("学号:");
btn=new Button("确定");
btn.addActionListener(new Enter());
btn2=new Button("取消");
/*MyPanel p1=new MyPanel("学号:",jt);
MyPanel p2=new MyPanel("姓名:",jt2);
MyPanel p3=new MyPanel("性别:",jt3);*/
add(lb);add(jt);
//add(lb2);add(jt2);add(lb3);add(jt3);
add(btn);add(btn2);
}
class Enter implements ActionListener{
public void actionPerformed(ActionEvent e){
Container con=getContentPane();
if(e.getActionCommand().equals("确定")){
con.setBackground(Color.red);
Connection sin=Dbcon.getconnectin();
String sno=jt.getText();
ResultSet rs=null;
PreparedStatement stmt=null;
try {
stmt=sin.prepareStatement("select * from student where sno=?");
stmt.setObject(1,sno);
rs=stmt.executeQuery();
while(rs.next()){
String msg=rs.getString("sno")+"\t"+rs.getString("sname")+"\t"+rs.getString("ssex")+"\t"+rs.getString("sage")+"\t"+rs.getString("sclass")+"\t"+rs.getString("smajor")+"\n";
JOptionPane.showMessageDialog(null,msg,"查询结果:",JOptionPane.NO_OPTION );
}
//stmt.close();
//con.close();
} catch (SQLException h) {
// TODO Auto-generated catch block
h.printStackTrace();
}
}
dispose();
}
}
}
部分程序运行截图