基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx

上传人:b****5 文档编号:20955600 上传时间:2023-01-26 格式:DOCX 页数:22 大小:1.50MB
下载 相关 举报
基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx_第1页
第1页 / 共22页
基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx_第2页
第2页 / 共22页
基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx_第3页
第3页 / 共22页
基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx_第4页
第4页 / 共22页
基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx

《基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx(22页珍藏版)》请在冰豆网上搜索。

基于java的学生学籍管理系统开发含源文件Word格式文档下载.docx

修改学籍信息

删除学籍信息

工具栏

学生档案

学生成绩

学生基本资料

考勤系统

奖惩系统

计算器

Word

Excel

图2-1各模块之间的相互关系

2.2数据表分析说明

表2-1管理员数据列表

username

password

chen

123456

hai

111222

yu

101123

表2-2学生档案数据列表

stuid

stuname

dayta

localtion

101

张三

2011-01-02

档案室五

102

张刚

2011-01-01

档案室四

103

王强

104

陈翔

105

晓莉

106

李明

表2-3学生成绩数据列表

name

class

yuwen

shuxue

yingyu

zhengzhi

张三

软工一班

96

89

85

95

张刚

78

80

王强

98

75

97

晓莉

93

69

87

94

82

65

表2-4学生考勤数据列表

late

notabsent

5

3

8

6

2

1

表2-5学生奖惩数据列表

Rz

Rm

三好学生

3000

5000

2000

1000

表2-6学生基本数据列表

sex

age

cell

20

2520162

2454533

22

5434534

21

5433835

19

8645456

4568465

3详细设计与实现

3.1登录界面

图3-1登录界面效果图

数据库的链接以及与数据库中账号密码的匹配:

JDBC_connconn=newJDBC_conn();

Connectioncon=conn.JDBC_CONN();

try{

Statementst=con.createStatement();

Stringname=tf1.getText();

Stringpwdstr=tf2.getText();

//SQL语句

Stringsql="

select*fromjavadengluwhereusername='

"

+name+"

'

andpassword='

+pwdstr+"

;

ResultSetrs=st.executeQuery(sql);

//返回查询结果

if(rs.next())

{

Mainframeframe=newMainframe();

frame.setVisible(true);

}

}catch(SQLExceptione1){

e1.printStackTrace();

}

3.2主界面

图3-2主界面效果图

主面板结构如图所示:

图3-3登录界面效果图结构

topPanel(工具栏面板)

Add:

buttonpanelBorderLayout.center

leftPanel:

DefaultMutableTreeNode;

创建树节点

DefaultMutable;

创建树模型对象

Tree;

树DefaultTreeCellRenderer;

叶子节点;

以及学籍系统信息的相关操作

RightPanel;

显示点击事件后显示的面板

创建树节点(以档案管理为例):

DefaultMutableTreeNoderoot=newDefaultMutableTreeNode("

root"

);

DefaultMutableTreeNodepersonnelNode=newDefaultMutableTreeNode(

"

人事管理"

personnelNode.add(newDefaultMutableTreeNode("

档案管理"

));

考勤管理"

奖惩管理"

root.add(personnelNode);

创建树的模型对象以及树:

DefaultTreeModeltreeModel=newDefaultTreeModel(root);

//通过树结点对象创建树模型对象

tree=newJTree(treeModel);

tree.setBackground(Color.WHITE);

tree.setRootVisible(false);

//设置不显示树的根结点,默认为显示,即true

tree.setRowHeight(24);

//设置各结点的高度为27像素

创建叶子节点:

DefaultTreeCellRendererrenderer=newDefaultTreeCellRenderer();

//创建一个树的绘制对象

//renderer.setLeafIcon(null);

//设置叶子结点不采用图标

renderer.setClosedIcon(null);

//设置结点折叠时不采用图标

renderer.setOpenIcon(null);

//设置结点展开时不采用图标

tree.setCellRenderer(renderer);

//将树的绘制对象设置到树中

intcount=root.getChildCount();

//获得一级结点的数量

for(inti=0;

i<

count;

i++){//遍历树的一级结点

DefaultMutableTreeNodenode=(DefaultMutableTreeNode)root

.getChildAt(i);

//获得指定索引位置的一级结点对象

TreePathpath=newTreePath(node.getPath());

//获得结点对象的路径

tree.expandPath(path);

//展开该结点

}

捕获树的选取事件:

tree.addTreeSelectionListener(newTreeSelectionListener()

{

3.3数据库的链接

packagecom.pdsu.chen.jdbc;

importjava.io.IOException;

importjava.sql.Connection;

importjava.sql.DriverManager;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.sql.Statement;

publicclassJDBC_conn{

publicConnectionJDBC_CONN(){

try{

Class.forName("

com.microsoft.jdbc.sqlserver.SQLServerDriver"

}

catch(ClassNotFoundExceptione2){

e2.printStackTrace();

Connectionconn=null;

try{

Stringurl="

jdbc:

microsoft:

sqlserver:

//localhost:

1433;

DatabaseName=userchen"

Stringname="

sa"

Stringpwd="

conn=DriverManager.getConnection(url,name,pwd);

//stmt=conn.createStatement();

if(conn!

=null){

System.out.println("

连接成功"

}catch(Exceptione){

e.printStackTrace();

returnconn;

3.4toppanel面板按钮操作

topPanel面板上的按钮操作(单个以考勤系统为例):

图3-3toppanel效果图

单击考勤系统按钮,

finalJButtontimecardShortcutKeyButton=newJButton();

resource=this.getClass().getResource("

timecard.JPG"

icon=newImageIcon(resource);

timecardShortcutKeyButton.setIcon(icon);

timecardShortcutKeyButton.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

try{

RecordTimePanelp1=newRecordTimePanel();

p1.setVisible(true);

SwingUtilities.updateComponentTreeUI(rightPanel);

}catch(Exceptione1){

JOptionPane.showMessageDialog(null,"

很抱歉,打开失败!

"

友情提示"

JOptionPane.INFORMATION_MESSAGE);

return;

}

});

btnQuery.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente1){

JDBC_connconn=newJDBC_conn();

Connectioncon=conn.JDBC_CONN();

try{

Stringsql="

select*fromRecordtime"

ResultSetrs=st.executeQuery(sql);

while(rs.next())

{

Stringsid=rs.getString

(1);

Stringname=rs.getString

(2);

Stringdata=rs.getString(3);

Stringlocal=rs.getString(4);

txtarea.append("

\n"

+sid+name+data+local);

}

con.close();

}catch(SQLExceptione11){

e11.printStackTrace();

});

btnModify.addActionListener(newActionListener(){

publicvoidactionPerformed(ActionEvente){

JDBC_connconn=newJDBC_conn();

Stringidstr=txtName.getText();

Stringsql="

select*fromRecordTimewherestuid='

+idstr+"

StringN=rs.getString

(2);

StringD=rs.getString(3);

StringL=rs.getString(4);

JTextAreajta1=newJTextArea();

jta1.setText("

学号:

+rs.getString("

stuid"

)+"

姓名:

+N+"

迟到:

+D+"

旷课:

+L);

jta1.setEditable(false);

JOptionPane.showMessageDialog(null,jta1);

else{

JOptionPane.showMessageDialog(null,"

很抱歉,系统无记录!

"

return;

}catch(SQLExceptione1){

e1.printStackTrace();

btnCancel.addActionListener(newActionListener(){

txtName.setText(null);

txtarea.setText(null);

3.5树节点上的功能操作

图3-4修改学生成绩信息效果图

JDBC_connconn=newJDBC_conn();

Stringidstr=txtid.getText();

Stringsql="

select*fromRecordGwherestuid='

ResultSetrs=st.executeQuery(sql);

StringN=rs.getString

(2);

StringM=rs.getString(5);

StringO=rs.getString(6);

StringP=rs.getString(7);

txtchinese.setText(L);

txtmath.setText(M);

txtenglish.setText(O);

txtpolity.setText(P);

else{

JOptionPane.showMessageDialog(null,"

"

btn3.addActionListener(newActionListener(){

Connectioncon=conn.JDBC_CONN();

try{

Statementst=con.createStatement();

Stringidstr=txtid.getText();

Stringsql="

st.executeUpdate("

UpdateRecordGsetyuwen="

+txtchinese.getText()+"

shuxue="

+txtmath.getText()+"

tingyu="

+txtenglish.getText()+"

zhengzhi="

+txtpolity.getText()+"

wherestuid='

+txtid.getText()+"

}catch(Exceptione3){}

txtid.setText(null);

txtchinese.setText(null);

txtmath.setText(null);

txtpolity.setText(null);

txtenglish.setText(null);

3.6其他附属图

图3-5编程结构效果图

4项目使用说明

4.1打包

4.2安装使用系统

1.附加数据库SQLServer2000

(1)将文件夹中的扩展名为chenuser.MDF和chenuser.LDF的两个文件拷贝到SQLServer安装路径下的Data文件夹中。

(2)打开SQLServer2000中的“企业管理器”,然后展开本地服务器,在“数据库”数据项上单击鼠标右键,在弹出的快捷菜单中选择“所有任务”/“附加数据库”菜单项。

(3)将弹出“附加数据库”对话框,在该对话框中单击【

】按钮,选择所要附加数据库的chenuser.MDF文件,单击【确定】按钮,即可完成数据库的附加操作。

2.安装

打开Myeclipse、file、import;

导入相应的文件以及数据库驱动即可运行

5结论

通过做该项目,主要掌握以下四项技术:

并对这四项技术能够熟练运用。

另外,补充自己对创建树,创建节点这方面知识的缺乏,以及对数据库的各项操作指令能够灵活运用。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1