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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于Java与SQL数据库技术的学生成绩管理系统.docx

1、基于Java与SQL数据库技术的学生成绩管理系统基于Java与SQL数据库技术的学生成绩管理系统 2015至2016第二学期期末考试课 程: java语言程序设计 题 目: 学生信息管理系统 类 别: 论文 设计 院 系: 计算机与信息工程系 专业班级: 信息管理 2013级本科1班 学 号: 03,04,07,08,15 学生姓名: 邱丹丹,范柳,谭鸿儒,何婧,陆瑶 任课教师: 周 方 完成时间: 2016年6月24日 教 务 处 制二一五年九月2. 系统需求分析 2.1 开发环境和软件(1) 操作系统:Windows 7 (2) 数据库软件:mysql-5.7.13-winx64(3) J

2、ava开发工具:Eclipse mysql-connector-java-5(JDBC驱动包) jdk-8u73-windows-x64(java运行环境压缩包) 2.2 系统设计与功能分析 学生信息管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。该软件用java语言编写,用SQLServer2005数据库作为后台的数据库进行信息的存储,用SQL语句完成学生学籍信息的添加,查询,修改,删除的操作以及成绩的录入,修改,删除等。用ODBC驱动实现前台Java与后台SQL数据库的连接。Java语言跨平台性强,可以在windows,linux,ubun

3、tu等系统下使用,方便简单,安全性好。SQLServer2005数据库高效安全,两者结合可相互利用各自的优势。该系统实现的大致功能:1用户登陆界面。该界面可以选择使用者的身份,“管理员,教师,学生”。不同的身份有不同的操作界面和功能权限。ID号和密码输入正确即可登录。学生管理界面。提供了学生学籍信息的查询,相关科目的成绩查询和排名,修改登录密码等功能。2教师管理界面。提供了对学生学籍信息的查询,添加,修改,删除;学生成绩的录入,修改,删除,查询班级排名。修改密码等功能。3管理员管理界面。拥有最高的权限。允许添加教师信息和课程信息等。4登录的用户信息分别存储在SQL数据库的“管理员信息表”, “

4、教师信息表”, “学籍信息表”中,如果用户信息不存在则三张表中,将会无权利登录本管理系统。保证了本学生管理系统的安全性。2.3功能层次图3数据库设计3.1 系统概念结构设计 实体属性表:实体属性教师教师ID,教师姓名,登录密码课程课程号,课程名称,教师ID管理员管理员ID,登录密码班级班级号,班级名称,总人数学籍学号,姓名,性别,班级号,籍贯,登录密码成绩学号,课程号,成绩3.2 系统逻辑结构设计教师信息表:字段名 类型空值约束条件教师ID varchar(8)not null主键教师姓名varchar(8)not null登录密码varchar(8)not null课程信息表:字段名 类型空

5、值约束条件课程号 varchar(8)not null主键课程名称varchar(12)not null教师IDvarchar(8)not null外键班级信息表:字段名 类型空值约束条件班级号 varchar(8)not null主键班级名称varchar(8)not null所属学院varchar(6)班级人数nchar(4)管理员信息表:字段名 类型空值约束条件管理员ID varchar(10)not null主键登录密码varchar(10)not null成绩信息表:字段名 类型空值约束条件班级号 varchar(15)not null主键,外键班级名称varchar(8)not n

6、ull主键,外键所属学院smallintnot null学籍信息表:字段名 类型空值约束条件学号int not null主键姓名varchar(30)not null性别char(2)班级号varchar(30)not null外键籍贯char(10) 登录密码moneynot null3.3 数据库实现3.3.1 数据库关系图3.3.2SQL语句实现数据表的创建:(1)教师信息表创建:create table 教师信息表(教师ID varchar(8) primary key ,教师姓名varchar(8) not null unique,登录密码varchar(8) not null,)(

7、2)课程信息表创建:create table 课程信息表(课程号varchar(8) primary key,课程名称varchar(12) not null,教师ID varchar(8) not nullforeign key(教师ID) references 教师信息表(教师ID) )(3)班级信息表创建:create table 班级信息表(班级号varchar(8) not null primary key,班级名称varchar(8) not null unique,所属学院varchar(8) ,班级人数 nchar(4) )(4)学籍信息表创建:create table 学籍信

8、息表(学号varchar(15) primary key,姓名varchar(8) not null ,性别varchar(4) ,班级号varchar(8) not null ,籍贯varchar(5) ,登录密码varchar(6) not nullforeign key (班级号) references 班级信息表(班级号)(5)成绩信息表创建:create table 成绩信息表(学号varchar(15),课程号varchar(8),成绩smallint primary key(学号,课程号)foreign key (学号) references 学籍信息表(学号),foreign

9、key (课程号) references 课程信息表(课程号))(6)管理员信息表创建:create table 课程信息表(管理员ID varchar(8) primary key,登录密码 varchar(12) not null)视图的创建:(1)“教师课程详细信息”视图创建:create view 教师课程详细信息asSELECT 教师信息表.教师ID,教师信息表.教师姓名,课程信息表.课程号,课程信息表.课程名称,教师信息表.登录密码FROM 教师信息表JOIN 课程信息表 ON 教师信息表.教师ID =课程信息表.教师ID(2) “学生成绩信息”视图创建:create view 学

10、生成绩信息asSELECT 学籍信息表.学号,学籍信息表.姓名,学籍信息表.性别,课程信息表.课程名称,成绩信息表.成绩FROM 成绩信息表JOIN 学籍信息表 ON 成绩信息表.学号 = 学籍信息表.学号JOIN 班级信息表 ON 班级信息表.班级号 = 学籍信息表.班级号JOIN 课程信息表 ON 课程信息表.课程号 = 成绩信息表.课程号存储过程创建:(1)“单科成绩排名”创建: create proc dbo.单科成绩排名kechenname char(8),classname char(8)asselect 学籍信息表.学号,姓名,成绩 from 成绩信息表 join 课程信息表on

11、 课程信息表.课程号=成绩信息表.课程号 join 学籍信息表on 学籍信息表.学号=成绩信息表.学号join 班级信息表on 班级信息表.班级号=学籍信息表.班级号 where 课程名称=kechenname and 班级名称=classname order by 成绩desc(2)“全班排名”创建:create proc dbo.全班排名class char(8)asselect 学籍信息表.学号,姓名, avg(成绩) as 平均分,sum(成绩) as 总分 from 成绩信息表 join 学籍信息表 on 成绩信息表.学号=学籍信息表.学号join 班级信息表 on 班级信息表.班级

12、号=学籍信息表.班级号where 班级信息表.班级名称=classgroup by 学籍信息表.姓名,学籍信息表.学号 order by avg(成绩) desc,学籍信息表.学号4. 系统模块详细设计4.1 用户登录模块4.2 各用户操作模块4.2.1 管理员操作模块(图1)4.2.2 教师操作模块(图2)4.2.3 学生操作模块(图3) 图1 图2 图3 5. 系统运行与测试5.1 管理员登录点击“管理员”按钮。输入正确的ID和密码。验证成功则可进入管理员管理界面。管理员ID号和登录密码存在数据库中的管理员信息表。表中存在的管理员才允许登录。(1)添加教师信息。在弹出的输入栏中输入正确的数

13、据,点击“确认添加”。 如果输入重复的信息则会弹出。 如果某项未填则弹出。 输入的数据会分别写进“教师信息表”和“课程信息表”中。 增加的教师信息,允许让更多的教师登录本系统进行管理操作!(2)修改教师信息 如果要修改的教师信息不存在,则 (3)删除信息修改 输入的教师信息不存在,则 (4)查询教师信息5.2 教师登录 在登录界面选择“教师”按钮,并输入正确的ID号和密码,即可登录成功!输入错误则会弹出提示! ID号输入正确,登录成功!进入教师管理的操作界面: (1)显示学生信息。 (2)添加学生信息 新添加的信息会保存在学籍信息表中!如果输入的信息已经存在,则显示 如果输入的数据正确,则 (

14、3)修改学生信息,输入正确则显示! (4) 删除学生信息, (5)录入学生成绩 (6)修改学生成绩 (7) 删除学生成绩 (8)查询学生成绩 (9)所有成绩排名 (10)单科成绩排名(11)更改登录密码 修改成功后即可用新的密码进行登录!5.3 学生登录 输入正确的ID号和密码,即可正常登录!(1)显示学生信息(2)查询个人成绩 (3)单科成绩排名 (4)全班成绩排名(5)修改密码 修改密码后会更新学生学籍表里面的登录密码,下次就可以用新密码登录。点击 后,就可以安全退出学生管理系统了!6课程设计总结课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是

15、对学生实际工作能力的具体训练和考察过程. 本次课程设计虽然很辛苦,实在是受益匪浅。本来这门课的知识学的就不够扎实,本次课程设计,在设计过程中碰到了很多问题,刚开始要设计的时候,还真不知道从哪里下手但最终在图书、同学和老师的帮助下都得到了解决,让我学会了好多书本上没有的东西,通过本次课程设计我也能将课本上的知识融会贯通,起到了很好的辅助学习的效果,但是我发现我学到的知识比整整一个学期学到的都多。理论和实践的相结合是学习最有效的方法。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。 通过这次课程设计使我懂得

16、了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。 7附录(代码)由于篇幅有限,所以只附上主要功能的代码:登陆界面与主功能界面:public class Login extends JFrame implements ActionListener JFrame mm=new JFrame(您好!请您先登录!); JTextField t2=new JTextField(null,15); JTextField t4=new JPasswordField(null,15)

17、; public String zh=null; JRadioButton b=new JRadioButton(教师); JRadioButton b1=new JRadioButton(学生); JRadioButton b2=new JRadioButton(管理员); public void jiemian() mm.setSize(300,340); mm.setVisible(true); mm.setLocation(200,300); mm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JLabel t1=new JLabel(

18、ID号:); JLabel t3=new JLabel(密码:); JButton denglu2=new JButton(登录); denglu2.setContentAreaFilled(false); Container n=mm.getContentPane(); n.setLayout(null); t1.setBounds(42,125,75,35); t2.setBounds(80,125,150,35); t3.setBounds(40,180,75,35); t4.setBounds(80,180,150,35); denglu2.setBounds(102,245,70,3

19、0); n.add(t1);n.add(t2); n.add(t3); n.add(t4); n.add(denglu2); b.setBounds(130,85,70,30); b1.setBounds(70,85,70,30); b2.setBounds(190,85,70,30); ButtonGroup rg=new ButtonGroup(); b.setSelected(false); b1.setSelected(true); b1.setSelected(false); n.add(b); n.add(b2); rg.add(b2); rg.add(b); n.add(b1);

20、 rg.add(b1); b.setContentAreaFilled(false); b1.setContentAreaFilled(false); b2.setContentAreaFilled(false); denglu2.addActionListener(this); public void actionPerformed(ActionEvent e) JButton denglu2=(JButton)e.getSource(); if(b.isSelected() zh=t2.getText(); String mima=t4.getText(); try Class.forNa

21、me(sun.jdbc.odbc.JdbcOdbcDriver); Connection c=DriverManager.getConnection(jdbc:odbc:学生信息系统); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.executeQuery(select * from 教师信息表 where 教师ID=+zh+ and 登录密码=+mima+); r.last(); if(r.getRow()=1) mm.se

22、tVisible(false); r.beforeFirst(); while(r.next() JOptionPane.showMessageDialog( null ,r.getString(教师姓名)+老师!您好!欢迎登录教师管理系统! ) ; JFrame mmm=new JFrame(); mmm.setSize(400,420); mmm.setVisible(true); mmm.setLocation(200,300); mmm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JLabel aaa=new JLabel(学生信息管

23、理:);JLabel aaa1=new JLabel(学生成绩管理:); JButton b1=new JButton(显示学生信息);b1.setBounds(40,45,140,30); JButton b2=new JButton(添加学生信息);b2.setBounds(200,45,140,30); JButton b3=new JButton(修改学生信息);b3.setBounds(40,90,140,30); JButton b4=new JButton(删除学生信息);b4.setBounds(200,90,140,30); JButton b5=new JButton(录入

24、学生成绩);b5.setBounds(40,170,140,30); JButton b6=new JButton(修改学生成绩);b6.setBounds(200,170,140,30); JButton b7=new JButton(删除学生成绩);b7.setBounds(40,215,140,30); JButton b8=new JButton(查询学生成绩);b8.setBounds(200,215,140,30); JButton b9=new JButton(所有成绩排名);b9.setBounds(40,260,140,30); JButton b12=new JButton

25、(单科成绩排名);b12.setBounds(200,260,140,30); JButton b10=new JButton(退出系统);b10.setBounds(60,325,100,30); JButton b11=new JButton(修改密码);b11.setBounds(220,325,100,30); aaa.setBounds(15,15,90,30); aaa1.setBounds(15,140,90,30); Container n=mmm.getContentPane(); n.setLayout(null);J_ActionListener1 a1=new J_Ac

26、tionListener1(); J_ActionListener2 a2=new J_ActionListener2(); J_ActionListener3 a3=new J_ActionListener3(); J_ActionListener4 a4=new J_ActionListener4(); J_ActionListener5 a5=new J_ActionListener5(); J_ActionListener7 a7=new J_ActionListener7(); J_ActionListener8 a8=new J_ActionListener8(); J_Actio

27、nListener9 a9=new J_ActionListener9(); J_ActionListener10 a10=new J_ActionListener10(); J_ActionListener12 a12=new J_ActionListener12(); J_ActionListener11 a11=new J_ActionListener11(); n.add(b1);n.add(b2);n.add(b3);n.add(b4);n.add(b5);n.add(b6); n.add(b7);n.add(b8);n.add(b9);n.add(b10);n.add(aaa);n

28、.add(aaa1);n.add(b11);n.add(b12);b1.addActionListener(a1);b2.addActionListener(a2); b3.addActionListener(a3);b4.addActionListener(a4);b5.addActionListener(a5); b6.addActionListener(a7);b7.addActionListener(a8);b8.addActionListener(a9); b9.addActionListener(a10); b11.addActionListener(a1)b12.addActionListener(a12); b10.addActionListener(new ActionListener() public void actionPerformed(final ActionEvent e) System.exit(0); ); (JComponent) mmm.getContentPane().setOpaque(false); .URL url = Sql.class.getResource

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

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