某工程学院生产实习报告DOC 30页Word文档下载推荐.docx
《某工程学院生产实习报告DOC 30页Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《某工程学院生产实习报告DOC 30页Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。
学生姓名:
xx学号:
0905090112班级:
计科01班
类别
总分值
各项分值
评分标准
实际得分
总得分
备注
实习表现
30
10
按时参加实习活动,无旷课、迟到、早退等情况。
遵守实习单位纪律和安排,无违反实习单位规定的情况;
听从指导教师的安排,参加各项活动,无不服从教师管理的现象。
按期圆满完成规定的任务,工作量饱满;
能运用所学知识和技能去发现与解决实际问题,工作中有创新意识。
实习报告
40
15
实习报告文字通顺,内容翔实,论述充分、完整,结构严谨合理。
能运用所学专业知识对问题加以分析。
正确处理相关的数据,分析处理科学;
具有收集、加工各种信息及获得新知识的能力。
5
实习报告字数符合相关要求,实习报告工整规范,整齐划一。
实习日记(笔记)次数及内容符合要求。
实习答辩
在规定时间内能就实习的内容进行全面完整的阐述,言简意明,重点突出,条理清晰。
在规定时间内能准确、完整、流利地回答教师所提出的问题。
总评成绩:
分
补充说明:
指导教师:
(签字)
日期:
年月日
生产实习答辩记录表
01
答辩地点:
计算机科学与工程学院205机房
答辩内容记录:
答辩成绩
答辩小组成员(签字):
年月日
指导教师评语
指导教师:
一、实习目的与任务
根据教学计划的安排,本学期开始三周进行实习安排,完成《鲜花购物网站》的开发与制作。
通过实习使学生掌握java编程的核心思想和面向对象的设计方法,JDK基本类的学习与运用,运用html做网页的设计,java窗口界面设计,访问数据库的知识与能力,通过java的学习实施跨平台运行。
进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。
学习SQL的基础知识及正确的运用方法,和有用的相关技术,提高自己的工作效率。
通过实习,培养我们综合运用已学知识Java语言的面向对象编程能力;
培养我们动手能力;
培养我们良好编程规范、编程方法;
以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;
增强自己的团队协作意识,了解软件开发的思考角度和主要流程。
为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。
二、实习地点
武汉工程大学计算机大楼205机房
三、实习内容和要求
实习要求:
学习java基本知识,能用java以及其他知识完成在线鲜花购物网站。
其中网站的制作包括四个模块:
登录模块、主页面显示模块、购物车模块、订单模块。
要求主页面能显示鲜花图片,并有一定的动态效果;
登录时有用户信息识别和验证功能,还有注册功能,与数据库相关联;
购物车上的功能要实现,包括取消、提交、修改、清空等;
订单提交后,确认订单是能在数据库记录下来。
技术知识要求:
①编程语言-java;
②MySql数据库和SQL数据库的使用;
③Java中的常用设计模式;
④控制技术-Servlet技术;
⑤html超文本传输协议;
⑥JDBC(JavaDataBaseConnectivity,java数据库连接);
⑦页面设计-JSP页面。
实习内容:
1)理论知识
(1)编程语言-java
Java是由Sun微系统公司所发展出来的程序语言,它本身是一种(Object-Oriented)的程序语言。
Java也号称是能跨平台使用的语言,这主要是因为Java本身被编译之后,并不是直接产生可执行的码,而是产生一种中间码叫作ByteCode,这种码必需在透过Java的直译器来解读它,才能够真正的被执行,所以只要平台上装有这种Java的直译器,就能解读ByteCode也就能执行Java编译过的程序,故与Java程序是在那种平台上被编译的,就完全没有干系了。
Java写出来的程序可分为两类,分别是JavaApplet与一般的Application,而Application这一类就与一般的程序如C++的作用是比较类似的,是一个独立可执行的应用程序,像HotJava是一个浏览器,且就是使用Java程序所发展出来的。
最常见的Java程序包括应用程序和applets。
应用程序是单独的程序,诸如HotJava浏览器软件就是用Java语言编写的。
Applets类似于应用程序,但是它们不能单独运行,Applets可以在支持Java的浏览器中运行。
Applet主要是内置于HTML网页中,在浏览时发挥作用。
Java的目标是为了满足在一个充满各式各样不同种机器,不同操作系统平台的网络环境中开发软件。
用Java程序语言,利可以在网页中加入各式各样的动态效果。
可以放上一段动画,加入声音,也可以建立交互式网页等。
(2)Mysql数据库
MySQ是最流行的开放源码SQL数据库管理系统,数据库是数据的结构化集合。
计算机是处理大量数据的理想工具,因此,数据库管理系统在计算方面扮演着关键的中心角色,或是作为独立的实用工具,或是作为其他应用程序的组成部分。
MySQ服务器还有一套实用的特性集合,这些特性是通过与我们用户的密切合作而开发的。
在我们的基准测试主页上,给出MySQL服务器和其他数据库管理器的比较结果。
MySQL服务器最初是为处理大型数据库而开发的,与已有的解决方案相比,它的速度更快,多年以来,它已成功用于众多要求很高的生产环境。
尽管MySQL始终在不断发展,但目前MySQL服务器已能提供丰富和有用的功能。
它具有良好的连通性、速度和安全性,这使的MySQL十分适合于访问Internet上的数据库。
MySQL稳定性每次发布的MySQ服务器均是可用的。
仅当用户尝试源自“灰色区域”的代码时才会出现问题。
当然,新用户不了解“灰色区域”是什么。
因此,在本实习中,我们介绍了目前已知的这类区域。
本节所作的介绍主要针对MySQL服务器5.0版和更高版本。
在最新的版本中,更正了所有已知和通报的缺陷,但“缺陷”一节所列的除外,这类缺陷与设计有关。
(3)java与SQL的应用
Java语言是编写数据库应用程序的杰出语言之一,它提供了方便访问数据的技术。
利用Java语言中的JDBC技术,用户能方便地开发出基于Web网页的数据库访问程序,从而扩充网络应用功能。
JDBC(JavaDatabaseConnectivity,Java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一的访问接口。
JDBC由一组用Java语言编写的类与接口组成,通过调用这些类和接口所提供的方法,用户能够以一致的方式连接多种不同的数据库系统(如Access、SQLServer2000、Oracle、Sybase等),进而可使用标准的SQ语言来存取数据库中的数据,而不必再为每一种数据库系统编写不同的Java程序代码。
SQLServer2000是微软公司新一代的数据库产品,它是在SQLServer7.0建立的坚固基础上产生的,并对SQLServer7.0做了大量扩展。
SQLServer2000通过高端硬件平台以及最新网络和存储技术的支持,可为最大的Web站点和企业级应用提供可扩展性和高可靠性。
(4)控制技术-Servlet技术
什么是Servlet?
一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。
虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。
JavaServlet技术为这些应用程序定义了一个特定于HTTP的servlet类。
javax.servlet和javax.servlet.http包为编写servlet提供了接口和类。
所有的servlet都必须实现Servlet接口,该接口定义了生命周期方法。
一个servlet的生命周期由部署servlet的容器来控制。
(5)超文本传输协议-Html
超文本传输协议是一种网络的通用语言,一种简单、通用的全置标记语言。
它允许网页制作人建立文本与图片相结合的复杂页面,这些页面可以被网上任何其他人浏览到,无论使用的是什么类型的电脑或浏览器。
HTML文档制作不是很复杂,且功能强大,支持不同数据格式的文件镶入,这也是WWW盛行的原因之一,其主要特点如下:
①简易性,灵活方便。
②可扩展性,HTML语言的广泛应用带来了加强功能,增加标识符等要求,HTML采取子类元素的方式,为系统扩展带来保证。
(6)JDBC
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC扩展了Java的功能。
简单地说,JDBC可做三件事:
与数据库建立连接、发送操作数据库的语句并处理结果。
JDBCAPI既支持数据库访问的两层模型(C/S),同时也支持三层模型(B/S)。
在两层模型中,Javaapplet或应用程序将直接与数据库进行对话。
这将需要一个JDBC驱动程序来与所访问的特定数据库管理系统进行通讯。
用户的SQL语句被送往数据库中,而其结果将被送回给用户。
数据库可以位于另一台计算机上,用户通过网络连接到上面。
这就叫做客户机/服务器配置,其中用户的计算机为客户机,提供数据库的计算机为服务器。
①建立JDBC连接:
Connection对象代表与数据库的连接。
②打开连接与数据库建立连接的标准方法DriverManager.getConnection方法。
③发送SQL语句连接一旦建立,就可用来向它所涉及的数据库传送SQL语句。
JDBC对可被发送的SQL语句类型不加任何限制。
这就提供了很大的灵活性,即允许使用特定的数据库语句或甚至于非SQL语句。
然而,它要求用户自己负责确保所涉及的数据库可以处理所发送的SQL语句,否则将自食其果。
例如,如果某个应用程序试图向不支持储存程序的DBMS发送储存程序调用,就会失败并将抛出异常。
JDBC提供的类,用于向数据库发送SQL语句。
Connection接口中的三个方法可用于创建这些类的实例。
下面列出这些类及其创建方法:
①Statement:
由方法createStatement所创建。
Statement对象用于发送简单的SQL语句。
②PreparedStatement:
由方法prepareStatement所创建。
(7)页面设计-JSP页面
MVC模式为了把表现层presentation从请求处理requestprocessing和数据存储datastorage中分离开来,SUN公司推荐在JSP文件中使用“模型-视图-控制器”Model-view-controller模式。
规范的SERVLET或者分离的JSP文件用于处理请求。
当请求处理完后,控制权交给一个只作为创建输出作用的JSP页。
有几种平台都基于服务于网络层的模-视图-控件模式(比如Struts和Springframework)。
2)项目设计过程
(1)实现注册登录模块
在这个阶段我们要实现的是与后台数据库交换数据,建立JDBC连接:
打开连接与数据库建立连接的标准方法DriverManager.getConnection方法。
发送SQL语句连接一旦建立,就可用来向它所涉及的数据库传送SQL语句。
建立好连接之后就写Userdao和UserDaoImpl两个类。
并处理登录请求,验证登录的用户。
(2)主页面的显示模块
在这个阶段我们要解决的是数据库与页面访问的问题,首先ListProductServlet的这个类很重要,Servlet生成响应内容并将其传给Server,响应内容动态生成,通常取决于客户端的请求。
其中这些类都必须继承Httpservlet类,通过请求访问实现主页面的显示。
其中下半部分的鲜花显示信息是要先将鲜花进行分类查询等才能进行访问。
(3)购物车模块
在这个模块中要实现的内容很多有:
更改操作、删除操作、清空操作、继续购买操作等。
有的操作要通过二次请求,重定向才能实现,提交订单后会出现页面的跳转。
(4)订单的形成
这个模块中先要通过购物车的提交订单页面跳转到order.jsp页面,页面会重新出现用户的基本信息,就是注册是的信息,但是该信息也可以实施更改操作,但是用户名不能更改,在这进行完之后就必须实现确认订单。
3)结果及分析
在浏览器中地址栏中输入http:
//localhost:
8080/myflower访问达内鲜花专卖网,回车后跳转到http:
8080/myflower/index.jsp页面。
网址也可以是http:
//本机IP地址:
8080/myflower或http:
//127.0.0.1:
8080/myflower,跳转后,得到如下图所示网页界面。
图1鲜花网主页
以上是没有经过用户注册和登录的网页,要想在该网站购买鲜花就必须要先注册登录到登录才能购买鲜花,页面地址是http:
8080/myflower/reg.jsp其中注册设计如下图:
图2注册页面
在登录界面输入已经注册的用户及密码,如果不输入就不会跳转到主页面,并提示错误信息。
图3登录页面
登录成功后跳转到主页面,鲜花网站index.jsp。
图4会员登录主页面
当登录的用户点几购买主页面上的鲜花后会跳转到购买页面。
图5购买鲜花页面
用户确认购买后悔跳转到购物车页面。
在购物车页面中,可以点击“取消”来取消购物车中的物品,修改物品的数量之后,可以点击“保存修改”保存新的数据信息;
下面的“提交订单”、“继续购买”、“清空购物车”都可以实现。
图6购物车页面
在点击提交订单后会进行页面跳转,到了订单页面,订单页面也可以进行用户信息的更改操作。
图7生成订单信息页面
四、实习总结及分析
本次实验涉及计算机知识比较多,有java、jsp、Servlet、html等。
通过本次实习对java有了更深的理解与运用,java适用于企业级开发,是一门实用性很强的学科,本次实验中运用java和相应的知识做出了一个电子商务网站,过程很艰辛,遇到过很多难题,也出现过很多错误,但是经过同学和老师的指导一个问题一个问题的解决,一个错误一个错误的改正,最终还是实现了鲜花购物网站的各项功能。
其中也遇到不少问题,其中就有在登录模块时候就遇到用户名和密码不对情况。
最后我们发现这是因为没有和后台数据库连接起来,运用到Java和mySQL的知识以及修改代码,并且在“login.jsp”中修改相关参数。
购物网访问数据库的标准dao->
MySQL作用:
方便以后代码的扩展与维护com.tarena.flower.dao:
全部是接口,封装操作数据库的标准com.tarena.flower.dao.impl:
dao的实现;
com.tarena.flower.dao.impl:
dao的实现com.tarena.flower.dao.impl(db2):
dao必须依赖于数据库连接Connection对象,工具类ConnectionUtil。
有时候在主页面显示的时候我们开始都显示不了鲜花的图片,最后我们通过将鲜花分类,筛选。
其中一些功能要用到重定向,和页面的跳转,这两种方式有很大的不同,出现错误也不同,转发:
request.getRequestDispatcher("
login.jsp"
).forward(request,response);
重定向:
response.sendRedirect("
index.jsp"
);
区别:
转发:
一次请求,地址栏不改变,一次请求干多件事情,重定向:
二次请求,地址栏改变,状态码302。
五、实习体会
1)本次对电子商务网站的实习,我初步我学习J2EE,学习使用JSP,对TOMCAT服务器的基本运行原理有了理解,mySQL和Myeclipse这些工具能熟练使用,对并对JDBC有了初步的认识,学习了如何用Java连接数据库,能自己手动写servlet开发一些小网页,对于一些简单的小问题,能够自己动手排除。
制作一个鲜花网站是本次的任务,这涉及到数据库知识和相应的网页设计知识,还要运用JSP技术来实现网页之间的跳转。
最终我成功的完成了项目,将此次实习圆满的画下了句号,提高了实践与熟练运用知识的能力。
2)课本上学的理论知识是远远不够应付这个信息爆炸的时代的,知识更新太快,靠原有的一点知识肯定是不行的。
我们必须在实际项目中勤于动手慢慢琢磨,不断学习不断积累。
遇到不懂的地方,自己先想方设法解决,实在不行可以虚心请教他人,而没有自学能力的人迟早要被企业和社会所淘汰。
3)通过这次为时十五天的实践,检验了自己的各方面的情况,培养了自己发现问题、分析问题、解决问题的能力和与人交往的能力;
同时也发现一些了自己的不足,其中就有如何在基本框架下讲各个程序包联系起来,纠正错误的能力,使我在以后的学习中不断的弥补和提高。
虽然在实习结束后都感到大学前三年浪费了太多的宝贵时间,最后一年一定要抓紧,否则真得无法在社会上立足。
4)实习为我以后的就业作了一个铺垫,实习是为将来打基础的重要阶段,珍惜自己每一个工作的机会,不论什么人,什么学历,从事什么工作,好好的表现、展示自己的能力,不要错过好的机遇。
没有一件事情是轻轻松松的,但每一件事都是让人成长的,经历一段过程,喜悦或是艰辛,尽管经历的方式不尽相同,但它的结果是相同的,我们都会因涉事而成长。
通过实习,我自身发生了重大的转变。
5)通过本次实习是我更加坚信有付出就有回报,要耐得住性子,不急不躁,认真仔细的态度。
不拘泥,不怕出错,有了错误及时解决,有了不懂的及时发问,知道弄懂为止。
严谨的书写程序,全身心的投入其中,思维要开阔。
2012年9月3日计算机大楼205机房星期一晴
今天是实习的第一天,开学初,这次实习很正规,有真实的项目工程,我们请来的老师都是有项目经验的老师。
这次实习任务是学习Java语言,给我们讲课的李顺老师就挑选了比较容易的一些事例给我们讲,今天是实习的第一天,老师给我们讲了面向对象的思想。
模拟面向对象的两个重要方面是抽象事物数据和提取业务逻辑。
抽象数据就是找到事物的属性,就是在事例里面找到相应的名词;
提取逻辑就是找到方法,就是找到关键的动词,接着老师给我们讲了一个猫和老鼠的例子,让我们找到关键的词,经过老师这样具体的讲解,我很快就找到了相应的词,然后动词写成函数,名词写成类,描述属性的名词就定义为属性。
然后在我们写出了框架后,老师帮我们补充了类里面的函数的实现,在myeclipse里面运行后才知道我们还要在工程里面先建包,再才能建造类,这与C++还是有很大的不同。
2012年9月4日计算机大楼205机房星期二晴
今天老师讲了一些java中数据类型的知识。
其数据类型包括byte、short、int、long、float、double、char等基本类型。
char是无符号的16位整数,字符的值必须要'
'
单引号赋值。
Java字符表示使用Unicode编码,采取的是'
\u0000'
十六进制编码格式inta=0;
intb='
0'
;
inta=0;
charb='
inta=123;
\u007B'
inta=0x123;
\u0123'
inta=3+'
5'
8'
inta='
3'
+'
还有二进制、八进制、十六进制的相互转换问题。
负数的二进制:
符号位为1,值等于二进制各位取反末位加1。
面向对象的入门知识,首先老师引入猫合老鼠的故事,何为猫,何为老鼠总结为在java里面一切皆为对象,我们将对象的概念也领悟很深。
1)属性和方法,构造方法。
属性:
A.声明初始化一起;
Stringname="
Tom"
数据类型变量名=初始值B.声明和初始化分开;
Stringname;
name="
方法:
修饰符、返回值、方法名(参数列表){方法体}A.特殊方法:
main()方法,构造方法
(2)初始化。
2012年9月5日计算机大楼205机房星期三晴
李老师用很生动的例子给我们讲解了什么是构造方法,为什么要用到构造方法,以及构造方法有哪些种类。
构造方法是指与类型相同没有返回类型的一类方法。
类似:
classtype(){}其中构造方法分为:
默认构造方法,复制构造方法,赋值构造方法。
其中着重讲到了默认构造方法:
.默认的构造方法(无参构造方法)TheconstructorCat()isundefined一个类会自动的提供一个默认的构造方法(隐式),如果我们显示的提供了一个构造方法,那么系统不会在提供无参的构造方法。
.构造方法的特点:
a.与类名相同b.没有返回值c.类提供一个(隐式)无参构造方法:
构造方法的作用:
初始化对象;
构造