




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实习报告一、实习目的进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。学习sql的基础知识及正确的运用方法,ssh等企业应用框架和有用的相关技术,提高自己的工作效率。通过实习,培养我们综合运用已学知识java语言的面向对象编程能力;培养我们动手能力;培养我们良好编程规范、编程方法;以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;增强自己的团队协作意识,了解软件开发的思考角度和主要流程。为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。二、实习单位xxxxxxxxx有限公司三、岗位介绍java软件工程师,学习基于java
2、平台的web应用和设计知识。主要应用java基础、mysql数据库、servlet技术、jsp页面设计、jquery、ajax、maven、freemarket、hibernate、struts2、spring、xml等技术完成网站与游戏后台的开发四、实习安排第一阶段:linux第二阶段:java基础知识第三阶段:数据库设计(oracle、mysql)第四阶段:servlet & jsp;第五阶段:xml & jquery & ajax第六阶段:三大框架第七阶段:maven项目管理第八阶段:freemarket模版技术第九阶段:自学lucene与支付宝等网上支付五、实习内容5.1 linux系
3、统介绍linux是一种自由和开放源码的类unix的操作系统,公司所用服务器一般部署在linux系统下,linux系统以开源免费和稳定著称,我们主要认识了linux的文件系统、分区系统、常用命令,主要学习了linux的常用命令5.2 java基础知识java的基础知识对于一个java软件工程师来说就好比是人的灵魂,现在的公司在招聘的时候不在乎你会不会流行的技术,如(struts、hibernate、spring、ibatis等)他看重的是你的基础扎不扎实,对于网易、腾讯等大公司来说更是如此,我们在开发过程中运用了大量的java基础知识,如类、对象、方法、成员变量、静态变量、封装、继承、多态、异常
4、、接口、抽象类、io流等等等等,所以一个系统对于java编程基础的依赖便不言而喻。5.3 mysql、oracle数据库的介绍mysql是最流行的开放源码sql数据库管理系统,它是由mysql ab公司开发、发布并支持的。mysql ab是由多名mysql开发人创办的一家商业公司。它是一家第二代开放源码公司,结合了开放源码价值取向、方法和成功的商业模型。oracle则是以稳定性著称,在访问量和数据大量交换的服务器中,oracle占了大臂的江山,在开发中主要用到了数据库的查询语句、数据库的关系、事物等5.4 java中的常用设计模式5.4.1 工厂模式客户类和工厂类分开。消费者任何时候需要某种产
5、品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。 5.4.2 单例模式单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。5.5 servlet & jsp技术的介绍5.5.1 什么是servlet一个servlet就是java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展web服务器的应用程序。java servl
6、et技术为这些应用程序定义了一个特定于http的 servlet类。javax.servlet和javax.servlet.http包为编写servlet提供了接口和类。所有的servlet都必须实现servlet接口,该接口定义了生命周期方法。5.5.2 servlet的生命周期一个servlet的生命周期由部署servlet的容器来控制。当一个请求映射到一个servlet时,该容器执行下列步骤。5.5.3 jsp介绍jsp是由sun microsystems公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页html文件(*.htm,*.html)中加入java程序 片段(scr
7、iptlet)和jsp标签,就构成了jsp网页java程序片段可以操纵数据库、重新定向网页以及发送e-mail等,实现建立动态网站所 需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持java, 也可以访问jsp网页5.5.4 jsp & servletjava servlet是jsp技术的基础,而且大型的web应用程序的开发需要java servlet和jsp配合才能完成。现在许多web服务器都支持servlet,即使不直接支持servlet的web服务器,也可以通过附件的应用服务器和模块来支持servlet
8、,这得益于java的跨平台特性。另外,由于servlet内部以线程方式提供提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此servlet的效率非常高5.6 mvc 模式为了把表现层presentation从请求处理request processing 和数据存储data storage中分离开来,sun公司推荐在jsp文件中使用一种“模型-视图-控制器”model-view-controller 模式。规范的servlet或者分离的jsp文件用于处理请求。当请求处理完后,控制权交给一个只作为创建输出作用的jsp页。有几种平台都基于服务于网络层的模-视图-
9、控件 模式(比如struts 和spring framework)。 5.7 xml & jquery & ajax5.7.1 xmlxml是用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。主要学习了xml的语法与读取xml5.7.2 jqueryquery是继prototype之后又一个优秀的javascript框架,jquery使用户能更方便地处理html documents、events、实现动画效果,jquery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。j
10、query能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可5.7.2 ajaxajax的核心是javascript对象xmlhttprequest。该对象在internet explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,xmlhttprequest使您可以使用javascript向服务器提出请求并处理响应,而不阻塞用户,ajax 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 web 应用程序的技术。5.8 三大框架5.8.1 struts2struts 2是struts的下一代产
11、品,是在 struts 1和webwork的技术基础上进行了合并的全新的struts 2框架。其全新的struts 2的体系结构与struts 1的体系结构差别巨大。struts 2以webwork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与servlet api完全脱离开,所以struts 2可以理解为webwork的更新产品。虽然从struts 1到struts 2有着太大的变化,但是相对于webwork,struts 2的变化很小。5.8.2 hibernatehibernate是一个开放源代码的对象关系映射框架,它对jdbc进行了非常轻量级的对象封装,
12、使得java程序员可以随心所欲的使用对象编程思维来操纵数据库。 hibernate可以应用在任何使用jdbc的场合,既可以在java的客户端程序使用,也可以在servlet/jsp的web应用中使用,最具革命意义的是,hibernate可以在应用ejb的j2ee架构中取代cmp,完成数据持久化的重任。5.8.3 springspring在英文里有春天、弹簧、跳跃和泉眼的意思。spring 也表示是一个开源框架,是为了解决企业应用程序开发复杂性由rod johnson创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 j2ee 应用程序开发提供集成的框架。sp
13、ring使用基本的javabean来完成以前只可能由ejb完成的事情。然而,spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何java应用都可以从spring中受益。5.9 mavenmaven是基于项目对象模型(pom),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具,maven 除了以程序构建能力为特色之外,还提供 ant 所缺少的高级项目管理工具。由于 maven 的缺省构建规则有较高的可重用性,所以常常用两三行 maven 构建脚本就可以构建简单的项目,而使用 ant 则需要十几行。事实上,由于 maven 的面向项目的方法,许多
14、 apache jakarta 项目现在使用 maven,而且公司项目采用 maven 的比例在持续增长。5.10 freemarketfreemarker是一个用java语言编写的模板引擎,它基于模板来生成文本输出。freemarker与web容器无关,即在web运行时,它并不知道servlet或http。它不仅可以用作表现层的实现技术。freemarker允许java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封html完成的。模板用servlet提供的数据动态地生成 html。模板语言是强大的直观的,编译器速度快,输出接近静态html页面的速度。虽然freemar
15、ker具有一些编程的能力,但通常由java程序准备要显示的数据,由freemarker生成页面,通过模板显示准备的数据。5.11 lucenelucene是一套用于全文检索和搜寻的开源程式库,由apache软件基金会支持和提供。lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在java开发环境里lucene是一个成熟的免 费开源工具。就其本身而言,lucene是目前以及最近几年最受欢迎的免费java资讯检索程式库。人们经常提到资讯检索程式库,虽然与搜寻引擎有关,但不应该将资讯检索程式库与搜索引擎相混淆。六、实习总结及体会通过这次实习机会,我主要学习了以上这些java编程的
16、技术,同时也明白了身处公司中如何更好地与同事配合,毕竟在软件开发中,你不可能一个人干完一个系统,大家都是通过svn等团队管理工具互相配合完成编程任务。在实习之前,我对软件开发的过程只有一个模糊地印象,以为只要把代码编写完之后就算基本上一个项目开发完毕了。然而通过这次实习,彻底颠覆了我的认知,我当时的认知无疑是非常幼稚和可笑的,完全的软件开发过程不只只是编写代码,在编写代码之前还有好多的事情要做,比如文档的编写、对项目进行需求分析、数据库设计等等。代码编写完成之后还要进行测试,以及人员的培训,这些都是必须做,也是必不可少的项目,甚至比代码的编写还重要。 以前总是觉得自己干不好编程,没有足够的自信
17、,但通过一系列知识的学习,还有人际交往能力的提高,我渐渐地认识到如果个人想要在公司立足,除了要有扎实的知识基础,还必须具备良好的交流沟通能力,虽然现在我在公司基本没出现加班的情况,但做这一行就得做好心里准备,时刻准备战斗,对于我们现在这个阶段来说,实践就是提高的唯一捷径,在这个关键的阶段中,你必须做到肯吃苦,不怕累,让知识和技能来充实你的生活,但你回想这一刻的时候,你并不在乎当初赚的工资是多少,上班的时间是多久,你只在乎的是你的技能、经验、人际关系的提高,这样会给你带来一种成就感,对于即将毕业的大学生来说,经验与经历是你以后发展的敲门砖,即将面对社会的我们,再也没有校园那一堵堵围墙能给我们安全
18、感并保护着我们,我们需要面对社会,同其他人竞争,如果你现在还在纠结这份工作很辛苦、工资很低,那你就错了,你要纠结的是这份工作能不能学到东西,你的能力跟你的报酬对不对等,如果当你发现你的能力跟你的报酬严重不对等或是没东西学习的时候,那时你可以选择到别的地方发展。 现在的我没事也会去一些java的qq群跟大家交流一番,在这里你能找到很多程序猿(程序员的网络叫法),大家一起讨论技术,讨论问题,探讨人生,虽然很多时候都是在八卦,但只有他们才能理解这个职业的艰辛,才能与你感同身受。我在开发期间也遇到很多问题,但是我会试着到网络去找答案,如果实在找不到我会试着问问我的上级,或者跟一些朋友讨论一下,如果发现了这个问题的答案我会及时把它记录下来,方便以后遇到问题可以随时翻阅,我相信好记性不如烂笔头这句话,我也相信如果一个程序员写的代码没有错误那只能证
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 22459.10-2025耐火泥浆第10部分:加热永久线变化试验方法
- 持续努力2025年注册会计师考试过程试题及答案
- 项目成功的关键因素试题及答案
- 项目管理资格考试中的实际应用能力及试题答案
- 心灵培育幼儿园教学工作计划文档
- 规范化证券市场对2025年考试的影响试题及答案
- 行政管理师证书考试内部控制实践试题及答案
- 证券投资策略分析考试试题及答案
- 金融市场监管相关试题及答案
- 轨道板预制施工作业指导书
- 边缘计算与5G融合技术研究-全面剖析
- 8.1薪火相传的传统美德 同步课件 -2024-2025学年统编版道德与法治七年级下册
- 飞机的纵向静稳定性飞行原理课件
- 磁分离技术在天然气管道黑粉处理中应用的研究与效果分析
- 城市园林绿化养护管理服务投标方案(技术方案)
- 2025年广东省深圳市福田区5校中考一模历史试题(原卷版+解析版)
- 肺结核宣教课件
- 中国新闻事业史知到课后答案智慧树章节测试答案2025年春山东大学
- 事故隐患内部举报奖励制度
- 2025年静力学测试题及答案
- 《2025年公路玻璃纤维筋混凝土护栏与铺装结构应用技术规程》知识培训
评论
0/150
提交评论