数据库原理及应用课程设计学生信息管理系统(java+sql)-毕业论文.doc
《数据库原理及应用课程设计学生信息管理系统(java+sql)-毕业论文.doc》由会员分享,可在线阅读,更多相关《数据库原理及应用课程设计学生信息管理系统(java+sql)-毕业论文.doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本科生课程设计课程名称数据库原理及应用课程设计课程编号 学号学生姓名所在专业所在班级指导教师成绩教师签字年 月 日课程设计时间: 年 月 日 至 年 月 日目 录目 录设计总说明I1、需求分析32、概念结构设计33、逻辑结构设计54、物理结构设计95、系统实现135.1 前台界面135.2 后台实现166、优缺点及自我评价187、参考文献18设计总说明设计总说明(1) 系统开发目的学生信息管理系统是学校管理的重要工具,是学校不可或缺的部分。 随着在校大学生人数的不断增加,教务系统的数量也不断的上涨。学校工作繁杂、资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,效率也是很低的。
2、并且这种传统的方式存在着很多的弊端,如:保密性差、查询不便、效率低,很难维护和更新等。然而,本系统针对以上缺点能够极大地提高学生信息管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。所以如何自动高效地管理信息是这些年来许多人所研究的。(2) 开发内容用数据库和Java相关技术开发一个学生信息管理系统(3) 开发要求能够对学生信息进行简单的添加,删除和查询(4) 开发环境及工具1、操作系统:Windows 72、数据库软件:SQL Server 20083、Java开发工具:Eclipse(5) 系统功能简介一、学生管理1、 添加学生信息。可以按照图形的界面的显示依次输入新学生的“学号
3、”,“姓名”,“性别”,“班级”,“学院”,“籍贯”。完成新纪录的添加。2、 删除学生记录。可以根据输入的“学号”或者”姓名”进行删除的操作。二、学生查询3、查询学生信息。用户可以选择通过“按姓名查询”,也可以选择“按学号查询”查询学生信息,查询到的信息会在窗口中显示出来。三、 文件退出(6) 开发分工情况本系统由本人独立完成23广东海洋大学本科生课程设计数据库原理及应用课程设计报告1、需求分析在一些学校等机构,随着学生数量的不断增加,学生的信息不断增多,人工管理信息的难度也越来越大。而且效率也是很低的。所以如何自动高效地管理信息是这些年来许多人所研究的。随着这些年电脑计算机的速度质的提高,成
4、本的下降,IT互联网大众趋势的发展。我们使用电脑高效率处理数据信息成为可能。 学生信息管理系统的出现,正是管理人员与信息数据,计算机进入互动时代的体现。友好的人机交互模式,清晰简明的图形界面,高效安全的操作使得我们对成千上万的信息的管理得心应手。学生信息管理系统,以SQL数据库作为后台信息存储,Java作为前台系统的语言。提供了对学生信息添加,查询,删除等功能。实现了最基本的信息管理。2、概念结构设计 教师ID课程号教师教师姓名课程名称课程登录密码教师ID学号课程号成绩姓名成绩学号管理员ID性别学生管理员籍贯登录密码班级号班级籍贯登录密码总人数班级号班级名称3、逻辑结构设计StudentInf
5、o表:字段名 类型空值约束条件学号Char(10)not null主键姓名varchar(10)出生日期datetime籍贯varchar(50)系号char(2)not null外键班级号char(6)not null 外键4、物理结构设计create table StudentInfo(学号 char(10) primary key,姓名 varchar(10) ,性别 char(2) ,出生日期 datetime ,籍贯 varchar(50) ,系号 char(2),班级号 char(6) ,)5、 系统实现5.1前台界面:5.2后台代码实现:见附录6、优缺点及自我评价 由于时间仓促,
6、本系统还有许多功能没有实现,也有一些漏洞。同时,也因为自己掌握的知识不够扎实,不够全面,所以,这个学生信息管理系统只实现了一些简单的基本功能,其他功能还有待完善。本次课程设计自我感觉很辛苦,但是受益匪浅。因为数据库,Java这两门课的知识学的不够扎实,在设计过程中碰到了很多问题,刚开始要设计的时候,还真不知道从哪里下手,通过在百度、书本、同学的帮助下有些得到了解决,让我学会了好多书本上没有的东西,通过本次课程设计,逐渐能将课本上的知识应用到实际操作中,但是我发现我现在学到的知识还远远不够,要想做出一个功能比较全面,界面比较漂亮的系统还需要更多相关的知识。所以,在接下来的日子里,我还有待加强学习
7、。在设计的过程中发现了自己的很多不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,导致设计系统的时候频频出现错误。 通过这次课程设计使我懂得了理论与实际相结合很重要,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正达到学以致用的目的,从而提高自己的实际动手能力和独立思考的能力。7、参考文献(1) 王珊,萨师煊.数据库系统概论M,高等教育出版社,2014.(2) 耿祥义,张跃平.Java2实用教程M,清华大学出版社,2013.附 录附录1、 添加学生面板类的代码package jieweixiao;/导入系统的类包import java.awt
8、.*;import java.sql.*;import javax.swing.*;import java.awt.event.*;/创建“添加学生面板”类public class AddStudentPanel extends JPanel implements ActionListener/声明连接数据库对象Connection con;/声明SQL语句对象PreparedStatement st;/创建组件对象:标签、文本行、单选JLabel jLabel1=new JLabel(学号);JLabel jLabel2=new JLabel(姓名);JLabel jLabel3=new J
9、Label(性别);JLabel jLabel4=new JLabel(出生日期);JLabel jLabel5=new JLabel(籍贯);JLabel jLabel6=new JLabel(注意:出生日期格式为YYYY-MM-DD);JTextField jTextField1=new JTextField();JTextField jTextField2=new JTextField();JTextField jTextField3=new JTextField();JTextField jTextField4=new JTextField();JRadioButton jRadioB
10、utton1=new JRadioButton(男);JRadioButton jRadioButton2=new JRadioButton(女);ButtonGroup buttonGroup1=new ButtonGroup();JButton jButton1=new JButton(存入数据库);/构造方法public AddStudentPanel()try/调用初始化方法jbInit();catch(Exception exception)exception.printStackTrace();/界面初始化方法private void jbInit() throws Excepti
11、on/连接数据库/con=new Connection(); /创建一个statement对象来将SQL语句发送到数据库String url=jdbc:sqlserver:/localhost:1433; DatabaseName=StudentManager;String driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;Class.forName(driver);/加载驱动!con=DriverManager.getConnection(url,sa,xjw1123);/连接数据库!String sql=insert into Stud
12、entInfo+ values(?,?,?,?,?,?,?);st=con.prepareStatement(sql);/框架的布局this.setLayout(null);/设置各组件的大小jLabel1.setBounds(new Rectangle(21,17,64,24);jLabel2.setBounds(new Rectangle(21,51,53,22);jLabel3.setBounds(new Rectangle(21,86,61,27);jLabel4.setBounds(new Rectangle(21,122,59,25);jLabel5.setBounds(new R
13、ectangle(21,188,54,24);jLabel6.setBounds(new Rectangle(102,153,219,27);jTextField1.setBounds(new Rectangle(102,10,200,30);jTextField2.setBounds(new Rectangle(102,49,200,30);jTextField3.setBounds(new Rectangle(102,117,200,33);jTextField4.setBounds(new Rectangle(102,183,200,29);jRadioButton1.setBounds
14、(new Rectangle(102,83,65,30);jRadioButton2.setBounds(new Rectangle(190,85,85,30);jButton1.setBounds(new Rectangle(103,217,180,30);/设置单选按钮被选中jRadioButton1.setSelected(true);/添加按钮动作事件jButton1.addActionListener(this);/添加组件到面板this.add(jTextField1);this.add(jLabel1);this.add(jLabel2);this.add(jTextField2
15、);this.add(jRadioButton1);this.add(jRadioButton2);this.add(jLabel3);this.add(jLabel4);this.add(jTextField3);this.add(jLabel6);this.add(jTextField4);this.add(jLabel5);this.add(jButton1);buttonGroup1.add(jRadioButton1);buttonGroup1.add(jRadioButton2);/点击按钮事件/事件相应器 当你定义的事件捕捉以后就会执行这个里面的代码public void act
16、ionPerformed(ActionEvent e)/获取用户输入的信息String xuehao=jTextField1.getText();String xingming=jTextField2.getText();String xingbie=;if(jRadioButton1.isSelected()xingbie+=男;if(jRadioButton2.isSelected()xingbie+=女;String dateString=jTextField3.getText();String jiguan=jTextField4.getText();try/设置日期格式/st.exe
17、cute(set dateformat ymd);/利用st对象执行SQL语句,进行插入操作 st.setString(1,xuehao); st.setString(2,xingming); st.setString(3,xingbie); st.setString(4,dateString); st.setString(5,jiguan); st.setString(6,); st.setString(7,); st.executeUpdate(); /清空文本行的内容jTextField1.setText();jTextField2.setText();jTextField3.setTe
18、xt();jTextField4.setText();/利用消息对话框提示删除操作成功 JOptionPane.showMessageDialog(this,插入成功!);catch(Exception ex)/利用消息对话框提示不能插入,并显示异常的信息JOptionPane.showMessageDialog(this,ex);/ex.printStackTrace();2、 删除学生面板类的代码package jieweixiao;/导入系统的类包import java.awt.*;import java.sql.*;import javax.swing.*;import java.aw
19、t.event.*;/创建“删除学生面板”类public class DeleteStudentPanel extends JPanel implements ActionListener/声明连接数据库对象Connection con;/声明SQL语句对象Statement st;/创建组件对象JLabel jLabel1=new JLabel(请输入待删除的学生的学号:);JTextField jTextField1=new JTextField();JButton jButton1=new JButton(删除);/构造方法public DeleteStudentPanel()try/调
20、用初始化方法jbInit();catch(Exception exception)exception.printStackTrace();/界面初始化方法private void jbInit() throws Exception/连接数据库/con=DBConnect.getConn();String url=jdbc:sqlserver:/localhost:1433; DatabaseName=StudentManager;String driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;Class.forName(driver);/加
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 应用 课程设计 学生 信息管理 系统 java sql 毕业论文
限制150内