学生管理系统JAVA实验报告

合集下载

JAVA学生信息管理系统实验报告

JAVA学生信息管理系统实验报告

JA V A程序设计实验报告学号:姓名:班级:实验、Java课程设计--------学生信息管理系统一、实验目的1.掌握Java基本语法2.理解面向对象编程特点3.理解Java I/O编程4.掌握Java图形界面编程5.掌握Java与不同数据库进行连接二、预习内容Java的基本语法知识、类和对象、Java Swing图形界面编程、Java I/O处理以及Java与数据库连接操作三、实验设备与环境通过局域网互联,安装Windows 2000/XP操作系统环境的JDK 1.6,my eclipse 或者EditPlus编程工具。

并安装MySQL数据库四、实验内容编写并调试运行Java程序,进行设计,掌握Java开发的基础。

五、实验任务设计学生信息管理系统。

要求包括1. 登陆模块:设立超级管理员权限,用户可以根据不同的权限登陆系统,超级管理员可以对学生信息进行增、删、改、查操作。

而普通用户只可以查找学生信息。

2. 包括学生添加信息模块、学生信息删除模块、学生信息修改模块和学生信息查询模块3.对于管理员,可以对管理员进行添加、删除以及修改密码等操作。

六、实验报告(要求独立完成参考程序的代码、编译、调试与运行)1、程序清单:1.1程序模块清单package Pan;import java.awt.event.ItemListener;import javax.swing.*;import ponent;import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.event.InputEvent;import java.awt.event.ItemListener;import java.awt.event.KeyEvent;import java.awt.event.ActionListener; import java.awt.event.ActionEvent;import java.util.*;import java.awt.Color;import java.text.DecimalFormat;import java.sql.*;import java.sql.Date;import java.awt.*;import java.util.Vector;public class Res{/*** @param args*/public static void main(String[] args) {FirstWindow win =new FirstWindow("学生信息管理系统");}}class FirstWindow extends JFrame implements ActionListener{JMenuBar menubar;JMenu menu1,menu2,menu3,menu4;public final JMenuItem a11,a12,a13,a14,a15,a16,a17;public final JMenuItem a21,a22,a23,a24;public final JMenuItem a3;public final JMenuItem a4;public final JButton btn;JPanel pnl;JLabel label;boolean flag;FirstWindow(String s){setTitle(s);setSize(400,400);setLocation(100,100);setVisible(true);setDefaultCloseOperation(3);pnl=new JPanel();this.getContentPane().add(pnl);pnl.setLayout(new BorderLayout());label=new JLabel("欢迎使用学生管理系统",JLabel.CENTER);label.setForeground(Color.red);pnl.add(label,BorderLayout.CENTER);menubar=new JMenuBar();menu1=new JMenu("使用");menu2=new JMenu("用户管理");menu3=new JMenu("帮助");menu4=new JMenu("退出");a11=new JMenuItem("管理员登录");a12=new JMenuItem("查询学生信息");a13=new JMenuItem("更改学生信息");a14=new JMenuItem("删除学生信息");a15=new JMenuItem("添加学生信息");a16=new JMenuItem("超级管理员登录");a17=new JMenuItem("普通学生登录");a11.setEnabled(true);a16.setEnabled(true);a17.setEnabled(true);a12.setVisible(false);a13.setVisible(false);a14.setVisible(false);a15.setVisible(false);a21=new JMenuItem("添加用户");a22=new JMenuItem("删除用户");a23=new JMenuItem("更改用户");a24=new JMenuItem("修改密码");a21.setEnabled(false);a22.setEnabled(false);a23.setEnabled(false);a24.setEnabled(false);a3=new JMenuItem("系统介绍");a3.setEnabled(true);a4=new JMenuItem("退出");a4.setEnabled(true);btn=new JButton("再次确认登陆");pnl.add(btn,BorderLayout.EAST);btn.setSize(10,10); menu1.add(a11);menu1.addSeparator(); menu1.add(a16);menu1.addSeparator(); menu1.add(a17);menu1.addSeparator(); menu1.add(a12);menu1.addSeparator(); menu1.add(a13);menu1.addSeparator(); menu1.add(a14);menu1.addSeparator(); menu1.add(a15);menu1.addSeparator();menu2.add(a21);menu2.addSeparator(); menu2.add(a22);menu2.addSeparator(); menu2.add(a23);menu2.addSeparator();menu2.add(a24);menu2.addSeparator();menu3.add(a3);menu3.addSeparator();menu4.add(a4);menubar.add(menu1); menubar.add(menu2); menubar.add(menu3); menubar.add(menu4); setJMenuBar(menubar);a11.addActionListener(this); a12.addActionListener(this); a13.addActionListener(this); a14.addActionListener(this); a15.addActionListener(this); a16.addActionListener(this); a17.addActionListener(this); a21.addActionListener(this); a22.addActionListener(this); a23.addActionListener(this); a24.addActionListener(this); a3.addActionListener(this);a4.addActionListener(this);btn.addActionListener(this);}public void setColor(Color black) {// TODO Auto-generated method stub}public void actionPerformed(ActionEvent event) {Object temp=new Object();temp=event.getSource();if(temp==a11){Login login=new Login();login.Login();}if(temp==a12){ShowStu show=new ShowStu();show.ShowStu();}if(temp==a13){AlterStu alter=new AlterStu();alter.AlterStu();}if(temp==a14){DeleteStu delete=new DeleteStu();delete.DeleteStu();}if(temp==a15){AddStu add=new AddStu();add.AddStu();}if(temp==a16){superlog superlog=new superlog();superlog.superlog();}if(temp==a17){stuLogin stu=new stuLogin();stu.stuLogin();a12.setVisible(true);}if(temp==a21){AddUser add=new AddUser();add.AddUser();}if(temp==a22){DeleteUser delete=new DeleteUser();delete.DeleteUser();}if(temp==a23){AlterUser alter=new AlterUser();alter.AlterUser();}if(temp==a24){AlterPword pword=new AlterPword(); pword.AlterPword();}if(temp==a3){SystemHelp help=new SystemHelp();help.SystemHelp();}if(temp==a4){SystemExit exit1=new SystemExit();exit1.SystemExit();}if(temp==btn){Connection con;Statement st;Statement st1;ResultSet rs,rs1;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();st1=con.createStatement();rs=st.executeQuery("SELECT * FROM Login");rs1=st1.executeQuery("SELECT * FROM superlog");if(rs.next()){a12.setVisible(true);a21.setEnabled(true);a22.setEnabled(true);a23.setEnabled(true);a24.setEnabled(true);Login login=new Login();login.Clear();}if(rs1.next()){a12.setVisible(true);a13.setVisible(true);a14.setVisible(true);a15.setVisible(true);superlog superlog=new superlog();lear();}con.close();}catch(SQLException e){System.out.println(e);}}}}主页面class Login{void Login(){final JFrame loginframe=new JFrame("登陆界面");loginframe.setBounds(200,200,400,500);loginframe.setVisible(true);loginframe.setResizable(true);loginframe.setLayout(null);final JTextField text1=new JTextField(10);final JPasswordField text2=new JPasswordField(10);JButton btn1=new JButton("登陆");JButton btn2=new JButton("取消");JLabel label1=new JLabel("用户名");JLabel label2=new JLabel("密码");loginframe.add(btn1);loginframe.add(btn2);loginframe.add(text1);loginframe.add(text2);loginframe.add(label1);loginframe.add(label2);label1.setBounds(80, 100, 50, 50);label2.setBounds(80, 200, 50, 50);btn1.setForeground(Color.black);btn2.setForeground(Color.black);text1.setBounds(150, 100, 200, 30);text2.setBounds(150, 200, 200, 30);btn1.setBounds(100, 300, 100, 60);btn2.setBounds(200, 300, 100, 60);btn1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String name=text1.getText();String password=text2.getText();try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{Connection con;Statement sql,st;ResultSet rs;con=DriverManager.getConnection("jdbc:odbc:pan","","") ;sql=con.createStatement();st=con.createStatement();rs=sql.executeQuery("SELECT username,password FROM users where username='"+name+"'");if(!rs.next()){JOptionPane b=new JOptionPane();b.showMessageDialog(null,"账号有误" ,"消息对话框",RMATION_MESSAGE);}else{String username=rs.getString(1);String pass=rs.getString(2);if( Integer.parseInt(password)==Integer.parseInt(pass) ){st.executeUpdate("INSERT INTO Login VALUES('"+username+"','"+pass+"')");loginframe.dispose();JOptionPane b=new JOptionPane();b.showMessageDialog(null,"登录成功" ,"消息对话框",RMATION_MESSAGE);}else{text1.setText("");text2.setText("");JOptionPanea=new JOptionPane();a.showMessageDialog(null,"您的账户名或者密码有误","消息对话框" ,RMATION_MESSAGE);}}}catch(SQLException e){System.out.println(e);}}});btn2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){loginframe.dispose();}});}void Clear(){Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();st.executeUpdate("DELETE FROM Login");con.close();}catch(SQLException e){System.out.println(e);}}}管理员登陆与权限class superlog{superlog(){final JFrame loginframe=new JFrame("登陆界面");loginframe.setBounds(200,200,400,500);loginframe.setVisible(true);loginframe.setResizable(true);loginframe.setLayout(null);final JTextField text1=new JTextField(10);final JPasswordField text2=new JPasswordField(10);JButton btn1=new JButton("登陆");JButton btn2=new JButton("取消");JLabel label1=new JLabel("超级用户名",JLabel.CENTER);JLabel label2=new JLabel("密码",JLabel.CENTER);loginframe.add(btn1);loginframe.add(btn2);loginframe.add(text1);loginframe.add(text2);loginframe.add(label1);loginframe.add(label2);label1.setBounds(80, 100, 100, 50);label2.setBounds(80, 200, 100, 50);btn1.setForeground(Color.black);btn2.setForeground(Color.black);text1.setBounds(150, 100, 200, 30);text2.setBounds(150, 200, 200, 30);btn1.setBounds(100, 300, 100, 60);btn2.setBounds(200, 300, 100, 60);btn1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String name=text1.getText();@SuppressWarnings("deprecation")String password=text2.getText();tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{Connection con;Statement sql;ResultSet rs;con=DriverManager.getConnection("jdbc:odbc:pan","","") ;sql=con.createStatement();rs=sql.executeQuery("SELECT Cusername,Cpassword FROM super where Cusername='"+name+"'");if(!rs.next())JOptionPane b=new JOptionPane();b.showMessageDialog(null,"超级账号错误" ,"消息对话框",RMATION_MESSAGE);}else{String username=null;String pass=null;username=rs.getString(1);pass=rs.getString(2);if( Integer.parseInt(password)==Integer.parseInt(pass) ){sql.executeUpdate("INSERT INTO superlog VALUES('"+username+"',"+"'"+pass+"')");JOptionPane b=new JOptionPane();b.showMessageDialog(null,"登录成功" ,"消息对话框",RMATION_MESSAGE);loginframe.dispose();}else{text1.setText("");text2.setText("");JOptionPane a=new JOptionPane();a.showMessageDialog(null,"您的账户名或者密码有误","消息对话框" ,RMATION_MESSAGE);}}}catch(SQLException e){System.out.println(e);}}});btn2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){loginframe.dispose();}});}public void superlog() {// TODO Auto-generated method stub }void Cclear(){Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();st.executeUpdate("DELETE FROM superlog");con.close();}catch(SQLException e){System.out.println(e);}}}超级管理员登陆界面与权限class stuLogin{void stuLogin(){final JFrame loginframe=new JFrame("登陆界面");loginframe.setBounds(200,200,400,500);loginframe.setVisible(true);loginframe.setResizable(true);loginframe.setLayout(null);final JTextField text1=new JTextField(15);final JPasswordField text2=new JPasswordField(15);JButton btn1=new JButton("登陆");JButton btn2=new JButton("取消");JLabel label1=new JLabel(" 学生姓名",JLabel.CENTER);JLabel label2=new JLabel("密码",JLabel.CENTER);loginframe.add(btn1);loginframe.add(btn2);loginframe.add(text1);loginframe.add(text2);loginframe.add(label1);loginframe.add(label2);label1.setBounds(80, 100, 100, 50);label2.setBounds(80, 200, 100, 50);btn1.setForeground(Color.black);btn2.setForeground(Color.black);text1.setBounds(150, 100, 200, 30);text2.setBounds(150, 200, 200, 30);btn1.setBounds(100, 300, 100, 60);btn2.setBounds(200, 300, 100, 60);btn1.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String name=text1.getText();String password=text2.getText();try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{Connection con;Statement sql;ResultSet rs;con=DriverManager.getConnection("jdbc:odbc:pan","","") ;sql=con.createStatement();rs=sql.executeQuery("SELECTsname,sphone FROM student where sname='"+name+"' AND sphone='"+password+"'");if(rs.next()){JOptionPane a=new JOptionPane();a.showMessageDialog(null,"登陆成功","消息对话框" ,RMATION_MESSAGE);loginframe.dispose();}else{text1.setText("");text2.setText("");JOptionPane a=new JOptionPane();a.showMessageDialog(null,"您的账户名或密码有误","消息对话框" ,RMATION_MESSAGE);}con.close();}catch(SQLException e){System.out.println(e);}}});btn2.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){loginframe.dispose();}});}}普通学生登陆与权限class ShowStu{void ShowStu(){JFrame frame1=new JFrame("学生信息窗口");frame1.setBounds(300,300,500,400);frame1.setDefaultCloseOperation(2);JTable table;Object a[][]=null;Object name[]={"学号","姓名","年龄","性别","籍贯","电话"};Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println("" + e);}try{con=DriverManager.getConnection("jdbc:odbc:pan",""," ");st=con.createStatement(ResultSet.TYPE_SCROLL_SENSITI VE,ResultSet.CONCUR_READ_ONLY);rs=st.executeQuery("SELECT * FROM student");st();int lastnumber=rs.getRow();a=new Object[lastnumber][6];int i=0;rs.beforeFirst();while(rs.next()){a[i][0]=rs.getString(1);a[i][1]=rs.getString(2);a[i][2]=rs.getString(3);a[i][3]=rs.getString(4);a[i][4]=rs.getString(5);a[i][5]=rs.getString(6);i++;}con.close();}catch(SQLException e){System.out.println(e);}table=new JTable(a,name);frame1.setLayout(new BorderLayout());frame1.add(newJScrollPane(table),BorderLayout.CENTER);frame1.setVisible(true);frame1.validate();}}class AlterStu{void AlterStu(){JFrame deleteframe=new JFrame("更改学生信息");deleteframe.setLayout(null);JLabel label=new JLabel("需要修改的学生学号",JLabel.CENTER);deleteframe.setVisible(true);deleteframe.setBounds(350,350,450,350);JButton btn=new JButton("确定");deleteframe.add(label);label.setForeground(Color.red);final JTextField text=new JTextField(10);text.setSize(100,60);deleteframe.add(text);deleteframe.add(btn);label.setBounds(150, 50, 150, 20);text.setBounds(150, 100, 100, 20);btn.setBounds(150, 150, 100, 20);btn.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){String sno=text.getText();Connection con;Statement st;ResultSet rs;try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e){System.out.println(e);}try{con=DriverManager.getConnection("jdbc:odbc:pan","","") ;st=con.createStatement();rs=st.executeQuery("SELECT * FROM student WHERE sno=+'"+sno+"'");if(rs==null){JOptionPane b=new JOptionPane();b.showMessageDialog(null,"该学生不存在" ,"消息对话框",RMATION_MESSAGE);}else{rs.next();final String no1=rs.getString(1);final String name1=rs.getString(2);final String age1=rs.getString(3);final String sex1=rs.getString(4);final String address1=rs.getString(5);final String phone1=rs.getString(6);JFrame addframe=new JFrame("修改学生信息");addframe.setDefaultCloseOperation(2);addframe.setBounds(400,200,450,600);addframe.setVisible(true);addframe.setResizable(true);addframe.validate();addframe.setLayout(newBorderLayout());Box basebox,box1,box2,box3,box4;basebox=Box.createHorizontalBox();box1=Box.createVerticalBox();box2=Box.createVerticalBox();box3=Box.createVerticalBox();box4=Box.createVerticalBox();JLabel no=new JLabel("学号");JLabel name=new JLabel("姓名");JLabel age=new JLabel("年龄");box1.add(Box.createVerticalStrut(90));box1.add(no);box1.add(Box.createVerticalStrut(90));box1.add(name);box1.add(Box.createVerticalStrut(90));box1.add(age);JLabel sex=new JLabel("性别");JLabel address =new JLabel("籍贯");JLabel phone=new JLabel("电话");box3.add(Box.createVerticalStrut(90));box3.add(sex);box3.add(Box.createVerticalStrut(90));box3.add(address);box3.add(Box.createVerticalStrut(90));box3.add(phone);final JTextField notext=new JTextField(15);final JTextField nametext=new JTextField(15);final JTextField agetext=new JTextField(15);final JTextField sextext=new JTextField(15);final JTextField addresstext=new JTextField(15);final JTextField phonetext=new JTextField(15);box2.add(Box.createVerticalStrut(90));box2.add(notext);box2.add(Box.createVerticalStrut(90));box2.add(nametext);box2.add(Box.createVerticalStrut(90));box2.add(agetext);box4.add(Box.createVerticalStrut(90));box4.add(sextext);box4.add(Box.createVerticalStrut(90));box4.add(addresstext);box4.add(Box.createVerticalStrut(90));box4.add(phonetext);basebox.add(box1);basebox.add(box2);basebox.add(box3);basebox.add(box4);。

Java学生管理系统实验报告

Java学生管理系统实验报告

学生管理系统实验报告学期:2018-2019课程名称:《Java程序设计实验》一、实验目的1.掌握JDK的安装与环境变量的配置,熟练使用Eclipse、WindowBulider插件、navicat和MySql。

2.熟练掌握Java基础语法与程序结构,了解面向对象的编程思想,掌握封装、构造方法和访问权限。

3.理解继承的概念和意义,掌握继承关系。

4.理解接口的概念和意义,掌握实现接口的方法。

5.掌握异常处理的方法。

6.掌握Java Swing,学会创建GUI界面,熟练使用MVC结构,掌握事件处理。

7.掌握MySql基础语句,操作MySql数据库。

二、实验内容a.管理系统功能1.实现登录界面与相应功能。

用户填写正确账号与密码并选择用户身份后即可实现登陆并跳转至主界面。

2.实现主界面与相应功能。

此界面功能包括学生管理、成绩管理、教师管理、系统设置和帮助。

其中系统设置包括修改密码,退出账号和关闭系统。

帮助包括关于作者、版本信息和意见反馈。

3.实现管理学生界面与相应功能。

可对学生信息进行添加、查询、修改和删除的操作。

4.实现管理成绩界面与相应功能。

可查询到学生并对其成绩信息进行编辑。

5.实现管理教师界面与相应功能。

可对教师信息进行添加、查询、修改和删除的操作。

6.实现修改密码界面与相应功能。

7.实现用户权限功能。

管理员权限为最高,可操作本系统所有功能。

学生可查看、修改自己的信息,查看自己的成绩,但不得添加、查询、删除他人信息与成绩。

教师可查看、修改自己的信息,查询、编辑学生的成绩信息,但不得添加、修改、删除学生信息,不得添加、查询、修改、删除其他教师信息。

8.实现退出账号、关闭系统、关于作者、版本信息、意见反馈和显示当前用户信息功能。

b.设计思路1.利用WindowBuilder插件可视化编写GUI界面。

2.利用MySql数据库保存学生、教师和管理员的信息,并用navicat管理数据库。

使用MVC框架,有以下几个包:model包(模型)、view包(视图)、images包(图像)、util包(自己定义的工具)、dao包(面向对象的数据库接口)。

java学生信息管理系统实验报告(共10篇)

java学生信息管理系统实验报告(共10篇)

java学生信息管理系统实验报告(共10篇)JAVA学生信息管理系统实验报告JAVA程序设计实验报告学号:姓名:班级:实验、Java课程设计--------学生信息管理系统一、实验目的1.掌握Java基本语法2.理解面向对象编程特点3.理解Java I/O编程4.掌握Java图形界面编程5.掌握Java与不同数据库进行连接二、预习内容Java的基本语法知识、类和对象、Java Swing图形界面编程、Java I/O处理以及Java与数据库连接操作三、实验设备与环境通过局域网互联,安装Windows 2000/XP操作系统环境的JDK1.6,my eclipse或者EditPlus编程工具。

并安装MySQL数据库四、实验内容编写并调试运行Java程序,进行设计,掌握Java开发的基础。

五、实验任务设计学生信息管理系统。

要求包括1. 登陆模块:设立超级管理员权限,用户可以根据不同的权限登陆系统,超级管理员可以对学生信息进行增、删、改、查操作。

而普通用户只可以查找学生信息。

2. 包括学生添加信息模块、学生信息删除模块、学生信息修改模块和学生信息查询模块3.对于管理员,可以对管理员进行添加、删除以及修改密码等操作。

六、实验报告(要求独立完成参考程序的代码、编译、调试与运行)1、程序清单:1.1程序模块清单package Pan;import java.awt.event.ItemListener;import javax.swing.*;import ponent;import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.event.InputEvent;import java.awt.event.ItemListener;import java.awt.event.KeyEvent;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;import java.util.*;import java.awt.Color;import java.text.DecimalFormat;import java.sql.*;import java.sql.Date;import java.awt.*;import java.util.Vector;public class Res{/*** @param args*/public static void main(String[] args){FirstWindow win =new FirstWindow(学生信息管理系统); }}class FirstWindow extends JFrame implements ActionListener {JMenuBar menubar;JMenu menu1,menu2,menu3,menu4;public final JMenuItem a11,a12,a13,a14,a15,a16,a17; public final JMenuItem a21,a22,a23,a24;public final JMenuItem a3;public final JMenuItem a4;public final JButton btn;JPanel pnl;JLabel label;boolean flag;FirstWindow(String s){setTitle(s);setSize(400,400);setLocation(100,100);setVisible(true);setDefaultCloseOperation(3);pnl=new JPanel();this.getContentPane().add(pnl);pnl.setLayout(new BorderLayout());label=new JLabel(欢迎使用学生管理系统,JLabel.CENTER);label.setForeground(Color.red);pnl.add(label,BorderLayout.CENTER);menubar=new JMenuBar();menu1=new JMenu(使用);menu2=new JMenu(用户管理);menu3=new JMenu(帮助);menu4=new JMenu(退出);a11=new JMenuItem(管理员登录);a12=new JMenuItem(查询学生信息);a13=new JMenuItem(更改学生信息);a14=new JMenuItem(删除学生信息);a15=new JMenuItem(添加学生信息);a16=new JMenuItem(超级管理员登录);篇二:java学生成绩管理系统实验报告JAVA课内实验报告学生成绩管理系统一. 实验目的及实验环境实验目的:在如今的高校日常管理当中,学生成绩管理系统就是其中非常重要的一环,特别是当前学生规模大,课程门类多,校区分散等实际情况,学生成绩管理系统更具有非常大的实际应用意义。

java web学生管理系统课设报告

java web学生管理系统课设报告

Java Web学生管理系统课设报告一、引言1.1 课题背景随着信息化技术的发展,学校需要一种能够方便管理学生信息的系统,以提高管理效率。

因此,开发一款基于Java Web的学生管理系统具有重要意义。

1.2 目的和意义本课题旨在设计和实现一个基于Java Web的学生管理系统,通过该系统实现学生信息的录入、查询、修改、删除等操作,从而方便学校对学生信息的管理,提高管理效率。

1.3 任务和要求本课题的任务是设计和实现一个基于Java Web的学生管理系统,要求系统能够实现以下功能:学生信息录入、查询、修改、删除等操作;学生信息按班级、学号、姓名等条件进行查询;数据持久化存储等。

二、系统分析2.1 系统需求分析根据学校对学生信息管理的实际需求,本系统需要实现以下功能:学生信息录入、查询、修改、删除等操作;学生信息按班级、学号、姓名等条件进行查询;数据持久化存储等。

2.2 业务流程分析学生管理系统的业务流程主要包括:学生信息录入、查询、修改、删除等操作。

其中,学生信息录入是整个业务流程的起点,通过录入学生信息,将数据存储到数据库中。

然后,可以通过查询功能根据不同条件对学生信息进行查询。

当学生信息需要修改或删除时,可以通过相应的操作进行修改或删除。

2.3 数据流程分析学生管理系统的数据流程主要包括:数据输入、数据处理和数据输出三个部分。

其中,数据输入主要是学生信息的录入;数据处理主要是对学生信息进行查询、修改、删除等操作;数据输出主要是将处理后的学生信息展示给用户。

在整个数据流程中,需要保证数据的准确性和完整性。

三、系统设计3.1 系统架构设计本系统采用MVC设计模式进行开发,分为模型层、视图层和控制层三个部分。

模型层主要负责业务逻辑的处理和数据的封装;视图层主要负责用户界面的展示;控制层主要负责接收用户的请求并调用模型层进行处理,然后将结果返回给视图层展示给用户。

3.2 数据库设计本系统采用MySQL数据库进行数据的存储和处理。

java项目实验报告

java项目实验报告

java项目实验报告Java项目实验报告一、引言在计算机科学领域,Java是一种广泛应用的编程语言,具有跨平台的特性,被广泛用于开发各种类型的软件和应用程序。

本实验旨在通过一个具体的Java项目,探索和实践Java编程的基本原理和技术。

二、项目背景本项目是一个学生信息管理系统,旨在帮助学校管理学生的个人信息、课程成绩和课程安排等相关信息。

该系统的主要功能包括学生信息的录入、查询和修改,课程成绩的录入和查询,以及课程安排的管理等。

三、项目架构1. 数据库设计为了存储学生信息、课程成绩和课程安排等数据,我们使用了MySQL数据库。

通过设计合理的数据表结构,我们能够高效地存储和检索数据。

其中,学生信息表包括学生ID、姓名、性别和年龄等字段;课程成绩表包括学生ID、课程名称和成绩等字段;课程安排表包括课程名称、上课时间和地点等字段。

2. 后端开发为了处理前端页面的请求和与数据库的交互,我们使用了Java的Spring框架。

Spring框架提供了丰富的功能和工具,使得后端开发更加高效和便捷。

通过使用Spring框架,我们能够实现学生信息的增删改查功能,以及课程成绩和课程安排的管理功能。

3. 前端开发为了展示学生信息、课程成绩和课程安排等数据,我们使用了HTML、CSS和JavaScript等前端技术。

通过设计美观的页面和交互效果,我们能够提供良好的用户体验。

同时,我们还使用了Bootstrap框架来简化前端开发的过程,使得页面的布局和样式更加统一和美观。

四、实验过程1. 数据库设计与搭建首先,我们根据项目需求设计了合理的数据库表结构,并使用MySQL数据库进行搭建。

通过创建表、定义字段和设置主键等操作,我们成功地创建了学生信息表、课程成绩表和课程安排表。

2. 后端开发与接口设计接下来,我们使用Spring框架进行后端开发。

通过创建Java类和定义接口,我们实现了学生信息的增删改查功能,以及课程成绩和课程安排的管理功能。

JAVA学生信息管理系统实验报告

JAVA学生信息管理系统实验报告

JAVA学生信息管理系统实验报告一、实验目的1. 掌握Java面向对象编程思想;2. 熟悉Java GUI编程基本知识;3. 熟悉Java文件读写操作;4.培养实际问题分析及解决能力。

二、实验要求设计并实现一个Java学生信息管理系统,具备以下功能:1.界面要简洁、美观,方便用户操作;2.能够实现学生信息的录入、查询、修改、删除和展示功能;3.学生信息至少包括学号、姓名、性别、年龄、院系等基本信息;4.学生信息的存储要求使用文件保存。

三、实验设计1. 界面设计:使用Java Swing库设计界面,包括菜单栏、工具栏、按钮、文本框等组件,通过布局管理器实现界面的合理布局;2. 文件读写操作:使用Java的文件读写类实现学生信息的读取、保存和更新,例如使用FileReader、FileWriter等类;3. 数据结构设计:定义一个学生类,包含学号、姓名、性别、年龄、院系等成员变量,实现get和set方法;4.功能实现:根据用户的操作,实现学生信息的录入、查询、修改、删除等功能。

四、实验步骤1.创建项目并导入相关库文件;2.创建学生类,定义学生的基本信息和操作方法;3.创建主界面,包括菜单栏、工具栏、按钮等组件,并设置布局管理器;4.编写界面事件监听器,实现按钮的点击响应;5.实现学生信息录入功能,包括将信息写入文件;6.实现学生信息查询功能,读取文件中的学生信息并展示;7.实现学生信息修改和删除功能,更新文件中的学生信息;8.编写实验报告。

五、实验结果成功实现了Java学生信息管理系统,具备录入、查询、修改和删除功能。

主界面简洁美观,用户操作便捷。

学生信息存储在文件中,可以进行读写操作。

六、实验心得通过这次实验,我进一步熟悉了Java面向对象编程思想和GUI编程基本知识。

实践中,我遇到了一些问题,例如界面布局、事件监听和文件读写等方面,但通过查找资料和反复调试,最终解决了这些问题。

通过这个实验,我对Java的掌握程度更加深入了解,提高了实际问题分析及解决能力。

java学生成绩管理系统实验报告

JAVA 课内实验报告学生成绩管理系统一 . 实验目的及实验环境实验目的:在此刻的高校平时管应中间,学生成绩管理系统就是其中特别重要的一环,特别是当前学生规模大,课程门类多,校区分别等实质情况,学生成绩管理系统更拥有特别大的实质应企图义。

但是,我们看到,其实我们学校的学生成绩管理系统在很多方面作的不是很完满,功能方面也有欠缺。

随着科技的发展,根本上所有的拥有必然数量数据的机构都开始使用计算机数据库来做管理。

几乎所有学校也都已经在使用计算机管理数据的体系,大大减少了学校学生成绩管理的工作量。

该课程设计旨在设计一个学生成绩的数据库管理系统,数据库中要求包括学生的根本信息,学科根本信息,以及学生所学课程的考试成绩。

要方便学生进行成绩盘问,经过该课程设计,应该到达把java 理论知识更加的坚固加深,加强着手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。

实验环境:JAVA开发工具Microsoft SQL Server 2005二 . 实验内容在 JAVA开发工具和Microsoft SQL Server 2005环境下,运用学到的 java 和数据库理论知识,设计一个拥有简单的增加 ` 删除 ` 更正 ` 盘问操作的学生成绩管理系统。

三.方案设计1、系统功能设计要求此系统实现以下功能:(1〕使得学生的成绩管理工作更加清楚、条理化、自动化。

(2〕经过用户名和密码登录系统,盘问、删除、更正和增加课程根本资料 ` 学生所选课程 ` 用户密码等功能。

简单地完成学生成绩信息及学生信息的根本操作。

(3)设计人机友好界面,功能安排合理,操作使用方便,并且进一步考虑系统在安全性,完满性,并发控制,备份和恢复等方面的功能要求。

2、系统模块设计学生成绩管理系统大体可以分成两大模块:一是学生的根本信息模块,里面应该包括学生的各方面的根本信息;二是课程管理模块,在该模块中应该包括有对学生成绩信息的盘问和办理;可以获取的系统流程图以以下列图所示:系统启动关于系统学籍管理班级管理用浏修添退添修查添修户览改加出加改询加改登用密用学学学班班录户码户籍籍籍级级信信信信信息息息息息否管理员课程设置成绩管理添修设添修查加改置加改询课课年成成成程程级绩绩绩信信课信信信息息程息息息是图学生成绩管理系统的系统流程图3、数据字典数据项是数据库的关系中不可以再分的数据单位,下表分别列出了数据的名称、数据种类、长度、取值可否为空。

学生管理系统的JAVA实验报告.doc

学生管理系统的JA V A实验报告。

实验报告学生信息管理系统学生编号:XXXXXXXX姓名: XXXXXX级:本文重点介绍了“学生信息管理系统”的开发过程。

详细描述了设计思想和设计过程,详细说明了数据库创建思想和各数据表之间的具体关联,并详细分析了系统各功能的实现过程和详细设计过程。

在绘制简单的系统功能模块图的同时,力图更清晰地展示整个学生模块程序设计的设计思想、规划和具体实现过程。

这个系统有许多特点:该系统功能齐全,用户界面方便简单,安全保密设置齐全,大大减轻了操作人员和用户的工作量,提高了学生管理的工作效率和学校的信息化水平。

姓名:XXXXXX级:本文重点介绍了“学生信息管理系统”的开发过程。

详细描述了设计思想和设计过程,详细说明了数据库创建思想和各数据表之间的具体关联,并详细分析了系统各功能的实现过程和详细设计过程。

在绘制简单的系统功能模块图的同时,力图更清晰地展示整个学生模块程序设计的设计思想、规划和具体实现过程。

这个系统有许多特点:该系统功能齐全,用户界面方便简单,安全保密设置齐全,大大减轻了操作人员和用户的工作量,提高了学生管理的工作效率和学校的信息化水平。

(1)基本要求:学生信息(包括学生编号、姓名、性别、年龄、家庭住址、电话号码等)的添加、删除、修改和查询。

)。

(2)提出要求(根据你自己的情况):可以添加类信息(也可以删除或修改类)。

学生信息包括班级信息,学生可以按班级统计。

简单的统计、按性别统计等。

描述: 这个程序需要一个图形界面来实现。

2.系统-学生信息的添加、删除、修改和查询(包括学生编号、姓名、性别、年龄、家庭地址、电话号码等)。

)(包括按学生编号、姓名等查询。

)。

(2)提出要求(根据你自己的情况):可以添加类信息(也可以删除或修改类)。

学生信息包括班级信息,学生可以按班级统计。

简单的统计、按性别统计等。

描述: 这个程序需要一个图形界面来实现。

2.系统:\ \ \ ');int n=scanner . Nextint();while(n!=6) { if(n==1) stu。

java设计实验报告

java设计实验报告Java设计实验报告一、引言Java是一种广泛应用于软件开发的编程语言,具有跨平台、面向对象、可移植等特点。

本文将介绍一项基于Java的设计实验,并分析实验过程中的问题和解决方案。

二、实验目标本次实验的目标是设计一个简单的学生管理系统,实现学生信息的录入、查询、修改和删除功能。

通过这个实验,旨在加深对Java编程语言的理解和应用。

三、实验过程1. 设计数据结构在开始编写代码之前,我们需要先设计好数据结构。

在这个学生管理系统中,我们需要存储学生的姓名、学号、年龄、性别等信息。

可以使用类来表示学生对象,每个学生对象包含相应的属性和方法。

2. 编写代码根据设计好的数据结构,我们开始编写代码。

首先,我们需要创建一个学生类,包含学生的属性和方法。

然后,我们可以在主类中创建学生对象,并对学生信息进行操作。

3. 实现录入功能在学生管理系统中,我们需要实现学生信息的录入功能。

可以通过在控制台上输入学生的姓名、学号、年龄、性别等信息,并将其存储到学生对象中。

4. 实现查询功能学生管理系统还需要实现学生信息的查询功能。

可以通过输入学生的学号或姓名等关键字,在学生对象中进行查找,并输出相应的学生信息。

5. 实现修改功能学生信息可能会发生变化,因此我们需要实现学生信息的修改功能。

可以通过输入学生的学号或姓名等关键字,找到对应的学生对象,并修改其相应的属性。

6. 实现删除功能在一些情况下,我们可能需要删除某个学生的信息。

可以通过输入学生的学号或姓名等关键字,在学生对象中进行查找,并将其删除。

四、实验结果经过实验,我们成功实现了学生管理系统的基本功能。

我们可以通过控制台进行学生信息的录入、查询、修改和删除操作,并获得相应的结果。

五、实验问题与解决方案在实验过程中,我们遇到了一些问题,但通过不断尝试和调试,最终找到了解决方案。

1. 数据结构设计问题在设计数据结构时,我们需要考虑到学生信息的存储和查找效率。

学生管理系统实验报告

学生管理系统实验报告实验目的本次实验的目的是设计并实现一个学生管理系统,以便管理教师对学生的基本信息、课程成绩等重要数据进行记录、查询和修改。

通过该实验,我们可以学习和掌握数据库的设计与应用,以及如何利用编程语言实现对数据库的操作。

实验环境本次实验使用的开发环境为Windows操作系统,数据库管理系统采用MySQL,编程语言为Java。

实验内容与步骤1. 数据库设计首先,我们需要进行数据库的设计。

根据实际需求,设计了以下几个表:- 学生表(Student):包含学生的学号、姓名、性别、出生日期等基本信息。

- 课程表(Course):包含课程的课程号、课程名、学分等信息。

- 成绩表(Score):包含学生的学号、课程号和成绩等信息。

2. 数据库连接使用Java编程语言,我们需要编写代码来连接MySQL数据库。

首先引入相关的数据库连接库,在代码中设置数据库的连接信息,如数据库URL、用户名和密码。

3. 数据库操作接下来,我们需要编写代码来实现对数据库的操作,包括插入、查询和修改等功能。

- 插入数据:通过执行SQL语句,将学生的基本信息、课程信息和成绩信息插入到相应的表中。

- 查询数据:根据学生学号或课程号,执行查询语句,并将结果以表格的形式展示出来。

- 修改数据:对于某个学生或某门课程的成绩,可以根据学号或课程号来修改其对应的成绩。

4. 用户界面设计为了方便教师使用学生管理系统,我们设计了一个简洁美观的用户界面。

通过该界面,教师可以方便地进行数据库的操作。

实验结果与分析经过运行实验代码,成功地实现了学生管理系统的设计与实现。

教师可以通过该系统对学生的信息进行录入、查询和修改,从而实现了对学生的有效管理。

界面设计方便了教师的操作,使其能够直观地进行各项功能的实现。

实验总结通过本次学生管理系统实验,我对数据库的设计与应用有了更深入的理解。

实验中,我掌握了数据库的基本操作和编程语言对数据库的操作方法,同时也提高了编程能力和逻辑思维能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告学生信息管理系统学号:XXXXXXXX姓名:XXXXXX班级:XXXXXXXXXXXXXXX摘要本文着重阐述了“学生信息管理系统”的开发过程。

对于设计思想和设计流程也做出了全面的叙述,在数据库创建思想以及各个数据表之间的具体关联等面也做出了详细说明,并且具体剖析了系统各个功能的实现过程以及详细设计过程,在绘制简单系统功能模块图的同时,力求更加清晰地表明设计思想以及对整个学生模块程序设计的规划及具体实现过程。

本系统具有多面特点:系统功能完备,用户使用便简捷,人性化的用户界面,安全保密设置齐全,大大减少了操作人员和用户的工作负担,提高了学生管理的工作效率和学校的信息化的水平。

AbstractThis article focuses on the student information management system---student module for the development process. Introduced a system for environment and development tools, the design concept and design process has also made a comprehensive narrative, in the database to create ideological and various data tables specific links between the areas has also made detailed and specific analysis of the The various functions of the system to achieve process and detailed design process, drawing a simple system function modules map at the same time, to moreclearly show that design thinking and the whole process of planning and design of concrete realization.This system has many features: system fully functional, easy to use simple user-friendly user interface, complete security settings, greatly reducing the operators and users of the burden and improve the efficiency of the management of students and school information Level.1.实验目的:编写学生信息管理系统程序:(1)基本要求:学生信息(包括学号、姓名、性别、年龄、家庭住址、等)的添加,删除,修改,查询(包括按学号,按姓名等查询)。

(2)提高要求(依据自身情况自选):可填加班级信息(也可删除、修改班级),学生信息中包含班级信息,可按班级统计学生。

简单统计,按性别统计等。

说明:此程序要求图形界面实现。

2.系统具备的基本功能“学生信息管理系统”学生模块的开发主要包括应用程序系统和后台数据库,应用程序系统要求界面友好,功能完备,易使用等特点。

而后台数据库的数据要具有一致性、完整性、安全性。

学生操作前台——操作便.前台作为与学生直接交互的界面,在考虑功能的同时,也考虑了操作的简洁和便性,目的是让大多数不在懂电脑操作的客户,也能轻松的享受计算机给他们带来的便利。

前台系统主要具备学生个人信息的查询功能,学生可以查询自个人信息。

3.系统学生子功能划分经过对问题分析,学生子系统比较简单,主要完成学生网上课程成绩及个人信息查询的功能及密码修改的功能。

学生以学号及密码的身份进行登录,系统功能结构如图:4.学生子系统功能描述1. 学生信息录入模块本模块完成学生个人信息录入功能,进入本模块,学生可以将自己的学号,姓名,性别,年龄,地址等信息录入系统,2. 学生信息查询模块学生的基本信息录入后,可通过这个模块来进行查询。

3. 学生信息修改模块本模块用于日后学生信息有改动时,对学生的信息进行改动,以确保学生信息的正确性,5.设计流程及部分截图import address.sql.*;import address.util.*;public class Student2 {private static Scanner scanner =new Scanner(System.in);String driver = \\\"org.hsqldb.jdbcDriver\\\";String url = \\\"jdbc:hsqldb:hsql://localhost\\\";//连接到本机上默认的数据库String user=\\\"sa\\\";String pass=\\\"\\\";private Connection con;public void init()throws Exception{if(con!=null) return;Class.forName(driver);con=DriverManager.getConnection(url,user,pass);//建立和数据库之间的连接String sql=\\\"create table student(id bigint,name varchar(120),\\\";sql+=\\\"sex decimal,age decimal,address decimal)\\\";Statement stmt=con.createStatement();stmt.executeUpdate(sql);//创建表,只执行一次。

//在表中插入数据以备使用}public void close()throws Exception{if(con!=null) con.close();}/**创建student 表,表中有id,name,age,sex,address 五列*/public void Add() throws Exception{System.out.println(\\\"请输入学生学号:(当输入学号为-1时停止)\\\");long id=scanner.nextLong();while(id!=-1){System.out.println(\\\"请输入该学生的名字:\\\");String name=scanner.next();System.out.println(\\\"请连续输入sex,age,address各科成绩:\\\");double sex=scanner.nextDouble();double age=scanner.nextDouble();double address=scanner.nextDouble();String sql=\\\"insert into student values(?,?,?,?,?)\\\"; PreparedStatement pstmt =con.prepareStatement(sql);pstmt.setLong(1,id);pstmt.setString(2,name);pstmt.setDouble(3,sex);pstmt.setDouble(4,age);pstmt.setDouble(5,address);pstmt.execute();pstmt.close();System.out.println(\\\"请输入学生学号:(当输入学号为-1时停止)\\\");id=scanner.nextLong();}}/**查询时使用Statement 的executeQuery 法,其它用executeUpdate 法*/ public void dispAll() throws Exception{Statement stmt=con.createStatement(); //创建对象,该对象用来执行命令String sql=\\\"select * from student\\\";ResultSet rs=stmt.executeQuery(sql);//执行命令,返回执行结果if(!rs.next())System.out.println(\\\"对不起,该数据库可能还没有创建信息!!\\\");while(rs.next()){String id=rs.getString(\\\"id\\\");String name=rs.getString(\\\"name\\\");String age=rs.getString(\\\"age\\\");String sex=rs.getString(\\\"sex\\\");String address= rs.getString(\\\"address\\\");System.out.printf(\\\"%s,%s,%s,%s,%s%n\\\",id,name,age,sex,address);}rs.close();stmt.close();}/**按学号查询学生信息**/public void searchByid()throws Exception{System.out.print(\\\"请输入所要查询的学生的id号:\\\");long _id=scanner.nextLong();String sql=\\\"select*from student where id=\\\"+_id+\\\"\\\"; Statement stmt=con.createStatement();ResultSet rs=stmt.executeQuery(sql);if(rs.next()){long id=rs.getLong(\\\"id\\\");String name=rs.getString(\\\"name\\\");Double age=rs.getDouble(\\\"age\\\");Double sex=rs.getDouble(\\\"sex\\\");Double address=rs.getDouble(\\\"address\\\");System.out.println(id+\\\" \\\"+name+\\\" \\\"+age+\\\"\\\"+sex+\\\" \\\"+address);}else{System.out.println(\\\"对不起,此学生信息不存在.\\\");}}/**按学生姓名查询**/public void searchByname()throws Exception{System.out.print(\\\"请输入所要查询的学生的姓名:\\\");String _name=scanner.next();String sql=\\\"select *from student wherename=\\\'\\\"+_name+\\\"\\\'\\\";Statement stmt=con.createStatement();ResultSet rs=stmt.executeQuery(sql);if(rs.next()){long id=rs.getLong(\\\"id\\\");String name=rs.getString(\\\"name\\\");Double age=rs.getDouble(\\\"age\\\");Double sex=rs.getDouble(\\\"sex\\\");Double address=rs.getDouble(\\\"address\\\");System.out.println(id+\\\" \\\"+name+\\\" \\\"+age+\\\" \\\"+sex+\\\" \\\"+address);}else{System.out.println(\\\"对不起,此学生信息不存在.\\\");}}public void deleteByid()throws Exception{System.out.print(\\\"请输入你要删除学生信息的学号:\\\");long _id=scanner.nextLong();String sql=\\\"select*from student where id=\\\"+_id+\\\"\\\"; Statement stmt=con.createStatement();ResultSet rs=stmt.executeQuery(sql);if(rs.next()){long id=rs.getLong(\\\"id\\\");String name=rs.getString(\\\"name\\\");Double age=rs.getDouble(\\\"age\\\");Double sex=rs.getDouble(\\\"sex\\\");Double address=rs.getDouble(\\\"address\\\");System.out.println(id+\\\" \\\"+name+\\\" \\\"+age+\\\"\\\"+sex+\\\" \\\"+address);}else{System.out.println(\\\"对不起,此学生信息不存在.\\\");}String sql1=\\\"delete from student where id=\\\"+_id+\\\"\\\";Statement stmt1=con.createStatement();stmt1.executeUpdate(sql1);}public static void main(String[] args) throws Exception{Student2 stu=new Student2();stu.init();//加载驱动,创建。

相关文档
最新文档