JAVA生产实习报告.docx
《JAVA生产实习报告.docx》由会员分享,可在线阅读,更多相关《JAVA生产实习报告.docx(13页珍藏版)》请在冰豆网上搜索。
JAVA生产实习报告
实习报告
一、实习目的
进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。
学习SQL的基础知识及正确的运用方法,和有用的相关技术,提高自己的工作效率。
通过实习,巩固大学所学专业的基本知识,提高分析、判断和处理实际问题的能力,锻炼自己的实际动手能力,增强自己的团队协作意识,了解软件开发的思考角度和主要流程。
为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。
二、实习单位
务外包产业基础,创建的新型IT人才培养基地。
学院旨在促进西安软件服务外包产业发展,
养各类学员近2000人,近500人已就业于西安市各大软件企业,目前在培人员1200余人。
用、KPO等八大专业人才培养方向;与Oracle、Microsoft、HITACHI、SAP等国际知名IT
人才,推动产业结构升级;从企业实际项目转化的项目案例库涵盖有制造、流通、医疗、金融、政府、零售等行业的IT项目和最新的IT技术;自主开发出40个针对应届毕业生毕业设计的项目及方案,12个关于软件工程等相关专业的实习方案,50个应届毕业生实习项目案例。
生产实习(专业实习)报告
企业合作,建设对日软件开发实训平台、对欧美软件开发实训平台、嵌入式开发实训平台、数字艺术实训平台;与阿里巴巴、英国伦敦工商会考试局合作,培养KPO(知识流程外包)
学院立足西安、面向全国,培养“实用化、国际化、个性化”应用型技术人才,以建设有特色、高水平IT应用型职业培训机构为发展目标。
用3-5年左右时间建成西北地区较高水平的知名IT培训机构。
用5-10年左右时间,办成国内高水平的一流IT应用型人才培养基地。
三、岗位介绍
普通学员,学习基于Java平台的Web应用和设计知识,编写办公资源管理系统。
主要学习MySQL数据库、Servlet技术、JSP页面设计和基于JSP+Servlet+JavaBean的MVC设计模式。
四、实习内容
1.编程语言-java语言
Java是由Sun微系统公司所发展出来的程序语言,它本身是一种对象导向(Object-Oriented)的程序语言。
Java的目标是为了满足在一个充满各式各样不同种机器,不同操作系统平台的网络环境中开发软件。
利用Java程序语言,可以在网页中加入各式各样的动态效果。
可以放上一段动画,加入声音,也可以建立交互式网页等。
1
生产实习(专业实习)报告
2.数据库-MySql数据库
2.1MySQL的历史
我们最初的出发点是,使用mSQL来连接我们的表,这类表采用了我们的快速低层面(ISAM)子程序。
然而,经过一些测试后,我们得出结论,mSQL的速度或灵活性不足以满足我们的要求。
其结果是,为我们的数据库提供了新的SQL接口,但API接口与mSQL的几乎一样。
设计该API的目的在于,允许将为mSQL编写的第三方代码方便地移植到MySQL。
MySQL名称的起源不明。
10多年来,我们的基本目录以及大量库和工具均采用了前缀“my”。
不过,共同创办人MontyWidenius的女儿名字也叫“My”。
时至今日,MySQL名称的起源仍是一个迷,即使对我们也一样。
MySQLDolphin的名称为“Sakila”,它是由MySQLAB公司的创办人从用户在“Dolphin命名”比赛中提供的众多建议中选定的。
该名称是由来自非洲斯威士兰的开放源码软件开发人AmbroseTwebaze提出的。
根据Ambrose的说法,按斯威士兰的本地语言,女性化名称Sakila源自SiSwati。
Sakila也是坦桑尼亚、Arusha地区的一个镇的镇名,靠近Ambrose的母国乌干达。
2.2MySQL稳定性
最初的代码可回溯至20世纪80年代初。
它提供了稳定的编码基数,最初存储引擎使用的ISAM表格式仍保持向后兼容性。
在MySQLAB公司的前身TcX,自1996年中期以来,MySQL代码在多个项目中工作良好,未出现任何问题。
当MySQL数据库软件首次向更广泛的公众发布时,我们的用户很快发现了一些未经测试的代码段。
自那以后,尽管每个新版本具有很多新的特性,但每次新发布的版本均存在少量的移植性问题。
每次发布的MySQL服务器均是可用的。
仅当用户尝试源自“灰色区域”的代码时才会出现问题。
当然,新用户不了解“灰色区域”是什么。
因此,在本节中,我们介绍了目前已知的这类区域。
本节所作的介绍主要针对MySQL服务器3.23版和更高版本。
在最新的版本中,更正了所有已知和通报的缺陷,但“缺陷”一节所列的除外,这类缺陷与设计有关。
MySQL服务器采用了多层设计和独立模块。
在此列出了一些较新的模块,并指明了它们的测试情况。
2
生产实习(专业实习)报告
2.3MySQL表最大能达到多少
MySQL3.22限制的表大小为4GB。
由于在MySQL3.23中使用了MyISAM存储引擎,最大表尺寸增加到了65536TB(2567–1字节)。
由于允许的表尺寸更大,MySQL数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由MySQL内部限制决定的。
InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。
这样,表的大小就能超过单独文件的最大容量。
表空间可包括原始磁盘分区,从而使得很大的表成为可能。
表空间的最大容量为64TB。
在下面的表格中,列出了一些关于操作系统文件大小限制的示例。
这仅是初步指南,并不是最终的。
操作系统
文件大小限制
Linux2.2-Intel32-bit
2GB(LFS:
4GB)
Linux2.4+
(usingext3filesystem)4TB
Solaris9/10
16TB
NetWarew/NSSfilesystem
8TB
win32w/FAT/FAT32
2GB/4GB
win32w/NTFS
2TB(可能更大)
MacOSXw/HFS+
2TB
在Linux2.2平台下,通过使用对ext2文件系统的大文件支持(LFS)补丁,可以获得超过2GB的MyISAM表。
在Linux2.4平台下,存在针对ReiserFS的补丁,可支持大文件(高达2TB)。
目前发布的大多数Linux版本均基于2.4内核,包含所有所需的LFS补丁。
使用JFS和XFS,petabyte(千兆兆)和更大的文件也能在Linux上实现。
然而,最大可用的文件容量仍取决于多项因素,其中之一就是用于存储MySQL表的文件系统。
另外,Windows用户请注意:
FAT和VFAT(FAT32)不适合MySQL的生产使用。
应使用NTFS。
在默认情况下,MySQL创建的MyISAM表允许的最大尺寸为4GB。
你可以使用SHOWTABLESTATUS语句或myisamchk-dvtbl_name检查表的最大尺寸。
如果需要使用大于4GB的MyISAM表(而且你的操作系统支持大文件),可使用允许AVG_ROW_LENGTH和MAX_ROWS选项的CREATETABLE语句。
创建了表后,也可以使用ALTERTABLE更改这些选项,以增加表的最大允许容量。
处理MyISAM表文件大小的其他方式:
·
如果你的大表是只读的,可使用myisampack压缩它。
myisampack通常能将表压缩至
少50%,因而,从结果上看,可获得更大的表。
此外,myisampack还能将多个表合并为1个表。
3
生产实习(专业实习)报告
·MySQL包含一个允许处理MyISAM表集合的MERGE库,这类MyISAM表具有与单个MERGE表相同的结构。
2.4java与SQL的应用
Java语言是编写数据库应用程序的杰出语言之一,它提供了方便访问数据的技术。
利用Java语言中的JDBC技术,用户能方便地开发出基于Web网页的数据库访问程序,从而扩充网络应用功能。
JDBC(JavaDatabaseConnectivity,Java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一的访问接口。
JDBC由一组用Java语言编写的类与接口组成,通过调用这些类和接口所提供的方法,用户能够以一致的方式连接多种不同的数据库系统(如Access、SQLServer2000、Oracle、Sybase等),进而可使用标准的SQL语言来存取数据库中的数据,而不必再为每一种数据库系统编写不同的Java程序代码。
SQLServer2000是微软公司新一代的数据库产品,它是在SQLServer7.0建立的坚固基础上产生的,并对SQLServer7.0做了大量扩展。
SQLServer2000通过高端硬件平台以及最新网络和存储技术的支持,可为最大的Web站点和企业级应用提供可扩展性和高可靠性。
Java通过JDBC、ODBC接口访问数据库。
2.5JDBC、ODBC接口
Java应用程序通过JDBCAPI(java.sql)与数据库连接,而实际的动作则是由JDBC驱动程序管理器(JDBCDriverManager)通过JDBC驱动程序与数据库系统进行连接。
ODBC(OpenDataBaseConnectivity)即开放式的接口,它为用户提供了一个访问关系数据库的标准接口,对于不同的数据库它提供了一套统一的API;可以使应用程序通过API访问任何提供了ODBC驱动程序的数据库,而目前所有的关系数据库都提供了ODBC驱动程序,所以ODBC已经成为数据库访问的业界标准,并得到了广泛应用。
JDBC-ODBC桥是一种JDBC驱动程序,它通过将JDBC操作转换为ODBC操作来实现的。
利用JDBC-ODBC桥可以使程序开发人员不需要学习更多的知识就可以编写JDBC应用程序,并能够充分利用现有的ODBC数据源。
JDBC-ODBC桥驱动程序可以使JDBC能够访问几乎所有类型的数据库。
4
生产实习(专业实习)报告
3.Servlet技术
3.1什么是Servlet?
一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。
虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。
JavaServlet技术为这些应用程序定义了一个特定于HTTP的servlet类。
javax.servlet和javax.servlet.http包为编写servlet提供了接口和类。
所有的servlet都必须实现Servlet接口,该接口定义了生命周期方法。
3.2Servlet的生命周期
一个servlet的生命周期由部署servlet的容器来控制。
当一个请求映射到一个servlet时,该容器执行下列步骤。
(1)如果一个servlet的实例并不存在,Web容器
a.加载servlet类。
b.创建一个servlet类的实例。
c.调用init初始化servlet实例。
该初始化过程将在初始化servlet中讲述。
(2)调用service方法,传递一个请求和响应对象。
服务方法将在编写服务方法中讲述。
如果该容器要移除这个servlet,可调用servlet的destroy方法来结束该servlet。
结束过程将在结束Serlvet中讨论。
3.3控制对共享资源的并发访问
在多线程的服务器中,可能出现对共享资源的并发访问。
除了作用域对象属性外,共享资源还包括存储器中的数据(如实例和类变量)、外部对象(如文件)、数据库连接和网络连接。
并发访问可出现在多个情况下。
·多个Web组件访问存储在Web上下文中的对象。
·多个Web组件访问存储在会话中的对象。
·一个Web组件中的多个线程访问实例变量。
一个Web容器一般为每个请求创建一个线程来处理。
如果用户确认一个servlet实例每次只处理一个请求,servlet就能实现
5
SingleThreadModel
生产实习(专业实习)报告
接口。
如果servlet实现了这个接口,用户就能确保servlet的服务
方法中不可能有两个线程并发执行。
Web容器可通过同步访问一个servlet的单独实例、或者通过维护一个Web组件池为每个实例调用一个新的请求来实现。
这个接口并不能防止Web组件访问共享资源(如静态类变量、外部对象)导致的同步问题。
4.JSP页面
4.1JSP2.0介绍
新的JSP规范版本包括新的用于提升程序员工作效率功能,主要有:
AnExpressionLanguage(EL)
允许开发者创建Velocity-样式templates(amongotherthings).更快更简单的创建新标签的方法。
Hello,${param.visitor}
<%--sameas:
Hello,<%=request.getParameter("visitor")%>--%>
MVC模式
为了把表现层presentation从请求处理requestprocessing
和数据存储data
storage中分离开来,SUN公司推荐在JSP文件中使用一种“模型-视图-控制器”Model-
view-controller
模式。
规范的SERVLET或者分离的JSP文件用于处理请求。
当请求处理
完后,控制权交给一个只作为创建输出作用的JSP页。
有几种平台都基于服务于网络层的模-视图-控件模式(比如Struts和Springframework)。
4.2JSP技术的强势
(1)一次编写,到处运行。
在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/PHP的局限性是显而易见的。
(3)强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。
这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平
6
生产实习(专业实习)报告
台之下。
4.3JSP技术的弱势
(1)与ASP一样,Java的一些优势正是它致命的问题所在。
正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
(2)Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。
从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。
4.4JSP内置对象
4.4.1request对象:
该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以获取用户提交信息。
4.4.2response对象:
对客户的请求做出动态的响应,向客户端发送数据。
4.4.3session对象:
session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。
从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。
当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间反复连接,反复刷新一个页面,服务器应当通过某种办法知道这是同一个客户,这就需要session对象。
4.4.5application对象:
服务器启动后就产生了这个application对象,当客户在所访问的网站的各个页面之
间浏览时,这个application对象都是同一个,直到服务器关闭。
但是与session不同的是,所有客户的application对象都是同一个,即所有客户共享这个内置的application对象。
4.4.6out对象:
out对象是一个输出流,用来向客户端输出数据。
out对象用于各种数据的输出。
7
生产实习(专业实习)报告
5.JSP的技术方法
5.1将内容的生成和显示进行分离
用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。
生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有的脚本在服务器端运行。
由于核心逻辑被封装在标识和JavaBeans中,所以Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。
5.2适应平台
几乎所有平台都支持Java,JSP+JavaBeans几乎可以在所有平台下通行无阻。
从一个平台移植到另外一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标准的与平台无关的。
5.3数据库连接
Java中连接数据库的技术是JDBC,Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。
此外,通过开发标识库,JSP技术可以进一步扩展。
第三方开发人员和其他人员可以为常用功能创建自己的标识库。
这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来进行工作。
JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且能扩展到支持企业级的分布式应用中。
作为采用Java技术家族的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。
由于JSP页面的内置脚本语言是基于Java的,而且所有的JSP页面都被编译成为JavaServlets,所以JSP页面具有Java技术的所有好处,包括健壮的存储管理和安全性。
作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。
8
生产实习(专业实习)报告
五、实习总结及体会
本文经过审核,分析,设计,调试到最后OA办公管理系统短消息模块基本完成,本系统方便实用,易于操作,安全,稳定等特点,实现了无纸化办公。
本软件系统采用了统一的界面,大大方便用户使用本软件,使得管理的信息化,同时也减少了出错的可能,确保了数据的正确性,完整性和一致性。
本系统提高了企业的整体运转效率,在未来大有发展前景。
本模块主要完成了发送短信息,接收短信息,管理消息记录和个人群组四大功能。
发送短信息功能实现了消息群发,站内发送消息,查看发送记录和删除发送记录等操
作。
接收短消息功能实现了对消息的接收,用户登陆系统之后可以根据消息提醒,查看最新消息,将读过的信息设置为“已阅”。
管理消息记录功能实现了对消息记录的查看与删除功能,个人群组功能实现了对单位内的所有成员的管理,用户建立一个群组,将各用户的信息整理到一起,方便发送群消息,也节省了时间,非常的方便,并且用户可以对自己建立的群组进行删除和修改功能,对于没有用的组进行删除,对于不好听的组名进行修改并且保存,同时用户可以对组内的成员进行删除,增加功能,对于一些不在部门或公司的成员进行删除,对于新来的一些成员进行增加。
方便用户之间的联系。
在整个模块的设计过程中,仍然存在一些不足和一些未解决的问题:
如
1、模块中用户发送消息和接收消息等只局限在了同在一台机器上,没有实现局域网之间的相互通信。
2、没有废件箱,有一些重要消息删除后无法还原,会造成不必要的损失。
3、模块设计中应该注意对用户的个人信息的保密,重要的信息不能出现在群组中,如果用到重要信息,可以通过短消息联系用户,见面过着通过电话获得重要信息。
使用户使用起来既安全又放心。
1、随着科技的不断发展,一个软件很容易被淘汰,此企业网络办公管理系统应当与用户建立良好的沟通,实现产品的在线升级。
9