本为期三周的实训项目是在电子商务专业的一门专业必修课程《Java语言程序设计》课程上设置的,要求学生用Java技术在Windows平台下开发学生信息管理系统,是巩固学生所学理论知识、培养学生动手能力并使理论与实际相结合的重要实践环节。
本次课程实习旨在提升本专业学生对此课程中的理论知识的综合应用能力、提高学生的逻辑思维能力、软件开发能力。是学生通过此程序的开发能够切实提高其的程序设计水平,在实践中掌握面向对象程序设计的开发思想。
1.2开发环境
操作系统;WindowsXP
编程环境:MyEclipse6.0
主要技术:JavaSwing实现窗体界面
JDBC实现数据库操作
系统架构:三层架构(MVC)+DAO设计模式
数据库:MySQL5.0
2.课设内容
2.1系统功能需求
学生信息管理系统主要对在校学生的个人基本信息以及成绩信息进行管理,对教师用户提供查询信息、增添信息、删除信息等操作功能;对学生用户提供成绩查询功能。我们的目标就是为该系统提供前台用户界面设计以及后台连接数据库程序设计,系统程序界面采用JavaSwing组件实现,数据库操作采用JDBC实现。
2.2数据库需求
3.设计过程
3.1总体设计
在老师对该程序设计进行讲解分析后,我们便可对该程序系统功能有一定的认识。然后,需要进行上机操作。首先,要把自己的电脑上下载安装必要的软件,先搭建项目编程环境:MyEclipse6.0,再对数据库进行设计导入。之后,建四个包:Connection,Dao,Model,ui。其中,在每个包中还要再建必要的类。最后,便进行最困难的工作,就是将已有的程序代码敲出来,保证其完全无误,便可实现系统各项功能。
3.2详细设计
3.2.1.数据库设计导入
依据功能需求,学生信息管理系统主要有三个表:student表、teacher表和score表。所以要在数据库里建表这三个表,内容如下。
(1)student(学生信息表)有六个属性,分别为:id(主键,自动递增),num(学号),sname(姓名),sex(性别),age(年龄),dept(系别)。
3.2.2.学生信息管理系统主要功能模块
(1)系统运行主界面
首先,将包connection,Dao,Model里的程序代码敲出来,做好准备工作。然后,再在ui包里建类LoginUI,然后将程序完整无误地敲出来,主界面便可运行出来。学生信息管理系统要面对教师和学生用户。
(2)学生方面
此系统后,可以查询自己本学期的各科成绩信息。
(3)教师方面
继续在ui包里建类ScoreAddUI,ScoreDeleteUI,StudentAddUI,StudentDeleteUI,TeacherMainUI,然后还是将其各自的代码完整无误地敲入,便可实现各项功能。
4.调试过程
4.1系统测试
4.2出现问题
第一,在我敲完代码后,因为其中有不少细节性的小错误,系统会显示出很多的小差,根本不能运行。
第三,当检查完代码完全无误时,有个别功能还是无法实现。
4.3解决方法
第一,对于程序代码的敲打有错误这一问题,我唯一的办法就是对照代码一点一点的来查找,直到把错误找完为止。
第二,刚开始我导入的是自己的数据库,可能是文件数据受损,以至于能连接上,但是无法显示。后来我在192.168.0.1里又新建了个数据库,这个问题就解决了。
第三,程序代码虽看起来无误,但实质还是有问题。只要将个别字符前后加
上需要空格,问题就可解决。
5.设计体会与小结
通过这两个多星期的系统设计与开发,学生信息管理系统开发完成。在系统开发的过程中,以前学习感到很抽象的课程Java变得清晰起来。我感觉到这门理论课程的重要性。我还发现原本比较基础的东西记不牢,运用起来比较麻烦,而且书上讲的东西还较少,所以起初做课设的时候可以说是一头雾水,必须通过其他途径去巩固去加强。需要学习的东西还有很多很多。
但我收获的也不少,我更了解了整个学生信息管理系统的开发流程。从数据库的建立,到开发环境的建立我都很熟悉了。对于Java的一些基础知识我也已经能够了解并掌握,尤其是程序代码,对于我来说已经不是一大串乱码了。总之,我真的在实践中学到的不仅是课本知识的巩固和提高,而且还在实践中学习到解决不少程序设计的细节问题的方法,感谢老师不厌其烦的指导,对此次课设的实习,我感到受益匪浅。
实习类型教学实习实习单位欧美学院指导教师丁亚周所在院(系)信息技术系班级1202学生姓名于红学号
二、实习的内容
(1)本组课题及本人任务;
我们小组设计的是图书管理系统,包括图书信息管理,读者信息管理,管理员信息管理,借阅信息管理,还书信息管理,逾期罚款或损坏赔偿信息管理和数据库。我负责的是图书信息管理,包括对图书信息的查阅,删除,修改和增加。可以满足图书馆的一些日常活动
(2)程序功能简介;
这次实践课我们小组设计的图书管理系统包括了图书信息管理,读者信息管理,管理员信息管理,借阅信息管理,还书信息管理,逾期罚款或损坏赔偿信息管理。主要包含对信息的查找,增加,删除和修改。如下图所示:
(3)主体内容(简要说明总体情况,详细介绍本人任务部分):
1.设计分析;
图书管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立前端应用程序的开发两个方面.对于前者要求建立起数据一致性和完整性强、数据安全性好的库.而对于后者则要求应用程序功能完备,易使用等特点.本组结合简单图书馆的要求,设计了数据库结构和应用程序.系统运行结果证明,本文所设计的图书管理系统可以满足图书馆工作人员的需要
2.程序结构(画流程图)
3.各模块的功能及程序说明;
我所负责的模块是图书信息管理,主要包含四个方面,对图书信息的查找,增加,修改,删除。查找:可以满足图书管理者查询数目的要求,在这个模块,可已使用多种方式查找,包括无条件查询和条件查询,无条件查询是将所有的书一起都找出来,条件查询又包括图书编号查询和模糊条件,这个可以满足图书管理者对具体的一本书查询的要求;增加:按照传统的增加方式进行增加,在新买书时,可以方便图书管理者对数据库进行增加;修改:可以修改图书的名称,适合在录入信息错误时使用;删除:当撤销破旧书目时,可以使用,我所做的所有操作都会对数据库产生影响。
4.源程序;
case1:
System.out.println("图书信息:");System.out.println("1.查询图书信息:");System.out.println("2.插入图书信息:");System.out.println("3.删除图书信息:");
inta1=scanner.nextInt;
switch(a1){
System.out.println("1.查询图书信息:");
StringSql="SELECT*FROMsystembook";rs=stmt.executeQuery(Sql);
while(rs.next){
StringbookID=rs.getString(1);StringbookNo=rs.getString(2);StringbookName=rs.getString(3);StringbookWriter=rs.getString(4);StringbookPub=rs.getString(5);
System.out.println(bookID+","+bookNo+","+bookName+","+bookWriter+","+bookPub);}
break;
case2:
intzz=0;while(zz!=1){
System.out.println("2.插入图书信息:");
System.out.println("请按顺序插入图书条码号,图书索书号,图书名字,图书作者,
Stringstr=scanner.next;Stringsplitst=str.split(",");Stringa11=splitst[0];Stringa12=splitst[1];Stringa13=splitst[2];Stringa14=splitst[3];Stringa15=splitst[4];
Sql="INSERT
INTO
图书出版社");
String
systembook(bookID,bookNo,bookName,bookWriter,bookPub)VALUES('"+a11+"','"+a12+"','"+a13+"','"+a14+"','"+a15+"')";
inti=stm.executeUpdate(Sql);//返回记录影响的条数
System.out.println("插入成功!");}
System.out.println("是否继续插入?yes/nono返回主菜单");Stringk=scanner.next;
if(i!=0){
if(k.startsWith("yes"))
System.out.println;if(k.startsWith("no")){
zz=1;
System.out.println;
};
};}
break;case3:intll=0;while(ll!=1){
System.out.println("3.删除图书信息:");System.out.println("请输入要删除的图书编号:");StringStr=scanner.next;StringSplitst=Str.split(",");Stringb3=Splitst[0];
Stringsql1="SELECT*FROMsystembookwherebookID='"+b3+"'";rs1=stm.executeQuery(sql1);intkkk=0;while(rs1.next){
Stringa22=rs1.getString(1);Stringb22=rs1.getString(2);Stringc22=rs1.getString(3);Stringd22=rs1.getString(4);Stringe22=rs1.getString(5);
System.out.println(a22+","+b22+","+c22+","+d22+","+e22);
kkk++;
}if(kkk==0)
{else
{
{StringdeleSql="DELETEFROMsystembookWHEREbookID='"+b3+"'";
System.out.println("没有这本书,请重新输入");}
一、实验目的
1、加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及Java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。
2、使用本学期学习的JavaSE技术(也可以使用课堂教学中没有学习过的Java技术,但是应当以JavaSE技术为主)完成多功能日历GUI程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。
3、在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。
二、实验要求
1、问题描述准确、规范。
2、程序结构合理,调试数据准确、有代表性、。
3、界面布局整齐,人机交互方便。
4、输出结果正确。
5、正确撰写实验报告。
三、实验内容
编写一个GUI程序实现日历的功能。一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。
四、实验步骤
1、在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。
2、在第一次上机实验时讨论分工,分工明确之后,分头合作进行。
3、各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。
4、根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。
5、详细的上机实验步骤见任务分工及程序设计进度表。
五、实验结果
经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求――一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能齐全、符合操作习惯。
下面是程序运行效果截图:
日历主界面(可以实现每个月的日历,可以按年或按月前后翻动,能够显示当前日期,并能够选择背景图片):
备忘录主界面(实现备忘录的添加,及当前日历的显示):
备忘录主界面(实现备忘录的显示,及对当前备忘录的修改删除等):
六、实验总结
一、实习目的
二、实习主要流程
1、公司管理规则,程序员素质,程序员编码规范;
2、需求开发与管理;
3、面向对象分析与设计,面向对象编程的特性;
4、javaSE、javaWeb、页面设计-JSP页面;
5、数据库设计、SQL应用;
6、软件需求分析与设计;
7、项目实战
三、实习内容
Oracle数据库
数据库是数据的结构化集合。计算机是处理大量数据的理想工具,因此,数据库管理系统在计算方面扮演着关键的中心角色,或是作为独立的实用工具,或是作为其他应用程序的组成部分。
Oracle服务器还有一套实用的特性集合,这些特性是通过与我们用户的密切合作而开发的。在我们的基准测试主页上,给出了Oracle服务器和其他数据库管理器的比较结果。
javaweb实习报告javaweb实习报告
Oracle服务器最初是为处理大型数据库而开发的,与已有的解决方案相比,它的速度更快,多年以来,它已成功用于众多要求很高的生产环境。尽管Oracle始终在不断发展,但目前Oracle服务器已能提供丰富和有用的功能。它具有良好的连通性、速度和安全性,这使的Oracle十分适合于访问Internet上的数据库。
java与SQL的应用
Java语言是编写数据库应用程序的杰出语言之一,它提供了方便访问数据的技术。利用Java语言中的JDBC技术,用户能方便地开发出基于Web网页的数据库访问程序,从而扩充网络应用功能。JDBC(JavaDatabaseConnectivity,Java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一的访问接口。JDBC由一组用Java语言编写的类与接口组成,通过调用这些类和接口所提供的方法,用户能够以一致的方式连接多种不同的数据库系统(如Access、SQLServer20xx、Oracle、Sybase等),进而可使用标准的SQL语言来存取数据库中的数据,而不必再为每一种数据库系统编写不同的Java程序代码。
控制技术-Servlet技术
1)什么是Servlet
一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。JavaServlet技术为这些应用程序定义了一个特定于HTTP的servlet类。
2)Servlet的生命周期
一个servlet的生命周期由部署servlet的容器来控制。当一个请求映射到一个servlet时,该容器执行下列步骤。1)MVC模式
为了把表现层presentation从请求处理requestprocessing和数据存储datastorage中分离开来,SUN公司推荐在JSP文件中使用一种“模型-视图-控制器”Model-view-controller模式。规范的SERVLET或者分离的JSP文件用于处理请求。当请求处理完后,控制权交给一个只作为创建输出作用的JSP页。有几种平台都基于服务于网络层的模-视图-控件模式(比如Struts和Springframework)。
2)JSP技术的强势
(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。
(3)强大的可伸缩性。从只有一个小的Ja#from文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
3)JSP技术的弱势
(1)与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2)Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。
当我们正式准备学习实训java编程技术时,让我倍感兴奋,毕竟java是自己以后想主攻技术,所以自然也就非常的亢奋。刚开始实训的第一天,同学们就推荐我为组长,我感觉肩上责任之重大,那一刻起,我就决心带领我们小组,奋战我们的实训路。当然开始学习后也并非是想象中那样顺利,开始的学习让我异常感到学习任务的艰巨,因为学习中我们遇到了很多以前未曾遇到的难点,有时难免冥思苦想也无济于事,通过我们小组的积极努力协作,同时请教老师和其他同学,我们顺利的化解了一道道的障碍。
在这里,我非常感谢实训的指导老师,在老师的帮助和指导下,我克服了Java学习上的一道道难关,课上认真听讲,摘好必要的笔记,并通过自己课后的不断消化学习,现在自己已经基本掌握了java的基础知识,并且能独立的开发出系统。
实习是为将来打基础的重要阶段,珍惜自己每一个工作的机会,不论什么人,什么学历,从事什么工作,好好的表现、展示自己的能力,不要错过好的机遇。没有一件事情是轻轻松松的,但每一件事都是让人成长的,经历一段过程,喜悦或是艰辛,尽管经历的方式不尽相同,但它的结果是相同的,我们都会因涉事而成长。
通过实习,我自身发生了重大的转变。首先,进入公司,你就是一名职业人,不再是一名学生,你要具备一名职业人应具备的素养,不迟到不早退是必然的,而且还要时刻严格要求自己,公司的规定要严格遵守。然后,在技术上也有了很大的提高,学习了很多公司自己的框架和工具,这都是一些前辈的宝贵经验。而且所作的软件应用性更强。所以,我要坚定自己的信念,在公司好好实习,争取提早转正,我相信我会在JAVA开发这条路上走的更长更远。
1)实习题目
学生信息管理系统的设计与开发
2)实习目的
《Java程序设计》课程是电子商务专业的一门专业必修课程,特针对此课程进行为期三周的实践教学,旨在提升本专业学生对此课程中的理论知识的综合应用能力、提高学生的逻辑思维能力、软件开发能力。
本次课程实习要求学生用Java技术在Windows平台下开发学生信息管理系统。通过此程序的开发能够切实提高学生的程序设计水平,在实践中掌握面向对象程序设计的开发思想。
3)开发环境
二:课设内容;
1)系统功能需求
2)数据库需求
依据功能需求,学生信息管理系统主要有三个表:student表、teacher表和score表。
(1)student(学生信息表)
此表有六个属性,分别为:id(主键,自动递增),num(学号),sname(姓名),sex(性别),age(年龄),dept(系别)。
此表有六个属性列:分别为:id(主键,自动递增),num(学号),sname(学生姓名),course(课程名称),score(考试成绩),credit(学分)。
三:设计过程(包括总体设计和详细设计)
1)项目总体设计
需要建立一个三层模块:视图层(界面,提供用户输入)控制层(接受用户输入处理)持久层(连接数据库)。
2)项目详细设计
1、需要有开发环境,安装编程环境:MyEclipse6.0、数据库:MySQL5.0、安装NavicatforMysql程序;
2、仔细阅读《Java实习指导书》,详细了解对学生信息管理系统设计与开发的总体设计;
5、ui包中还有对学生信息进行增加学生、删除学生、查看学生信息、浏览所有学生信息、增加学生成绩信息、删除学生成绩信息、查看学生成绩信息的7个界面,每个功能实现完成后会显示操作成功,并有退出功能;
6、然后在Java编程环境MyEclipse6.0编写代码;
7、首现建立以dumeilingglxt命名的项目工程,然后建立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、在NavicatforMysql打开数据库,然后建表:student表、teacher表和score表,进入主界面,实现系统登陆功能;
10、连接公共数据库:NavicatforMysql
代码为:("jdbc:mysql://192.168.0.1:3306/dumeiling","root","p");
11:然后开始运行,发现错误并解决错误;
12:在所有代码都正确的情况下,所有界面将会出现。
四:调试过程(包括系统测试、出现的问题、解决的方法等)
出现最多的错误就是:
1)代码编写错误,解决方法就是照着代码继续核对,直到可以运行
五、小结(在整个课程设计过程中的总结和体会)
在整个学生信息管理系统的设计与开发过程中,感触最深的就是两周的敲代码、核对代码。可以说是一次痛苦的体验,但是在实习的第三周看到自己的成果展示,不得不佩服自己的毅力。
还有体会最深的一点是:只要你用心去学习,你就回学到一些东西,也许不是那么明显,但是只要付出还是会有收获的。在第三周周二是交作业时,有的同学自己昨天完全正确的程序,今天完全不管用了,我看到了她的急躁,一直埋怨、似乎有点想哭,其实我想说:冷静。然后看看是什么原因,假如是电脑的问题李珂把代码拷走,重新建立工程,说实话,我不知道重新建了多少次,遇事一定要让自己冷静,不要急,事情总会有解决的方法。
【java实习报告2】
1传统的错误观念
以前以为教学视频和代码看多,自己就懂的多,实际做起来,却不知从何下手,问题在那如何定位如何解决通通跟一样能力有关,debug追踪能力,也称调试.在项目组工作不愁源码资源,但问题是蛋糕摆在面前,你如何去消化
有位同事告诉我:代码看几遍都没用,要去抄,例如一个查询模块,在此基础上去做具体记录的历史记录查询模块,你可能会觉得很简单,但实际情况却往往报一堆异常,配置问题涉及到方方面面,以及数据库字段,传值问题等等,一大堆对于新人来说很郁闷的问题.但不用怕,只要学会调试,一个个问题去追踪,一个个去解决,自然而然,那段“源码”才真正属于你.
2如何调试追踪
页面错误的调试,基本方法是用右键点击实际网页查看源代码,copy到editplus,就能看到具体错误发生在那几行.通常有几种常见的错误,.例如.缺少对象这种很多时候是有些被你调用的字段有可能为空的情况出现的,可以加if(=null)语句加保护.追踪的方法基本就是用alert语句,放在有可能出错的地方.毕业实习总结
3一些习惯
遇到问题先自己思考,无从下手再找高手帮忙看看,注意他帮你看的思路,别在一旁闲着,看多了自己也会了,不然你一辈子都停留在那种水平,从人身上学到的东西远远比书多的多.
把代码写的漂亮,注释,空行,规范一样不能少,可读性是放在第一位.曾经看过一个高手写的代码,真的一看就是不同水平的人写的,几乎很完美,读起来很流畅,方便自己也方便别人.
任务完后不要呆着,去要求经理给你更有挑战性的任务,只要你肯去尝试,他们就会对你另言相看,把三天的任务一天加班搞定,效率和忠诚都有了,路也比较好走了.
4题尾话
如果你有一份思想,我有一份思想,拿出来交换,我们大家拥有就是2分份思想,可惜这种观念,并不能深入每一个团队的每一个人,少一点自私,未必不是好事.职场到处都存在被排挤的隐患,要为自己找片草地实在不容易.但有一点要相信,只要自己不放弃自己,这世上就没有绝望的路,你可以被打趴下,可以被身边的人暗算,可以被深爱的人流放,只要你用自己决心站起来,受过的伤痊愈后就能增强你的抵抗力,一路前进!
实习,是一个人走上岗位的前一站,海南爱科制药有限公司是总部在海南的一家以从事药品的生产与销售为主的贸易公司。这次我去实习的单位是他在北京的分公司。由于该公司刚刚在北京开展业务,所以北京分公司的机构设置还是相当简单的。...
一、实习目的20xx年8月28日到20xx年9月3日,我们车辆工程专业在五位老师的带领下前往河北定州长安汽车厂进行了为期6天的实习。生产实习是学习与生产实际相结合的重要实践性环节。...
一、实习目的生产实习是本专业学生的一门主要实践性课程。是学生将理论知识同生产实践相结合的有效途径,是增强学生的群众性观点、劳动观点、工程观点和建设有中国特色社会主义事业的责任心和使命感的过程。...
实习期跟快就结束了,原本迷茫与无知,现如今满载而归。因而十分感谢一附院给我们提供了这样好的实习环境和各种优越条件,感谢所有的带教老师对我们的辛勤教导,让我们在踏上岗位之前拥有了如此良好的实践机会。...
在为期三个多月的实习中,我从室内讲解培训开始,到踩点、跟团,再到独立带团。在这期间,导游对我的生活和思想产生了很大的影响,我对这个行业也有了许多新的认识。...