《Java程序设计》终极不改版【下】

简介: package 大学生信息管理系统;import java.awt.event.*;import javax.swing.*;import java.awt.

package 大学生信息管理系统;

import java.awt.event.*;

import javax.swing.*;

import java.awt.*;

import java.util.*;

import java.sql.*;

class StudentInfomationBrower    implements  ActionListener

{  

    JFrame f;

    Container cp;

    JPanel jpS,jpanelWest;

    JButton  jbt1,jbt2;//按钮,查询、取消、修改

    JLabel label,L;                  //标签

    JTable table;//用来接收数据库中返回的信息

    Object columnName[]={"学生名","学号","Java","数据结构","概率统计","入学时间"};

    Object ar[][] =new Object[80][6];

    String sno;

    StudentInfomationBrower()

   {

    f=new JFrame();

    cp=f.getContentPane(); // 初始化面板、按钮、标签、文本框

    jpS=new JPanel();      

    jpanelWest=new JPanel();

    jbt1=new JButton("确定");  

    jbt2=new JButton("返回");

     label=new JLabel("学生情况概览",SwingConstants.CENTER);

    label.setForeground(Color.blue);

    table=new JTable(ar,columnName);//ar存放表中的数据,columnname表示列名

    JScrollPane scrollpane = new JScrollPane(table);

    jpS.add(jbt1);

    jpS.add(jbt2);

    JPanel jpanel=new JPanel();

    jpanel.add(label);

    JPanel pp4=new JPanel();

    JPanel jpE=new JPanel();

    cp.add(jpanel,"North");

    JPanel jp=new JPanel();

    JPanel p=new JPanel();//用来放两个表

    p.setLayout(new BorderLayout());

    p.add(scrollpane);

    cp.add(pp4,"West");

    cp.add(p,"Center");

    cp.add(jpS,"South");

    cp.add(jpE,"East");

   

    Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();

     f.setSize(400,330);

     f.setLocation((screen.width-350)/2,(screen.height-350)/2);

     f.setVisible(true);

    jbt1.addActionListener(this);//注册监听器

    jbt2.addActionListener(this);

    }

    int i=0;

   public void showRecord()

    {

         while(i>=0)

             {   

             ar[i][0]="";

             ar[i][1]="";

             ar[i][2]="";

             ar[i][3]="";

             ar[i][4]="";

             ar[i][5]="";

             i--;

             }

             i=0;

 

 

             try{

                  Class.forName("com.hxtt.sql.access.AccessDriver");

                }catch(ClassNotFoundException e){System.out.println("加载驱动程序失败!");}

             try{

                  Connection con = DriverManager.getConnection("jdbc:Access:/D:/Student.mdb");  

              String s="select * from book ";

             Statement sql=con.createStatement();

               ResultSet rs=sql.executeQuery(s);

              

           

              while(rs.next())

              {

                 String sname=rs.getString(1);

                  String sno=rs.getString(2);

                  String ;

                  String DataStructure=rs.getString(4);

                  String Data=rs.getString(5);

                  String time=rs.getString(6);

                  ar[i][0]=sname;

                  ar[i][1]=sno;

                  ar[i][2]=java;

                  ar[i][3]=DataStructure;

                  ar[i][4]=Data;

                  ar[i][5]=time;

                  i++;

               }

                  f.repaint();

            

                   con.close();

           }catch(SQLException g)

                  {

                   System.out.println("E Code"+g.getErrorCode());

                   System.out.println("E M"+g.getMessage());

                 }

   

     }

   

 public void actionPerformed(ActionEvent e)

    { 

        

        

          String cmd=e.getActionCommand();

           if(cmd.equals("确定"))

              

                {

               f.dispose();

               }

           

            if(cmd.equals("返回"))

                f.dispose();             

    }

public static void main(String []arg){

           

            StudentInfomationBrower a=new StudentInfomationBrower();

            a.showRecord();

}

 

}

 

 

package 大学生信息管理系统;

import java.net.*;

import java.sql.*;

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import java.util.*;

import javax.swing.*;

 

class UpdatePassword extends JFrame implements ActionListener

{  

  

    JFrame f;

    Container cp;

    JPanel jp1,jp2,jp3,jp4,jp,jpanelWest;

    JButton  jbt1,jbt2;//按钮,确定、取消

    JLabel label;               //标签:修改密码

    JTextField name;

    JPasswordField tf1,tf2,tf3;    //定义文本框

    JLabel label1,label2,label3,label4;

    String sno;

    UpdatePassword(){}

    UpdatePassword(String username)

   {

    sno=username;

    f=new JFrame();

    cp=f.getContentPane(); // 初始化

    jp1=new JPanel();      

    jp2=new JPanel();

    jp3=new JPanel();

    jp4=new JPanel();

    jpanelWest=new JPanel();

    jp=new JPanel();

    jbt1=new JButton("确定");  

    jbt2=new JButton("取消");

    label=new JLabel("修改密码",SwingConstants.CENTER);

    label.setForeground(Color.blue);

    label.setFont(new Font("BOLD",Font.BOLD,15));

    name=new JTextField(20);

    tf1=new JPasswordField(20);

    tf2=new JPasswordField(20);

    tf3=new JPasswordField(20);

    jp1.add(jbt1);

    jp1.add(jbt2);

    jp1.add(new JLabel("您好"+"xx"+"欢迎登陆学生信息系统"));

    JPanel jpanel=new JPanel();

    jpanel.add(label);

    JPanel pp4=new JPanel();

    JPanel jpane4=new JPanel();

    cp.add(jpanel,"North");

    JPanel pp2=new JPanel(new GridLayout(6,1));

    JPanel pp3=new JPanel();

    pp4.setLayout(new GridLayout(6,1));

    pp4.add(new JLabel("用户名: ",SwingConstants.RIGHT));

    pp2.add(name);

    pp4.add(new JLabel("原密码: ",SwingConstants.RIGHT));

    pp2.add(tf1);

    pp4.add(new JLabel(" 新密码: ",SwingConstants.RIGHT));

    pp2.add(tf2);

    pp4.add(new JLabel("确认密码: ",SwingConstants.RIGHT));

    pp2.add(tf3);

    pp2.add(new JLabel());

    JPanel jpbutton=new JPanel();

    jpbutton.add(jbt1);

    jpbutton.add(jbt2);

    pp2.add(jpbutton);

    cp.add(pp4,"West");

    cp.add(pp2,"Center");

    cp.add(jpane4,"East");

    Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();

     f.setSize(350,330);                     

     f.setLocation((screen.width-350)/2,(screen.height-330)/2);

     f.setTitle("修改密码");

     f.setVisible(true);

    jbt1.addActionListener(this);//注册监听器

    jbt2.addActionListener(this);

    }

    public void updateM()

    {

        try{

             Class.forName("com.hxtt.sql.access.AccessDriver");

            }catch(ClassNotFoundException e){System.out.println("加载驱动程序失败!");}

         try{

             Connection con = DriverManager.getConnection("jdbc:Access:/D:/Student.mdb");

             Statement sql=con.createStatement();

             String uname=name.getText().trim();

             String queryMima="select * from user where 用户名='"+uname+"'";

             ResultSet rs=sql.executeQuery(queryMima);

            if(rs.next())

             {

                 String newMima=tf2.getText().trim();

                String s="update user set 密码='"+newMima+"' where 用户名 ='"+uname +"'";

                sql=con.createStatement();

                 int updateMima=sql.executeUpdate(s);

                 if(updateMima==1)

                 {

                    JOptionPane.showMessageDialog(f,"密码修改成功!");

                   }

                   con.close();

                   f.repaint();

            }else{

                  JOptionPane.showMessageDialog(null,"该用户不存在","警告!",

                                 JOptionPane.YES_NO_OPTION);

                 

                 }

               name.setText("");

                  tf1.setText("");

                  tf2.setText("");

                  tf3.setText("");

           } catch(SQLException g)

                  {

                  System.out.println("E Code"+g.getErrorCode());

                  System.out.println("E M"+g.getMessage());

                  }

 

    }

 

    public void actionPerformed(ActionEvent e)

    {

         String cmd=e.getActionCommand();

             if(cmd.equals("确定"))

              {

                   if(name.getText().equals("")||tf1.getText().equals("")||tf2.getText().equals("")||tf3.getText().equals(""))

                   {

                   JOptionPane.showMessageDialog(null,"请填写用户的所有信息","提示",

                                 JOptionPane.YES_NO_OPTION);

                    return;

                   }

                 

                  if(tf2.getText().trim().equals(tf3.getText().trim()))

                      updateM();

                 

               }

             else if(cmd.equals("取消"))

                     f.hide();

    }

   public static void main(String[]args)

     {

      new UpdatePassword("");

     }

}

5.系统实现(包括系统运行界面等)

开始动画:

登录界面,输入用户名,用户密码:

主界面各种功能:

 

学生搜索:

 

录入学生:

   

 

 

删除学生:

 

 

 

 

学生概览:

 

 

修改密码:

 

5.总结

   通过这次 Java课程设计,我们感觉大体上良好。碰到的问题还是比较多的,比如资料的寻找,代码的修改、完善,界面的一步步优化等。遇到问题就要解决问题,几个一起上网查阅资料,询问大神解答,由此一来,一步步将这次Java课程完成。Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程

 

参考文献

  [1]陈国军.Java程序设计基础(第5)[M].北京:清华大学出版社,2006

 [2]毕广吉.Java程序设计实例教程[M]. 北京:冶金工业出版社2007
 [3].保罗.Java面向对象程序设计[M].北京:清华大学出版社,2003
 [4].林邦杰,彻底研究java.北京:电子工业出版社2006
 [5] ()阿诺德,Ken Arnold,等. Java程序设计语言[M]. 北京:人民邮电出版社,2006
  [6] 耿祥义 , 张跃平 . JAVA 实用教程 [M]. 清华大学出版社, 2005
目录
相关文章
|
2月前
|
Java 测试技术 开发者
💡Java 零基础:彻底掌握 for 循环,打造高效程序设计
【10月更文挑战第15天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
124 63
|
6月前
|
存储 小程序 前端开发
java毕设项目|宿舍管理系统小程序设计与实现
java毕设项目|宿舍管理系统小程序设计与实现
|
6月前
|
监控 Java API
Java 程序设计 第八章 线程
Java 程序设计 第八章 线程
|
6月前
|
Java 编译器 C语言
Java 程序设计 第2章 Java基本语法 笔记
Java 程序设计 第2章 Java基本语法 笔记
|
6月前
|
Java
Java 程序设计 第七章 文件管理与输入/输出 笔记
Java 程序设计 第七章 文件管理与输入/输出 笔记
|
6月前
|
Java Android开发
Java 程序设计 第6章 异常与断言 笔记
Java 程序设计 第6章 异常与断言 笔记
|
6月前
|
Java 编译器
Java 程序设计 第4章 继承 笔记
Java 程序设计 第4章 继承 笔记
|
6月前
|
安全 Java 数据安全/隐私保护
Java 程序设计 第3章 类与对象 笔记
Java 程序设计 第3章 类与对象 笔记
|
6月前
|
Java 开发工具 Android开发
Java 程序设计 第1章 Java入门 笔记
Java 程序设计 第1章 Java入门 笔记
|
7月前
|
Java
Java的结构化程序设计
Java的结构化程序设计
79 0