java学生信息管理系统+代码教学内容Word文件下载.docx

上传人:b****5 文档编号:18211636 上传时间:2022-12-14 格式:DOCX 页数:19 大小:199.71KB
下载 相关 举报
java学生信息管理系统+代码教学内容Word文件下载.docx_第1页
第1页 / 共19页
java学生信息管理系统+代码教学内容Word文件下载.docx_第2页
第2页 / 共19页
java学生信息管理系统+代码教学内容Word文件下载.docx_第3页
第3页 / 共19页
java学生信息管理系统+代码教学内容Word文件下载.docx_第4页
第4页 / 共19页
java学生信息管理系统+代码教学内容Word文件下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

java学生信息管理系统+代码教学内容Word文件下载.docx

《java学生信息管理系统+代码教学内容Word文件下载.docx》由会员分享,可在线阅读,更多相关《java学生信息管理系统+代码教学内容Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。

java学生信息管理系统+代码教学内容Word文件下载.docx

1、学生信息管理模块

学生信息管理模块包括增加、删除、修改、查询、显示全部等。

具体的结构图如图所示。

学生信息管理模块结构图

2、选课信息管理模块

选课信息管理模块包括查询、显示全部等。

选课信息管理模块结构图

3、成绩信息管理模块

成绩信息管理模块包括修改成绩、查询、显示全部等。

成绩信息管理模块结构图

4、用户信息管理模块

用户信息管理模块包括修改、查询、显示全部等。

用户信息管理模块结构图

2、数据库设计

在数据库student中共有4张数据表:

s(学生信息表)、c(课程信息表)、sc(选课信息表)、unpw(用户信息表),下面定义每张表的字段名称和数据类型。

s(学生信息表)

字段名称

数据类型

描述

sno

char(10)

学号,关键字

sn

char(20)

姓名

sa

int

年龄

ss

性别

sd

院系

c(课程信息表)

cno

课程号,关键字

cn

char(30)

课程名

pcno

先行课程号

sc(选课信息表)

g

成绩

unpw(用户信息表)

un

用户名,关键字

pw

密码

qx

角色

3、界面库设计

1、学生信息管理系统的登录

学生信息管理系统可由管理员和学生两种身份的人使用。

管理员和学生身份登录所能操作的功能有很大的区别。

系统初始化一个系统管理员,登录名:

admin密码:

admin

学生登录系统的登录名为学号,密码也为学号(如:

10001),登录后可以修改密码。

登录界面

管理员登录系统后的界面

2、实现管理员和学生操作功能的界面

管理员的登录系统后可以进行学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等功能操作,其具体界面设计如下图所示。

学生信息管理功能的界面

选课信息管理功能的界面

成绩信息管理功能的界面

用户信息管理功能的界面

学生的登录系统后可以进行学生信息查看、成绩信息查看、个人信息管理等功能操作,其具体界面设计如下图所示。

学生信息查看功能的界面

成绩信息查看功能的界面

个人信息管理功能的界面

4、程序类的设计

SimpleStudentManager主函数类

DLFrame登陆界面类

ManagerFrane管理员界面类

StudentFrame学生界面类

SM学生信息管理的类

SAdd用于学生信息管理中增加或修改某条记录的界面的类

SSelect用于学生基本信息管理中查询时输入学号的界面的类

CM课程信息管理的类

CAdd用于课程信息管理中增加或修改某条记录的界面的类

CSelect用于课程信息管理中查询时输入课程号的界面的类

SCM选课信息管理的类

SCSelect用于选课信息管理中查询时输入学号的界面的类

GM成绩信息管理的类

GAdd用于成绩信息管理中修改成绩的界面的类

GSelect用于成绩信息管理中查询时输入学号的界面的类

PM用户信息管理的类

UAdd用于用户信息管理中修改密码的界面的类

PSelect用于用户信息管理中查询时输入用户名的界面的类

StudentS用于学生信息查看时输入学号的界面的类

StudentSelect用于成绩信息查看时输入学号的界面的类

PPM个人信息管理的类

PPSelect用于个人信息管理查询时输入用户名的界面的类

程序类的具体代码实现见工程文件夹中的代码及注释

5、系统的使用说明及环境配置

学生信息管理系统提供了管理员和学生这两个角色登录系统,管理员通过用户名:

admin登录系统后可以进行相应的操作。

学生通过以自己的学号(如10001)作为用户名和密码登录系统后进行相应的学生权限范围内的操作。

数据库:

SQLServer2005

连接数据库的登录名:

sa密码:

123

代码:

importjavax.swing.*;

importjava.awt.*;

importjava.awt.event.*;

importjava.sql.*;

classCAddextendsJFrameimplementsActionListener{//用于课程信息管理中增加或修改某条记录的界面

JLabellcno=newJLabel("

课程号:

"

);

JLabellcname=newJLabel("

课程名:

JLabellpcno=newJLabel("

先行课程号:

JTextFieldtcno=newJTextField(10);

JTextFieldtcname=newJTextField(10);

JTextFieldtpcno=newJTextField(10);

JButtonbtnOK=newJButton("

确定"

JButtonbtnCancel=newJButton("

取消"

JPanelp=newJPanel();

Connectioncon=null;

Statementstmt=null;

ResultSetrs=null;

booleanisNewsm=true;

//用于判断是否显示课程信息管理的界面

publicCAdd(){//构造方法

this.setTitle("

增加"

this.setBounds(200,200,146,235);

p.setLayout(newFlowLayout(FlowLayout.LEFT));

p.add(lcno);

p.add(tcno);

p.add(lcname);

p.add(tcname);

p.add(lpcno);

p.add(tpcno);

p.add(btnOK);

p.add(btnCancel);

this.add(p);

this.setResizable(false);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

btnOK.addActionListener(this);

btnCancel.addActionListener(this);

this.show();

}

publicvoidconnDB(){//连接数据库

try{

Class.forName("

com.microsoft.sqlserver.jdbc.SQLServerDriver"

}catch(ClassNotFoundExceptione){

e.printStackTrace();

}

try{con=DriverManager.getConnection(

"

jdbc:

sqlserver:

//localhost:

1433;

DatabaseName=student"

sa"

"

123"

stmt=con.createStatement();

}catch(SQLExceptione){

}}

publicvoidcloseDB()//关闭连接

{try{

stmt.close();

con.close();

publicvoidinsertst(){//插入记录

Stringkch=null;

Stringkcm=null;

Stringxxkch=null;

kch=tcno.getText();

kcm=tcname.getText();

xxkch=tpcno.getText();

if(this.getTitle()=="

修改"

){//如果是修改记录,先删除再增加

try{

this.connDB();

intrs1=stmt.executeUpdate("

deletefromcwherecno='

+kch+"

'

}catch(SQLExceptione){

e.printStackTrace();

}}

Stringstr="

insertintocvalues('

+kch+"

'

+kcm+"

+xxkch+"

)"

;

this.connDB();

//连接数据库

try{stmt.executeUpdate(str);

JOptionPane.showMessageDialog(null,this.getTitle()+"

成功!

"

提示"

JOptionPane.INFORMATION_MESSAGE,newImageIcon(

"

menu4.gif"

));

this.setVisible(false);

catch(SQLExceptione){

JOptionPane.showMessageDialog(null,"

课程号已存在!

tcno.setText("

publicvoidactionPerformed(ActionEvente){

if(e.getActionCommand()=="

){

this.insertst();

if(isNewsm){

newCM("

课程信息管理"

).display();

}

isNewsm=true;

}

this.setVisible(false);

newCM("

}}}

classCMextendsJFrameimplementsActionListener{//课程信息管理

JButtonbtnAdd=newJButton("

JButtonbtnDelete=newJButton("

删除"

JButtonbtnAlter=newJButton("

JButtonbtnSearch=newJButton("

查询"

JButtonbtnDisplay=newJButton("

显示"

JMenuBarmb=newJMenuBar();

JPanelp1=newJPanel();

JTablesTable;

JScrollPanescroll;

Object[][]playerInfo;

CSelectcst;

Stringmkch=null;

booleanbstd=false;

CM(Stringtitle){//构造方法

super(title);

add("

South"

p);

this.add("

Center"

p1);

mb.add(btnAdd);

mb.add(btnDelete);

mb.add(btnAlter);

mb.add(btnSearch);

mb.add(btnDisplay);

this.connDB();

this.setBounds(200,200,400,260);

btnAdd.addActionListener(this);

btnDelete.addActionListener(this);

btnAlter.addActionListener(this);

btnSearch.addActionListener(this);

btnDisplay.addActionListener(this);

this.setJMenuBar(mb);

//this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

show();

CM(CSelectcst,Stringtitle){//构造方法

this.cst=cst;

bstd=true;

publicvoiddisplay(){//显示所有的课程信息

inti=0;

intj=0;

intk=0;

Listal=newArrayList();

try{rs=stmt.executeQuery("

select*fromc"

while(rs.next()){//找出表中的记录数赋给i

al.add(rs.getString("

cno"

cn"

pcno"

i++;

}}catch(SQLExceptione){

playerInfo=newObject[i][3];

String[]columnNames={"

课程号"

课程名"

先行课程号"

};

try{rs=stmt.executeQuery("

select*fromcorderbycno"

while(rs.next()){

playerInfo[j][0]=rs.getString("

playerInfo[j][1]=rs.getString("

playerInfo[j][2]=rs.getString("

j++;

sTable=newJTable(playerInfo,columnNames);

//创建网格

p1.add(sTable);

scroll=newJScrollPane(sTable);

this.add(scroll);

try{Class.forName("

con=DriverManager.getConnection(

publicvoidcloseDB()//关闭连接

{try{stmt.close();

publicvoiddelete(){//删除某个课程信息

Stringxxkch=null;

introw=-1;

row=sTable.getSelectedRow();

if(row==-1){//判断要删除的信息是否被选中

JOptionPane.showMessageDialog(null,"

请选择要删除的记录!

}else{

if(!

bstd){//判断选择的是不是查询后的结果

intj1=0;

try{rs=stmt.executeQuery("

while(rs.next()&

&

j1<

=row){//找出当前被选中的记录在数据库中的对应

kch=rs.getString("

kcm=rs.getString("

xxkch=rs.getString("

j1++;

inti1=0;

try{intrs1=stmt.executeUpdate("

//删除数据库中当前被选中的记录

JOptionPane.showMessageDialog(null,"

记录删除成功!

this.dispose();

newCM("

}}

else{try{intrs1=stmt.executeUpdate("

+mkch+"

}}}}

publicvoidupdate(){//修改某个课程记录

if(row==-1){

JOptionPane.showMessage

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

当前位置:首页 > 高等教育 > 艺术

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

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