简单学生信息管理系统java课程设计文档格式.docx
《简单学生信息管理系统java课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《简单学生信息管理系统java课程设计文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
3.2.2数据库设计5
3.2.3运行调试6
3.2.4主要源代码10
5总结与展望10
参考文献11
1设计目的
本程序用于用户对少量学生信息进行简单的管理,本程序针对于对安全系数要求不高,操作不是很复杂的小型客户开发。
本程序可以实现对学生信息的添加、查询、修改、删除等操作,同时支持查看所有学生信息,功能完善,界面简洁美观,布局合理,操作简便,简单易用,任何人可轻松操作。
同时,本程序对系统要求配置较低,运行速度快,而却对数据库管理要求较低该数据库可实现关系较为简单的数据管理。
2设计任务
2.1任务说明
设计一个简单学生个人信息管理系统,该系统具有录入,查询,修改三项基本功能。
要求如下:
(1)具有简单的录入,查询和修改功能。
(2)修改学生信息必须输入学号,然后对姓名、性别和专业等修改;
(3)使用文件存储数据。
(也可用数据库)
(4)学生个人信息必须包括:
学号、姓名、性别、籍贯、系别。
2.2系统目标
软件开发的意图便于用户对学生的管理,方便查看学生的情况。
如用户对学生基本信息进行录入、查询、修改、删除等。
2.2使用范围
本系统仅针对用户对少量学生进行信息管理。
2.3功能要求
1录入学生基本信息的功能
2查询学生基本信息的功能
3修改学生基本信息的功能
4删除学生基本信息的功能
5显示所有学生信息的功能
3设计内容
3.1界面构建
1、为了便于各种操作,软件采用多窗口的模式。
用户可在不同窗口进行相应操作(录入、查询、修改、删除、显示所有学生省信息)。
2、主窗口是用户进行各种操作的平台,具体操作在各个独立功能窗口中完成。
3、主窗口的主要功能位于菜单中,菜单为进入各个功能窗口的唯一通道。
4、当用户在进行个别录入、删除或错误输入操作时,会弹出相应对话框提示用户。
如当录入成功或删除成功,弹出成功以及相应的简明信息提示当,当录入、删除失败以及输入不当是,弹出错误以及简单的错误原因提示用户重新操作。
5、界面布局尽量合理,各组件位置分布均匀美观。
3.2详细设计
进入界面
3.2.1模块设
3.2.2数据库设计
学生信息表
3.2.3运行调试
操作界面
添加学生信息
修改学生信息
查找学生信息
3.2.4主要源代码
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
publicclassSqlHelper//对数据库进行操作
{
PreparedStatementps=null;
Connectionct=null;
ResultSetrs=null;
Stringdriver="
com.microsoft.jdbc.sqlserver.SQLServerDriver"
;
Stringurl="
jdbc:
microsoft:
sqlserver:
//127.0.0.1:
1433;
databaseName=Jsql"
Stringuser="
sa"
Stringpasswd="
publicvoidclose()
{
try{
if(rs!
=null)rs.close();
if(ps!
=null)ps.close();
if(ct!
=null)ct.close();
}
catch(Exceptione)
{
e.printStackTrace();
}
publicResultSetqueryExecute(Stringsql)
try
Class.forName(driver);
ct=DriverManager.getConnection(url,user,passwd);
ps=ct.prepareStatement(sql);
rs=ps.executeQuery();
finally
{}
returnrs;
//查询数据库操作
publicResultSetqueryExectue(Stringsql,String[]paras)
for(inti=0;
i<
paras.length;
i++)
{
ps.setString(i+1,paras[i]);
}
rs=ps.executeQuery();
//把增、删、改放在一起对数据库操作
@SuppressWarnings("
finally"
)
publicbooleanupdExecute(Stringsql,String[]paras)
booleanb=true;
ps.setString(i+1,paras[i]);
if(ps.executeUpdate()!
=1)
b=false;
}
catch(Exceptione)
b=false;
e.printStackTrace();
finally
returnb;
}
importjavax.swing.*;
importjava.sql.*;
importjava.util.*;
importjava.util.Vector;
importjava.awt.*;
importjava.awt.Event.*;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
//学生管理类
publicclassStuMangerextendsJFrameimplementsActionListener
JPaneljp1,jp2;
JLabeljl1;
JButtonjb1,jb2,jb3,jb4;
JTablejt;
JScrollPanejsp;
JTextFieldjtf;
StuModms;
publicstaticvoidmain(String[]args)
StuMangers=newStuManger();
publicStuManger()
jp1=newJPanel();
jtf=newJTextField(10);
jb1=newJButton("
查询"
);
jb1.addActionListener(this);
jl1=newJLabel("
请输入名字"
jp1.add(jl1);
jp1.add(jtf);
jp1.add(jb1);
jp2=newJPanel();
jb2=newJButton("
添加"
jb2.addActionListener(this);
jb3=newJButton("
删除"
jb3.addActionListener(this);
jb4=newJButton("
修改"
jb4.addActionListener(this);
jp2.add(jb2);
jp2.add(jb3);
jp2.add(jb4);
ms=newStuMod();
String[]paras={"
1"
};
ms.queryStu("
select*fromstuwhere1=?
"
paras);
jt=newJTable(ms);
jsp=newJScrollPane(jt);
this.add(jsp);
this.add(jp1,"
North"
this.add(jp2,"
South"
this.setSize(400,300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
publicvoidactionPerformed(ActionEvente)
//TODOAuto-generatedmethodstub
if(e.getSource()==jb1){
System.out.println("
希望查询"
Stringname=this.jtf.getText().trim();
Stringsql="
select*fromstuwherestuName=?
Stringparas[]={name};
ms=newStuMod();
ms.queryStu(sql,paras);
jt.setModel(ms);
elseif(e.getSource()==jb2)
StuAddDialogg=newStuA