1)实习题目
学生信息管理系统的设计与开发
2)实习目的
《Java程序设计》课程是电子商务专业的一门专业必修课程,特针对此课程进行为期三周的实践教学,旨在提升本专业学生对此课程中的理论知识的综合应用能力、提高学生的逻辑思维能力、软件开发能力。
本次课程实习要求学生用Java技术在Windows平台下开发学生信息管理系统。通过此程序的开发能够切实提高学生的程序设计水平,在实践中掌握面向对象程序设计的开发思想。
3)开发环境
操作系统WindowsXP
编程环境:MyEclipse6。0
主要技术:JavaSwing实现窗体界面
JDBC实现数据库操作
系统架构:三层架构(MVC)+DAO设计模式
数据库:MySQL5。0
二:课设内容
1)系统功能需求
学生信息管理系统主要对在校学生的个人基本信息以及成绩信息进行管理,对教师用户提供查询信息、增添信息、删除信息等操作功能对学生用户提供成绩查询功能。我们的目标就是为该系统提供前台用户界面设计以及后台连接数据库程序设计,系统程序界面采用JavaSwing组件实现,数据库操作采用JDBC实现。
学生信息管理系统要面对教师和学生用户。对于教师,需要查询全部学生的基本信息和成绩信息,并且可以对其进行修改。对于学生,不需要查询自己的基本信息,只需要查询成绩。为了保护学生成绩隐私,每位学生登录系统后只能查询自己的成绩,而无法看到别人的成绩。教师方面:教师通过自己的用户名和密码登录后,进入教师主界面,在这个主界面里,可以选择要操作的类别,即查询功能还是修改功能。在查询功能里面,可以选择是查询学生基本信息,还是查询学生成绩信息。在查询学生基本信息时,可以从依据不同字段,即学生信息表的不同属性进行查找。在查找学生成绩信息时,只能依据学生姓名和学号进行查找。在修改功能里面,包括对学生基本信息表和学生成绩表进行增加和删除记录。学生方面:学生通过自己的用户名和密码登录此系统后,可以查询自己本学期的各科成绩信息。
2)数据库需求
依据功能需求,学生信息管理系统主要有三个表:student表、teacher表和score表。
(1)student(学生信息表)
此表有六个属性,分别为:id(主键,自动递增),num(学号),sname(姓名),sex(性别),age(年龄),dept(系别)。
(2)teacher(教师登录表)
此表有三个属性列,分别为:id(主键,自动递增),tname(教师账户),password(登录密码)。
(3)score(教师登录表)
此表有六个属性列:分别为:id(主键,自动递增),num(学号),sname(学生姓名),course(课程名称),score(考试成绩),credit(学分)。
三:设计过程(包括总体设计和详细设计)
1)项目总体设计
需要建立一个三层模块:视图层(界面,提供用户输入)控制层(接受用户输入处理)持久层(连接数据库)。
在登陆界面实现教师、学生的登录,实现学生查看自己所有信息的界面,教师对学生信息、学生成绩信息的增删减查功能的实现。
2)项目详细设计
1、需要有开发环境,安装编程环境:MyEclipse6。0、数据库:MySQL5。0、安装NavicatforMysql程序
2、仔细阅读《Java实习指导书》,详细了解对学生信息管理系统设计与开发的总体设计
3、首先需要建立四个包,分别为:ui包,dao包,connection包,model包。connection包,主要负责获得与数据库的连接和关闭连接dao包主要负责对数据库的操作ui包主要分为登录界面、学生查询界面、教师对学生信息和学生成绩信息进行增删减查操作的界面
4、ui包是界面,系统运行主界面——学生信息管理登陆界面(根据公共数据库建立自己的数据库,输入登录名、密码可以分别进入教师主页面、学生主页面),学生详细信息界面(进入后会出现学生自己的成绩等详细的信息,并有退出功能),老师登陆界面(可以对学生信息进行增删减查,对学生成绩信息进行增删检查,并有退出功能)
5、ui包中还有对学生信息进行增加学生、删除学生、查看学生信息、浏览所有学生信息、增加学生成绩信息、删除学生成绩信息、查看学生成绩信息的7个界面,每个功能实现完成后会显示操作成功,并有退出功能
6、然后在Java编程环境MyEclipse6。0编写代码
7、首现建立以dumeilingxxglxt命名的项目工程,然后建立ui包,然后再建立LoginUI类,代码敲完LoginUI类的所有代码,然后开始根据提示,这个LoginUI类所需要的dao包,connection包,model包,还有dao包的ScoreDao类、StudentDao类、TeacherDao类connection包的DBConnectionmodel包的Scor类,Studente类,然后在敲ui包中的ScoreAddUI类,ScoreDeleteUI类,ScoreQueryUI类,StudentAddUI类,StudentDeleteUI类,StudentQueryUI类,StudentScoreUI类,eacherMainUI类
8、在MyEclipse中导入数据库驱动包mysql—connector—java—5。0。5。jar
9、在NavicatforMysql打开数据库,然后建表:student表、teacher表和score表,进入主界面,实现系统登陆功能
10、连接公共数据库:NavicatforMysql
代码为:("jdbc:mysql://192。168。0。1:3306/dumeiling","root","p")
11:然后开始运行,发现错误并解决错误
12:在所有代码都正确的情况下,所有界面将会出现。
四:调试过程(包括系统测试、出现的问题、解决的方法等)
出现最多的错误就是:
1)代码编写错误,解决方法就是照着代码继续核对,直到可以运行
2)当连接上公共数据库后,运行LoginUI,出现登陆界面,但是输入登录名、密码点击登陆后却出不出现学生信息界面或是老师登陆界面,这时候下面将会出现许多错误提示,点击后开始再次找出错误的代码,这个难度比较大,需要自习阅读每一行代码,在熟知代码的前提下对程序代码进行修改,也是最考验我们耐心的时刻,过了之一阶段,实习的基本要求就达到了,然后就该对程序加入一些自己的设计,以此来不同于别人。
3)在我设计好的代码中,登录学生界面是出现一个Driversuccess,connectionsuccecc的提示,但是却不显示学生信息,一直不知道是什么原因,最后把数据库的三个表删除,再次建表,结果全部成功了,对我来时这是一个谜啊。
五、小结(在整个课程设计过程中的总结和体会)
将近三周的JAVA实习很快就结束了,虽然仅仅只有三周,但我学到了许多知识,以前只是做些JAVA实验,敲一堆代码,然后出来个简单的结果,还有的是没有在主函数里输入,只是学会掌握属性存取器的使用,super、final、abstract关键字,理解抽象类与抽象方法,理解并掌握接口的定义与使用等等,但这次不一样,是设计与开发个学生信息管理系统,实现教师、学生登录并实现增删价查功能。
在整个学生信息管理系统的设计与开发过程中,感触最深的就是两周的'敲代码、核对代码。可以说是一次痛苦的体验,但是在实习的第三周看到自己的成果展示,不得不佩服自己的毅力。
通过对这次学生信息管理系统的设计与开发过程实习,我发现任何一种语言只要你用心投入,你就会发现其实一切都那么简单,就拿这四个包中的类代码,如果你仔细分析的话,你会发现其实一些带麦是差不多的,也就是说只要你会其中一个操作代码,你就会其他的操作,老师给的程序代码教师操作功能只有6个,但是我们可以再添加两个界面。我的自己设计部分是:添加背景颜色、并增加了一个浏览所有学生信息的界面,但是没有连接到正确的界面上,由于自己安排的时间问题,没有及时写出来,还有就是我在添加背景颜色时,还是不太清楚,确切说自己登陆界面添加背景颜色正确,其他的被覆盖这了,总的来说还是不太懂代码。
还有体会最深的一点是:只要你用心去学习,你就回学到一些东西,也许不是那么明显,但是只要付出还是会有收获的。在第三周周二是交作业时,有的同学自己昨天完全正确的程序,今天完全不管用了,我看到了她的急躁,一直埋怨、似乎有点想哭,其实我想说:冷静。然后看看是什么原因,假如是电脑的问题李珂把代码拷走,重新建立工程,说实话,我不知道重新建了多少次,遇事一定要让自己冷静,不要急,事情总会有解决的方法。
【java实习报告】相关文章:
java实习工作总结08-04
java实习工作自我总结10-12
java实习心得体会7篇08-27
有关java程序员辞职报告4篇11-29
java培训心得体会09-28
车工实习报告08-31
铣工实习报告08-30
财会实习报告08-19
暑假实习报告08-18
岗位实习报告08-14