java实习报告

时间:2021-08-31

java实习报告

  在生活中,需要使用报告的情况越来越多,其在写作上具有一定的窍门。那么什么样的报告才是有效的呢?下面是小编为大家收集的java实习报告,希望能够帮助到大家。

java实习报告1

  1)实习题目

  学生信息管理系统的设计与开发

2)实习目的

  《Java程序设计》课程是电子商务专业的一门专业必修课程,特针对此课程进行为期三周的实践教学,旨在提升本专业学生对此课程中的理论知识的综合应用能力、提高学生的逻辑思维能力、软件开发能力。

  本次课程实习要求学生用Java技术在Windows平台下开发学生信息管理系统。通过此程序的开发能够切实提高学生的程序设计水平,在实践中掌握面向对象程序设计的开发思想。

3)开发环境

  操作系统;Windows XP

  编程环境:MyEclipse 6.0

  主要技术:Java Swing实现窗体界面

  JDBC实现数据库操作

  系统架构:三层架构(MVC)+DAO设计模式

  数据库:MySQL5.0

二:课设内容;

  1)系统功能需求

  学生信息管理系统主要对在校学生的个人基本信息以及成绩信息进行管理,对教师用户提供查询信息、增添信息、删除信息等操作功能;对学生用户提供成绩查询功能。我们的目标就是为该系统提供前台用户界面设计以及后台连接数据库程序设计,系统程序界面采用Java Swing组件实现,数据库操作采用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、需要有开发环境,安装编程环境:MyEclipse 6.0、数据库:MySQL5.0、安装Navicat for Mysql程序;

  2、仔细阅读《Java实习指导书》,详细了解对学生信息管理系统设计与开发的总体设计;

  3、首先需要建立四个包,分别为:ui包,dao包,connection包,model包。connection包,主要负责获得与数据库的连接和关闭连接;dao包主要负责对数据库的操作;ui包主要分为登录界面、学生查询界面、教师对学生信息和学生成绩信息进行增删减查操作的界面;

  4、ui包是界面,系统运行主界面--学生信息管理登陆界面(根据公共数据库建立自己的数据库,输入登录名、密码可以分别进入教师主页面、学生主页面), 学生详细信息界面(进入后会出现学生自己的成绩等详细的信息,并有退出功能),老师登陆界面(可以对学生信息进行增删减查,对学生成绩信息进行增删检查,并有退出功能);

  5、ui包中还有对学生信息进行增加学生、删除学生、查看学生信息、浏览所有学生信息、增加学生成绩信息、删除学生成绩信息、查看学生成绩信息的7个界面,每个功能实现完成后会显示操作成功,并有退出功能;

  6、然后在Java编程环境MyEclipse 6.0编写代码;

  7、首现建立以dumeilingxxglxt命名的项目工程,然后建立ui包,然后再建立LoginUI类,代码敲完LoginUI类的所有代码,然后开始根据提示,这个 LoginUI类所需要的dao包,connection包,model包,还有dao包的 ScoreDao类、StudentDao类、 TeacherDao类;connection 包的DBConnection ;model包的Scor类 ,Studente类, 然后在敲ui包中的ScoreAddUI类, ScoreDeleteUI类,ScoreQueryUI类,StudentAddUI类, StudentDeleteUI类, StudentQueryUI类,StudentScoreUI 类,eacherMainUI类;

  8、在MyEclipse中导入数据库驱动包mysql-connector-java-5.0.5.jar;

  9、 在Navicat for Mysql打开数据库,然后建表:student表、teacher表和score表,进入主界面,实现系统登陆功能;

  10、连接公共数据库:Navicat for Mysql

  代码为:("jdbc:mysql://192.168.0.1:3306/dumeiling","root","p");

  11:然后开始运行,发现错误并解决错误;

  12:在所有代码都正确的情况下,所有界面将会出现。

四:调试过程(包括系统测试、出现的问题、解决的方法等)

  出现最多的错误就是:

  1)代码编写错误,解决方法就是照着代码继续核对,直到可以运行

  2)当连接上公共数据库后,运行LoginUI,出现登陆界面,但是输入登录名、密码点击登陆后却出不出现学生信息界面或是老师登陆界面,这时候下面将会出现许多错误提示,点击后开始再次找出错误的代码,这个难度比较大,需要自习阅读每一行代码,在熟知代码的前提下对程序代码进行修改,也是最考验我们耐心的时刻,过了之一阶段,实习的基本要求就达到了,然后就该对程序加入一些自己的设计,以此来不同于别人。

  3)在我设计好的代码中,登录学生界面是出现一个Driver success,connection succecc的提示,但是却不显示学生信息,一直不知道是什么原因,最后把数据库的三个表删除,再次建表,结果全部成功了,对我来时这是一个谜啊。

五、小结(在整个课程设计过程中的总结和体会)

  将近三周的JAVA实习很快就结束了,虽然仅仅只有三周,但我学到了许多知识,以前只是做些JAVA实验,敲一堆代码,然后出来个简单的结果,还有的是没有在主函数里输入,只是学会掌握属性存取器的使用,super、final、abstract关键字,理解抽象类与抽象方法,理解并掌握接口的定义与使用等等,但这次不一样,是设计与开发个学生信息管理系统,实现教师、学生登录并实现增删价查功能。

  在整个学生信息管理系统的设计与开发过程中,感触最深的就是两周的敲代码、核对代码。可以说是一次痛苦的体验,但是在实习的第三周看到自己的成果展示,不得不佩服自己的毅力。

  通过对这次学生信息管理系统的设计与开发过程实习,我发现任何一种语言只要你用心投入,你就会发现其实一切都那么简单,就拿这四个包中的类代码,如果你仔细分析的话,你会发现其实一些带麦是差不多的,也就是说只要你会其中一个操作代码,你就会其他的操作,老师给的程序代码教师操作功能只有6个,但是我们可以再添加两个界面。我的自己设计部分是:添加背景颜色、并增加了一个浏览所有学生信息的界面,但是没有连接到正确的界面上,由于自己安排的时间问题,没有及时写出来,还有就是我在添加背景颜色时,还是不太清楚,确切说自己登陆界面添加背景颜色正确,其他的被覆盖这了,总的来说还是不太懂代码。

  还有体会最深的一点是:只要你用心去学习,你就回学到一些东西,也许不是那么明显,但是只要付出还是会有收获的。在第三周周二是交作业时,有的同学自己昨天完全正确的程序,今天完全不管用了,我看到了她的急躁,一直埋怨、似乎有点想哭,其实我想说:冷静。然后看看是什么原因,假如是电脑的问题李珂把代码拷走,重新建立工程,说实话,我不知道重新建了多少次,遇事一定要让自己冷静,不要急,事情总会有解决的方法。

  【java实习报告2】

  1 传统的错误观念

  以前以为教学视频和代码看多,自己就懂的多,实际做起来,却不知从何下手,问题在那?如何定位?如何解决?通通跟一样能力有关,debug追踪能力,也称调试.在项目组工作不愁源码资源,但问题是蛋糕摆在面前,你如何去消化?

  有位同事告诉我:代码看几遍都没用,要去抄,例如一个查询模块,在此基础上去做具体记录的历史记录查询模块,你可能会觉得很简单,但实际情况却往往报一堆异常,配置问题涉及到方方面面,以及数据库字段,传值问题等等,一大堆对于新人来说很郁闷的问题.但不用怕,只要学会调试,一个个问题去追踪,一个个去解决,自然而然,那段“源码”才真正属于你.

  2 如何调试追踪?

  如果你能在短短的时间内就看到问题点在那,放下断点去追踪,出去找工作,绝对没问题.出现问题的时候,不要光看代码,要用实际行动去追踪运行期间的具体值,那是最好途径.eclipse是个很爽的idea,这点做的很好.例如页面内容显示不是自己想要的数据,我们要先从数据库查询语句去下手,设置断点,一步一步step over,让sql字段(存取最终sql语句的字符串)运行到有值,inspect进去看,如果还看不出来,就点击它,copy后在sql客户端去实际运行,看看实际查询出来的表是什么,如果是对的,有可能就是页面调用的错误或者action逻辑的传值问题.

  页面错误的调试,基本方法是用右键点击实际网页查看源代码,copy到editplus,就能看到具体错误发生在那几行.通常有几种常见的错误,.例如.缺少对象 这种很多时候是有些被你调用的字段有可能为空的情况出现的,可以加if(xxx=null)语句加保护.追踪的方法基本就是用alert语句,放在有可能出错的地方.毕业实习总结

  3 一些习惯

  遇到问题先自己思考,无从下手再找高手帮忙看看,注意他帮你看的思路,别在一旁闲着,看多了自己也会了,不然你一辈子都停留在那种水平,从人身上学到的东西远远比书多的多.

  解决了一个问题后,要去究根问底去找到问题产生的起因,以防你下次遇到类似的问题再浪费同样的时间.

  把代码写的漂亮,注释,空行,规范一样不能少,可读性是放在第一位.曾经看过一个高手写的代码,真的一看就是不同水平的人写的,几乎很完美,读起来很流畅,方便自己也方便别人.

  任务完后不要呆着,去要求经理给你更有挑战性的任务,只要你肯去尝试,他们就会对你另言相看,把三天的任务一天加班搞定,效率和忠诚都有了,路也比较好走了.

  4 题尾话

  如果你有一份思想,我有一份思想,拿出来交换,我们大家拥有就是2分份思想,可惜这种观念,并不能深入每一个团队的每一个人,少一点自私,未必不是好事.职场到处都存在被排挤的隐患,要为自己找片草地实在不容易.但有一点要相信,只要自己不放弃自己,这世上就没有绝望的路,你可以被打趴下,可以被身边的人暗算,可以被深爱的人流放,只要你用自己决心站起来,受过的伤痊愈后就能增强你的抵抗力,一路前进!