实习报告
一、实习时间
二、实习地点
无锡NIIT软件服务外包实训基地
三、实习目的
进一步了解Java开发的相关知识,掌握Java开发的基本技术,丰富Java开发的实战经验。学习SQL的基础知识及正确的运用方法,ssh等企业应用框架和有用的相关技术,提高自己的工作效率。通过实习,培养我们综合运用已学知识Java语言的面向对象编程能力;培养我们动手能力;培养我们良好编程规范、编程方法;以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;增强自己的团队协作意识,了解软件开发的思考角度和主要流程。为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。
四、实习内容概要
应用java基础、MySQL数据库、Servlet技术、JSP页面设计、JQuery、ajax、hibernate、struts2、spring、xml等技术完成网站后台的开发。
五、实习内容
java基础知识
Java的基础知识对于一个java软件工程师来说就好比是人的灵魂,现在的公司
在招聘的时候不在乎你会不会流行的技术,如(Struts、Hibernate、Spring、ibatis等)他看重的是你的基础扎不扎实,对于网易、腾讯等大公司来说更是如此,我们在开发过程中运用了大量的java基础知识,如类、对象、方法、成员变量、静态变量、封装、继承、多态、异常、接口、抽象类、IO流…等等等等,所以一个系统对于java编程基础的依赖便不言而喻。
、Oracle数据库的介绍
java软件培训学院 MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQLAB公司开发、发布并支持的。MySQLAB是由多名MySQL开发人创办的一家商业公司。它是一家第二代开放源码公
司,结合了开放源码价值取向、方法和成功的商业模型。Oracle则是以稳定性着称,在访问量和数据大量交换的服务器中,Oracle占了大臂的江山,在开发中主要用到了数据库的查询语句、数据库的关系、事物等
Java中的常用设计模式
5.3.1工厂模式
客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。
5.3.2单例模式
单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。
Servlet&JSP技术的介绍
5.4.1什么是Servlet
一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。JavaServlet技术为这些应用程序定义了一个特定于HTTP的servlet类。
5.4.2Servlet的生命周期
一个servlet的生命周期由部署servlet的容器来控制。当一个请求映射到一个servlet时,该容器执行下列步骤。
5.4.3JSP介绍
JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结
果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可以访问JSP网页。
5.4.4JSP&Servlet
JavaServlet是JSP技术的基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。现在许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器,也可以通过附件的应用服务器和模块来支持Servlet,这得益于Java的跨平台特性。另外,由于Servlet内部以线程方式提供提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此Servlet的效率非常高。
MVC模式
为了把表现层presentation从请求处理requestprocessing和数据存储datastorage中分离开来,SUN公司推荐在JSP文件中使用一种“模型-视图-控制器”Model-view-controller模式。规范的SERVLET或者分离的JSP文件用于处理请求。当请求处理完后,控制权交给一个只作为创建输出作用的JSP页。有几种平台都基于服务于网络层的模-视图-控件模式(比如Struts和Springframework)。
xml&jquery&ajax
5.6.1xml
Xml是用于标记电子文件使其具有结构性的标记语言,可以用来标记
数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。主要学习了xml的语法与读取xml。
5.6.2jquery
query是继prototype之后又一个优秀的Javascript框架,jQuery使用户能更方便地处理HTMLdocuments、events、实现动画效果,jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。
5.6.3ajax
Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet
Explorer5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户,AJAX不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。
三大框架
5.7.1Struts2
Struts2是Struts的下一代产品,是在struts1和WebWork的技术基础上进行了
合并的全新的Struts2框架。其全新的Struts2的体系结构与Struts1的体系结构差别巨大。Struts2以WebWork为核心,采用的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。虽然从Struts1到Struts2有着太大的变化,但是相对于WebWork,Struts2的变化很小。
5.7.2Hibernate
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量
级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
5.7.3Spring
spring在英文里有春天、弹簧、跳跃和泉眼的意思。Spring也表示是
一个开源框架,是为了解决企业应用程序开发复杂性由RodJohnson创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
六、实习总结及体会
通过这次实习机会,我主要学习了以上这些java编程的技术,同时也明白了身处公司中如何更好地与同事配合,毕竟在软件开发中,你不可能一个人干完一个系统,大家都是通过svn等团队管理工具互相配合完成编程任务。在实习之前,我对软件开发的过程只有一个模糊地印象,以为只要把代码编写完之后就算基本上一个项目开发完毕了。然而通过这次实习,彻底颠覆了我的认知,我当时的认知无疑是非常幼稚和可笑的,完全的软件开发过程不只只是编写代码,在编写代码之前还有好多的事情要做,比如文档的编写、对项目进行需求分析、数据库设计等等。代码编写完成之后还要进行测试,以及人员的培训,这些都是必须做,也是必不可少的项目,甚至比代码的编写还重要。
以前总是觉得自己干不好编程,没有足够的自信,但通过一系列知识的学习,还有人际交往能力的提高,我渐渐地认识到如果个人想要在公司立足,除了要有扎实的知识基础,还必须具备良好的交流沟通能力,虽然现在我在公司基本没出现加班的情况,但做这一行就得做好心里准备,时刻准备战斗,对于我们现在这个阶段来说,实践就是提高的唯一捷径,在这个关键的阶段中,你必须做到肯吃苦,不怕累,让知识和技能来充实你的生活,但你回想这一刻的时候,你并不在乎当初赚的工资是多少,上班的时间是多久,你只在乎的是你的技能、经验、人际关系的提高,这样会给你带来一种成就感,对于即将毕业的大学生来说,经
验与经历是你以后发展的敲门砖,即将面对社会的我们,再也没有校园那一堵堵围墙能给我们安全感并保护着我们,我们需要面对社会,同其他人竞争,如果你现在还在纠结这份工作很辛苦、工资很低,那你就错了,你要纠结的是这份工作能不能学到东西,你的能力跟你的报酬对不对等,如果当你发现你的能力跟你的报酬严重不对等或是没东西学习的时候,那时你可以选择到别的地方发展。
现在的我没事也会去一些java的QQ跟大家交流一番,在这里你能到很多程序猿(程序员的网络叫法),大家一起讨论技术,讨论问题,探讨人生,虽然很多时候都是在八卦,但只有他们才能理解这个职业的艰辛,才能与你感同身受。我在开发期间也遇到很多问题,但是我会试着到网络去答案,如果实在不到我会试着问问我的上级,或者跟一些朋友讨论一下,如果发现了这个问题的答案我会及时把它记录下来,方便以后遇到问题可以随时翻阅,我相信好记性不如烂笔头这句话,我也相信如果一个程序员写的代码没有错误那只能证明他没写过代码,虽然我比较懒,但我现在有空的时候都会对着电脑敲代码,我相信手感是敲出来的,你看10遍都不如你敲一遍来得印象深刻。
通过这次实习,我认识到了一个软件开发的完整的过程,为我今后进行实际的工作奠定了坚
实的基础。首先,进入公司,你就是一名职业人,不再是一名学生,你要具备一名职业人应具备的素养,不迟到不早退是必然的,而且还要时刻严格要求自己,公司的规定要严格遵守。然后,在技术上也有了很大的提高,学习了很多公司自己的框架和工具,这都是一些前辈的宝贵经验。而且所作的软件应用性更强。所以,在今后的学习中我会严于律己,认真学习有关软件编程的课,为以后的工作打好坚实的基础。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论