ImageVerifierCode 换一换
格式:DOCX , 页数:44 ,大小:153.61KB ,
资源ID:27033953      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27033953.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java学生成绩管理系统.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java学生成绩管理系统.docx

1、java学生成绩管理系统一、设计目的 2二、功能介绍 2三、程序流程 23.1 总流程 23.2流程图 3四、 设计步骤 34.1 数据库设计 34.1.1 学生信息表 34.1.2 教师表 44.1.3课程表 44.1.4成绩表 44.2 功能描述 54.2.1登录 54.2.2 教师端 84.2.3学生端 11五、设计总结 11六、程序清单 12七、参考文献 25一、设计目的(1)具有新用户注册功能。(2)具有注册用户登录功能。(3)具有学生成绩的录入功能,要求只录入各科成绩,自动计算每个学生的总绩。(4)具有数据查询功能,可以实现查询全部信息和按条件执行查询。(5)具有按条件删除数据功能

2、。二、功能介绍学生信息管理系统分为两个模块,教师端和学生端,(1)教师端包括的子模块有:教师注册,教师添加学生成绩,教师修改学生成绩,教师删除学生成绩,教师修改登录密码等主要功能。(2)学生端:本模块的功能较少,只有学生查询本人成绩,和修改学生登录密码的功能三、程序流程 3.1 总流程3.2流程图四、设计步骤 4.1 数据库设计本次设计数据库使用SQL Sever2005,一共四张表,分别为学生信息表,教师信息表,还有学生成绩表,教师所教的课程表4.1.1 学生信息表 学生信息表包括学生姓名,学号,登录密码,性别,年龄,还有一个没有关系的主键,如图图4-14.1.2 教师表 教师信息表包括教师

3、姓名,教师编号,教师登录密码和所教授的课程,和一个没有关系的主键,用来自动增长。如图4-2。图4-24.1.3课程表 课程表为教师所教的课程,其中包括课程编号,课程名,课程学分等。如图4-3图4-34.1.4成绩表 成绩表是教师上成绩之后,所有成绩储存在成绩表中,其中包括课程,学分,学生编号,学期等。如图4-4图4-44.2 功能描述 4.2.1登录 当程序运行的时候,会出现如图4-5的登录,然后根据提示进行选择操作,输入账号和密码,选择登录的类型,登录界面还有注册新用户和修还密码等功能图4-5 登录代码如下:if (!name.equals() if (!pwd.equals() if (!

4、type.equals(选择类型) if (type.equals(学生) sql = Select * from student where num =+name+ and pwd = + pwd + ; if (type.equals(教师) sql = Select * from teacher where num = + name + and pwd = + pwd; try rs = db.Query(sql); while (rs.next() name1 = rs.getString(name); num = rs.getString(num); if (type.equals(

5、教师) classes = rs.getString(classes); catch (SQLException e1) e1.printStackTrace(); if (!name1.equals() if (type.equals(学生) Login.this.close(); try Display display = Display.getDefault(); student shell = new student(display); shell.open(); shell.layout(); while (!shell.isDisposed() if (!display.readA

6、ndDispatch() display.sleep(); catch (Exception e1) e1.printStackTrace(); if (type.equals(教师) Login.this.close(); try Display display = Display.getDefault(); AddCheng shell = new AddCheng(display); shell.open(); shell.layout(); while (!shell.isDisposed() if (!display.readAndDispatch() display.sleep()

7、; catch (Exception e1) e1.printStackTrace(); else MessageDialog.openError(getShell(), 提示, 用户名密码错误); else MessageDialog.openWarning(getShell(), 提示, 你还没选择登录类型); else MessageDialog.openWarning(getShell(), 提示, 密码不能为空); else MessageDialog.openWarning(getShell(), 提示, 用户名为空); 修改密码功能 修改在此登录的用户,修改密码的用户必须输入原密

8、码,和新密码才能进行密码的修改。如图4-6 修改密码4-6 修改密码代码如下:String sql = update teacher set pwd = +text_1.getText()+ where num = +Login.num+; boolean b = MessageDialog.openQuestion(getShell(), 提示,是否修改密码); if(b) db.Update(sql); MessageDialog.openWarning(getShell(), 提示,修改密码成功); 注册用户功能 点击进入注册用户的功能后,进行相应的提示进行操作,填入对应的教师的信息后点

9、击添加就可以成功的注册一个新的用户了,在进行相关的操作,如图4-7注册图4-7 注册新用户代码如下:if(!text.getText().equals() if(!text_1.getText().equals() if(!text_2.getText().equals() if(!text_3.getText().equals() String sql = insert into teacher values (+text.getText()+,+text_2.getText()+,+text_1.getText()+,+text_3.getText()+); boolean b = Mes

10、sageDialog.openQuestion(getShell(), 提示,是否注册); if(b) db.Update(sql); MessageDialog.openWarning(getShell(), 提示,注册成功); 4.2.2 教师端 登录类型选择教师,进入教师端,此处含有增加,删除,修改和教师修还密码等功能,每一步都有相应的校验。 选择功能进行操作。增加学生成绩功能 进入之后会有提示,输入学号,成绩,学年等信息,点击确定完成添加学生成绩的操作。如图4-8 教师端图4-8 教师端代码如下:if(!num.equals() if(!fenshu.equals() if(!xueq

11、i.equals() String sql = insert into 分数 values(+kemu+,+fenshu+,+num+,+xueqi+); db.Update(sql); num = ; fenshu = ; fenye(); MessageDialog.openWarning(getShell(), 提示, 添加成功); else MessageDialog.openError(getShell(), 提示, 学期不能为空); else MessageDialog.openError(getShell(), 提示, 分数不能为空); else MessageDialog.op

12、enError(getShell(), 提示, 学号不能为空); 选择某个人后点击鼠标右键,会出现修改和删除功能。如图4-9鼠标右键功能 图4-9 鼠标右键功能 修改学生成绩 选择某个人之后,右键选择修改功能,就会出现如图4-10的界面,修改学号和成绩后点击确定,即可修改学生成绩图4-10 修改学生成绩代码如下:String sql = update teacher set pwd = +text_1.getText()+ where num = +Login.num+; boolean b = MessageDialog.openQuestion(getShell(), 提示,是否修改密码)

13、; if(b) db.Update(sql); MessageDialog.openWarning(getShell(), 提示,修改密码成功); 删除学生成绩 右键选择删除学生成绩功能,会出现如图4-11的询问框,选择确认,删除此学生的成绩,点击否即为取消删除图4-11 删除学生信息代码如下:String sql = delete from 成绩where num = +text_1.getText()boolean tag = MessageDialog.openQuestion(getShell(), 提示, 是否删); if(tag) db.Update(sql); MessageDi

14、alog.openWarning(getShell(), 提示,删除成功); 4.2.3学生端学生端查询学生信息的功能,该功能含有按学年查询,按科目和查询全部等功能,选择功能进行操作,如图4-12 图4-12 学生查询代码如下:String sql = Select * from student where num =+name+ and pwd = + pwd + ; rs = db.Query(sql); try while (rs.next() TableItem tableItem = new TableItem(table, SWT.NONE); tableItem.setText(

15、0, + rs.getString(1); tableItem.setText(1, + rs.getString(2); tableItem.setText(2, + rs.getString(3); tableItem.setText(3, + rs.getString(4); tableItem.setText(4, + rs.getString(5);tableItem.setText(4, + rs.getString(6); catch (SQLException e) e.printStackTrace(); 五、设计总结通过几天的课程设计使我懂得了理论与实际相结合是很重要的,只

16、有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次真真的做程序设计,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体,通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。六、程序清单 package Student;import java.sql.ResultSet;public class AddCheng extends Shell private

17、Text text_1; private Text text_2; private Table table; private Text text; public int start = 0; public int page = 1; public int row_number = 0; public int maxPage = 0; public int pageSize = 5; String xueqi; String kemu; Combo combo; DBHelper db = new DBHelper(); ResultSet rs; String num; Label label

18、_4; /* * Launch the application. * param args */ public static void main(String args) try Display display = Display.getDefault(); AddCheng shell = new AddCheng(display); shell.open(); shell.layout(); while (!shell.isDisposed() if (!display.readAndDispatch() display.sleep(); catch (Exception e) e.pri

19、ntStackTrace(); /* * Create the shell. * param display */ public AddCheng(Display display) super(display, SWT.SHELL_TRIM); Label label_8 = new Label(this, SWT.BORDER); label_8.setBounds(223, 5, 94, 17); label_8.setText(Login.name1); Label label_10 = new Label(this, SWT.NONE); label_10.setBounds(352,

20、 294, 61, 17); label_10.setText(u9875); label_4 = new Label(this, SWT.NONE); label_4.setBounds(325, 294, 21, 17); Label label = new Label(this, SWT.NONE); label.setBounds(21, 39, 35, 17); label.setText(u79D1u76EE); Label label_1 = new Label(this, SWT.NONE); label_1.setBounds(146, 39, 30, 17); label_

21、1.setText(u5B66u53F7); text = new Text(this, SWT.BORDER | SWT.READ_ONLY); text.setBounds(60, 39, 80, 23); text.setText(Login.classes); text_1 = new Text(this, SWT.BORDER); text_1.setBounds(182, 39, 94, 23); Label label_2 = new Label(this, SWT.NONE); label_2.setBounds(282, 39, 35, 17); label_2.setTex

22、t(u6210u7EE9); text_2 = new Text(this, SWT.BORDER); text_2.setBounds(325, 39, 94, 23); combo = new Combo(this, SWT.NONE); combo.setItems(new String 2011-2012-1, 2011-2012-2, 2012-2013-1, 2012-2013-2); combo.setBounds(466, 39, 100, 25); combo.select(1); kemu = text.getText(); xueqi = combo.getText();

23、 Button button = new Button(this, SWT.NONE); button.addSelectionListener(new SelectionAdapter() Override public void widgetSelected(SelectionEvent e) String num = text_1.getText(); String fenshu = text_2.getText(); if(!num.equals() if(!fenshu.equals() if(!xueqi.equals() String sql = insert into 分数 v

24、alues(+kemu+,+fenshu+,+num+,+xueqi+); db.Update(sql); num = ; fenshu = ; fenye(); MessageDialog.openWarning(getShell(), 提示, 添加成功); else MessageDialog.openError(getShell(), 提示, 学期不能为空); else MessageDialog.openError(getShell(), 提示, 分数不能为空); else MessageDialog.openError(getShell(), 提示, 学号不能为空); ); butt

25、on.setBounds(572, 39, 80, 27); button.setText(u6DFBu52A0); table = new Table(this, SWT.BORDER | SWT.FULL_SELECTION); table.addSelectionListener(new SelectionAdapter() Override public void widgetSelected(SelectionEvent e) TableItem it = table.getSelection(); TableItem i = it0; num = i.getText(0); ); table.setBounds(61, 82, 571, 193); table.setHeaderVisible(true); table.setLinesVisible(true); TableColumn tblclmnNewColumn_1 = new TableColumn(table, SWT.NONE); tblclmnNewColumn_1.setWidth(109); tblclmnNewColumn_1.setText(u7F16u53

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

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