实习报告
一、 实习目的
(对实习目的简要描述,这部分内容所有实习学生都应一致)
1、培养学生理论联系实际,了解生产技术工作的一般程序和方法,掌握计算机应用技术的开发方法和当前流行的开发技术。
2、培养严谨的工作作风和认真的科学态度。
3、树立工程技术工作所必须的全局观点、生产观点和经济观点。
二、 实习任务
1、公司管理规则,员工素质,程序员编码规范;
2、需求开发与管理;
3、面向对象分析与设计,面向对象编程的特性;
4、BasicJava、JPA、JSP&JSF
5、数据库设计、SQL应用
6、软件需求分析与设计
7、项目实战
三、 实习内容
刚进入公司,首先进行为期一周的公司管理规则和员工素质的软技能培训,通过这一周的学习,我了解了公司的企业文化以及公司的管理规则,同时也和自己的项目小组成员互相了解沟通,和小组成员建立团结互助的合作精神, 为我以后融入公司的工作环境以及更好的学习奠定了良好的基础。
接下来,我们开始了JAVA技术的培训学习,由于在学校时没有学习过JAVA,所以刚开始还是不免有点担心自己学不好,但幸运的是我们的学习是从复习大学所学的基础知识开始的,这对于我们学习JAVA技术就有了一个缓冲期。
下面是这段时间公司实习的主要内容(当然,由于公司安排的实习学习还没有结束,这里只是前段时间的实习内容):
(一) RDBMS概述
RDBMS是通过数据、关系和对数据的约束三者组成的数据模型来存放和管理数据的系统。三十多年来,RDBMS获得了长足的发展,目前许多企业的在线交易处理系统、内部财务系统、客户管理系统等大多采用了RDBMS。字节级关系型数据库在大型企业集团中已是司空见惯。目前业界普遍使用的关系型数据库管理系统产品有IBM DB2通用数据库、Oracle、My SQL以及SQL Server等,在我们公司主要使用Oracle和SQL Server两种数据库,所以接下来所讲的SQL语句的语法也是针对这两种数据库的。
RDBMS的特点如下:
(1)数据以表格的形式出现
(2)每行为各种记录名称
(3)每列为记录名称所对应的数据域
(4)许多的行和列组成一张表单
(5)若干的表单组成database
RDBMS的发展分为三个阶段,如下图所示:
我们知道,数据库技术是数据管理的最新技术。其主要目标是解决数据管理中数据的存储、访问、处理等问题。因此RDBMS产品在第一阶段主要用于信息管理应用领域,如基层部门的事务处理,企业的管理信息系统。这些应用对联机速度的要求不是很高;第二阶段的RDBMS主要针对联机事务处理的应用领域,提高RDBMS事务处理的能力,这种能力包括两个方面,一是事务吞吐量,二是事务联机响应时间。为此必须在以下两个方面改善RDBMS的实现技术:
(1)性能:提高RDBMS对于联机事务响应速度。
(2)可靠性:由于联机事务处理系统不允许RDBMS间断运行,在发生事务故障、软硬件故障时均能有相应的恢复能力,保证联机事务的正常运行、撤消和恢复。保证数据库数据的完整性和一致性。
RDBMS虽然是在学校学过的课程,但是理论性比较强,在公司的实习学习期间注重的是实践以及应用,所以在学习这门课的同时,我们主要讲究的是如何提高数据库的查询执行效率,也就是上面所说的性能,在实践锻炼时我们主要注重的是如何提高事物执行效率以及数据安全性,而不是简单地只是得出数据结果那么简单。
(二)软件工程
软件工程(Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。它的目标在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。
这门课的理论性比较强,概念性的知识很多,我们主要了解到了软件开发的各种常用的模型,以及软件开发的整个过程,同时通过对各种成功案例的学习,使我加深了对软件开发的过程的理解,这不仅仅是简单地完成各个模块的功能那么简单,而是从全局角度考虑,从系统角度分析,开发出一个完善的、性能强的软件。
(三)OOP&BasicJava
这部分主要是复习大学所学的C++知识,我们所学的主要是其面向对象
的编程思想,编程语法运用的是JAVA。面向对象的程序设计,所谓“对象”就是一个或一组数据以及处理这些数据的方法和过程的集合。面向对象的程序设计完全不同于传统的面向过程程序设计,它大大地降低了软件开发的难度,使编程就像搭积木一样简单,是当今电脑编程的一股势不可挡的潮流。如今很多大型公司的软件开发都是采用这一编程思想。OOP达到了软件工程的三个主要目标:重用性、灵活性和扩展性。
面向对象编程有三个特征:封装、继承、多态。Java 编程语言的风格十分接近C、C++语言。Java是一个纯的面向对象的程序设计语言,它继承了 C++ 语言面向对象技术的核心,Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了Java 程序的运行效率。
在OOP中我们主要了解了JAVA的编程思想,它主要继承了C++的一些特点,那么接下来在BasicJava中我们就主要针对JAVA的一些自身的特征进行学习。
这门课可以说是在整个学习JAVA的过程中的起到了承上启下的作用,通过该课程的学习我们了解到JAVA中的JAVABEAN、JAVA类库、异常捕获与处理、Collection、反射机制、注解、QA4J等。在学习这门课的过程中也遇到一些问题,尤其是对一些新的特性的理解与掌握,不过这些问题都在同事那里得到了及时的解决。
(四)Oracle架构
这门课主要讲了Oracle架构,其架构图如下所示:
学习该课程的目标主要是掌握以下几点:
(1)掌握ORACLE数据库系统结构中物理结构、系统全局区和进程的概念
(2)掌握ORACLE数据库的存储管理知识
(3)掌握管理ORACLE数据库的方法
(4)了解ORACLE数据库的网络应用
任何硬件平台或操作系统下的ORACLE体系结构是相同的,包括如下三个方面:物理结构:数据文件,日志文件,控制文件,参数文件;系统全局区(SGA):共享池,数据缓冲区,日志缓冲区,字典缓冲区;进程:用户进程,服务器进程,后台进程;其架构示意图如上面所示。
一个ORACLE数据库是数据的集合,被处理成一个单位。一个ORACLE数据库有一个物理结构和一个逻辑结构。数据库物理结构是由构成数据库的操作系统文件所决定。每一个ORACLE数据库是由四种类型的文件组成:数据文件、日志文件、控制文件和参数文件。数据库的文件为数据库信息提供真正的物理存储。
SGA(System Global Area)系统全局区是ORACLE系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作,SGA分为以下几个部分:共享池、数据块缓冲区、日志缓冲区、字典缓冲区四个部分;其每个部分具体的作用就不再一一详述。
进程是操作系统中的一种机制,它可执行一系列的操作步骤(在有些操作系统中使用作业(JOB)或任务(TASK)的术语来表示进程)。一个进程通常有它自己的专用存储区。ORACLE实例有两种类型:单进程实例和多进程实例。通常用的是多进程实例。
在管理ORACLE数据库这一部分,主要介绍了数据字典、事物管理等模块。其中数据字典是ORACLE数据库的最重要的部分之一,是由一组只读的表及其视图所组成。这些表和视图是数据库被建立同时由数据库系统建立起来的,起着系统状态的目录表的作用。数据字典描述表、列、索引、用户、访问权以及数据库中的其它实体,当其中的一个实体被建立、修改或取消时,数据库将自动修改数据字典;而事务是数据库维护数据一致性的单位,它将数据库从一致性状态转换成新的一致性状态。
同时还学习了Oracle数据库的多种管理方法,即启动和关闭数据库的各种方法以及数据库的用户权限问题,也就是数据库中数据的安全问题。
最后介绍了ORACLE数据库的网络应用,ORACLE数据库有极强的网络功能,它支持各种网络协议,如TCP/IP、SPX/IPX、X.25、LU6.2、Decnet等等,支持异种网络协议互联、异种数据库互联。SQL*Net是ORACLE的网络软件。ORACLE不仅支持传统的主机─终端方式,还支持流行的Client/Server体系结构方式,使得应用与数据库核心分布处理,极大地提高了资源的利用率和处理效率。
通过该模块的学习,我对Oracle的架构有了比较清楚地认识,这为以后的数据库系统的开发奠定了良好的基础。
按照公司的实习学习要求,我们在实习的最后阶段是要完成一个实例保险业务项目的开发,由于该项目的开发还在初级阶段,在此就不再详述。
四、体会与总结
第一次参加专业实习,让我明白了大学生生产实习是引导我们学生走出校门,走向社会,接触社会,了解社会,投身社会的良好形式;是培养锻炼才干的好渠道;是提升思想,树立服务社会的思想的有效途径。通过实习,我自身也发生了重大的转变。首先,进入公司,我就是一名职业人,不再是一名学生,我要具备一名职业人应具备的素养,不迟到不早退是必然的,而且还要时刻严格要求自己,公司的规定要严格遵守。然后,在技术上也有了很大的提高,学习了很多公司自己的框架和工具,这都是一些前辈的宝贵经验。当然在培训的过程中,我也遇到了很多问题,这还要感谢身边的同事的帮助以及老师的指导,在他们的帮助下我克服了Java学习上的一道道难关,课上认真听讲,摘好必要的笔记,并通过自己课后的不断消化学习,现在自己已经基本掌握了java的基础知识,并等待知识的进一步提升。我相信,只要坚定自己的信念,一切皆有可能!
第二篇:实习报告
河北科技大学
实 习 报 告
学生姓名: 黄金超 学 号: 070702129
专业班级:计算机科学与技术071班
实习单位:北京七星华创电子股份有限公司
实习时间: 20##-2-21 -------- 20##-3-4
指导教师: 王井阳
20##年2月
实习成绩评定表
目 录
一、实习计划…………………………………………………………1
二、实习目的…………………………………………………………1
三、实习内容…………………………………………………………1
四、实习总结…………………………………………………………3
五、实习日志…………………………………………………………5
一、 实习计划
2月21日:参观单位并且通过资料和领导介绍了解单位的文化,对单位的结构和运作进行一定的了解。
2月22日:对开发工具进行熟悉及练习,继续理论联系实践进行学习,为以后的项目开发做好准备。
2月23日:完成黄金交易系统的用例图,及用例描述。
2月24日:学习SQL语句,完成MySQL下数据表的构建与数据录入。
2月25日:设计实体类,用JDBC进行数据库的连接。
2月28日:进行黄金交易系统的前台系统功能的代码开发。
3月 1 日:对前台系统功能进行完善与调试,着手后台的编码。
3月 2 日:对后台进行编码与测试工作,基本完成系统的功能。
3月 3 日:进行系统测试,完善细节,对系统进行优化。
3月 4 日:编写用户手册与帮助文档,完成实习报告。
二、实习目的
通过在企业的实习,亲身感受软件开发的工作环境以及企业经营管理等知识,对所学的各方面知识进行综合训练和检验,为后续毕业设计的顺利进行增加感性认识,为即将走上工作岗位积累感性认识和初步的实践经验。
接受一次系统而深刻的专业思想教育,增强从事与本专业相关工作的责任心和光荣感,提高综合运用所学专业知识和基本技能的水平,培养从事软件开发相关工作的能力。
理论联系实际,掌握一定的工作能力,积累社会工作经验,了解社会,增长见识,提高与别人和谐相处和协同合作的能力,提高自身的综合素质。
三、实习内容
本次的实习内容主要包括:对B/S结构的程序设计有一个初步的构思,确定其应该包括哪些模块实现什么功能;学习JSP、SQL的基础知识的理论;理论联系实际对Java、SQL进行具体操作;学会用SQL语句建数据库;理解连接SQL数据库的语句及能正确的应用于实践;利用面向对象的开发语言完成面向对象的程序开发任务;完成系统的登录注册功能,黄金交易功能,实现信息查询功能,系统退出;独立完成软件的单元测试;通过合作与任务组一起完成系统的集成。通过本次的实习,应当对Java、sql等达到熟练运用的地步,同时应该对Java语言及其应用程序有一个非常清晰、明了的认识。
1.项目背景
早在1992年我国期货市场建立起,金融机构就被挡在了期货市场门外。而这和银行、证券等金融机构早期的国有属性休戚相关。直到20##年4月15日新《期货交易管理条例》正式施行,金融机构参与期货交易才在法律上没有障碍。从此,期货公司和银行、证券公司、基金公司、保险公司及信托等一起,组成了我国目前的金融机构市场。不过,打破金融机构不能参与期货交易这块坚冰的,却是刚刚上市的黄金期货。
而另一方面,近年来商业银行与黄金相关的业务品种逐步增多,其中包括代理黄金买卖、黄金租赁(租售)业务、对公黄金质押贷款业务、自营黄金买卖、个人账户黄金买卖与实物金买卖、黄金寄售业务等。随着黄金业务的品种增多、业务量增大,商业银行防范黄金价格波动所产生的风险的需求也日益强烈。
黄金期货作为流动性强、无交易对手风险的场内衍生产品,结构简单,透明度高,是黄金远期价格曲线的重要组成部分。商业银行作为连接黄金现货市场与黄金期货市场的重要参与者,将在境内黄金远期价格曲线形成中发挥重要作用。如果境内能够形成有效的黄金远期价格曲线,我国商业银行在黄金业务领域的产品创新与定价将更为便利。
纸黄金指黄金的纸上交易,投资者的买卖交易记录只在个人预先开立的"黄金存折账户"上体现,而不涉及实物金的提取。盈利模式即通过低买高卖,获取差价利润。相对实物金,其交易更为方便快捷,交易成本也相对较低,适合专业投资者进行中短线的操作。目前国内四家国有大银行均已开办纸黄金业务,分别是中国银行的黄金宝,中国工商银行的金行家,中国农业银行,中国建设银行的账户金。
2.功能模块
1)登录:输入用户的登录名称和密码以及验证码,校验是否为该系统的用户,验证成功后进入系统首页。
2)注册:在注册页面输入用户名、密码、身份证号码,注册为系统的用户,注册时默认给用户设定1000元的账户余额。
3)当前黄金价格查询:选择不同的黄金类型;显示相应的黄金当前最新价格,该价格是通过后台线程生成在一定范围内浮动的价格。
4)已购黄金查询:选择不同的黄金类型;显示相应已购黄金的信息,信息包括黄金类型、总额度、可用额度、浮动盈亏。
5)交易记录查询:选择查询方式,委托查询或成交查询;选择相应的查询条件,包括黄金的种类和交易的时间;确认,显示符合查询条件的记录。
6)买入黄金操作:选择你要买入的黄金类型;填写买入信息;确定,保存信息。
7)卖出黄金操作:选择你要卖出的黄金类型;填写卖出信息。
8)挂单操作:选择你要挂单的黄金类型;选择挂单方式;选择交易数量。
9)撤单操作:选择你要撤单的交易记录;确定,执行撤单操作。
10)用户信息查询:用户登录系统后,可以查询自己的信息,包括账户余额等信息。
11)系统退出:退出系统后,系统删除与用户的会话信息,用户必须登录成功后的才有操作的权限。
四、实习总结
通过本次实习,了解了Java开发的基本原则和 JavaBean开发的相关知识,掌握了Java开发的基本技术,丰富了使用Java语言的开发的实战经验。学会了Java、JDBC、SQL等的基础知识及正确的运用方法,通过实习,巩固了大学所学到的知识,提高了分析问题、判断和处理实际问题的能力,增强了自己的团队协作意识,了解了软件开发的思考角度和主要流程。为毕业之后能够更快地进入工作状态并且能够更好的工作,打好基础。通过理论联系实际的开发学习,提高了处理实际问题解决实际问题的能力,为将来的开发工作的顺利进行做好了充分的准备,让自己有更好的能力去从事以后的工作,从而使自己能更快的更好的去适应社会环境,真正的做到了从大学到社会的无缝结合,让自己成为能为社会大家庭做贡献的大学毕业人。
本次实习不仅是进行了一次良好的知识实习,还学会了在工作中如何与人相处,知道干什么,怎么干,按照规定的程序来完成工作任务。经过一月实习下来,使我受益良多,具体的实践体会如下:
1、是要有坚定的信念。不管到那家公司,一开始都不会立刻给工作让我们实习生去做,一般都是先让我们看,在这段时间里很多人会觉得很无聊,没事可做,便产生离开的想法,在这个时候我们一定要坚持,轻易放弃只会让自己后悔。
2、要认真了解公司的整体情况和工作制度。只有这样,工作起来才能得心应手。
3、要学会怎样与人相处和与人沟通。只有这样,才能有良好的人际关系。工作起来得心应手。与同事相处一定要礼貌、谦虚、宽容、相互关心、相互帮忙和相互体谅。
4、要学会怎样严肃认真地工作。以前在学校,下课后就知道和同学玩耍,嘻嘻哈哈、大声谈笑。在这里,可不能这样,因为,这里是公司,是工作的地方,是绝对不允许发生这样的事情的。工作,来不得半点马虎,否则就会出错,工作出错就会给公司带来损失。于是,我意识到:自己绝不能再像以前那样,要学会像这里的同事一样严肃、认真、努力地工作。
5、要多听、多看、多想、多做、少说。到公司工作以后,要知道自己能否胜任这份工作,关键是看你自己对待工作的态度,态度对了,即使自己以前没学过的知识也可以在工作中逐渐的掌握。态度不好,就算自己有知识基础也不会把工作做好,四多一少就是我的态度,我刚到这个岗位工作,根本不清楚该做些什么,并且这和我在学校读的专业没有必然的联系,刚开始我觉得很头痛,可经过工作过程中多看别人怎样做,多听别人怎样说,多想自己应该怎样做,然后自己亲自动手去多做,终于在短短几天里对工作有了一个较系统的认识,慢慢的自己也可以完成相关的工作了,光用嘴巴去说是不行的,所以,我们今后不管干什么都要端正自己的态度,这样才能把事情做好。
6、要学会虚心,因为只有虚心请教才能真正学到东西,也只有虚心请教才可使自己进步快。
总得来说在实习期间,虽然很辛苦,但是,在这艰苦的工作中,我却学到了不少东西,也受到了很大的启发。我明白,今后的工作还会遇到许多新的东西,这些东西会给我带来新的体验和新的体会。因此,我坚信:只要我用心去发掘,勇敢地去尝试,一定会能更大的收获和启发的。
在学校里学到的知识都是最基本的知识,不管现实情况怎样变化,抓住了最基本的就可以以不变应万变。如今有不少同学实习时都觉得课堂上学的知识用不上,出现挫折感,可我觉得,要是没有书本知识作铺垫,不可能会有应付瞬息万变的社会的能力。经过这次实践,虽然时间很短。可我学到的却是我一个学期在学校难以了解的。就比如何与同事们相处,相信人际关系是现今不少大学生刚踏出社会遇到的一大难题,于是在实习时我便有意观察前辈们是如何和同事以及上级相处的,而自己也虚心求教,使得这十二周的实习更加有意义。
此次的毕业实习为我深入社会,体验生活提供了难得的机会,让我在实际的社会活动中感受生活,了解在社会中生存所应该具备的各种能力。利用此次难得的机会,我努力工作,严格要求自己,加剧了紧迫感,为真正跨入社会施展我们的才华、走上工作岗位打下了基础,也为自己以后的工作和生活积累了更多丰富的知识和宝贵的经验。
五、实习日志
2月21日
今天是实习的第一天,在我们的项目组领导的带领下参观了一下公司,对公司的环境有了基本的了解。之后我们来到了工作的地方。工作间里,有一台电脑,一些关于项目的资料。在此领导给介绍了公司的企业文化,发展状况及相关的业务逻辑,对公司的运行情况有了一定的了解。接着是介绍我们的这次实习的任务和要完成的工作。在项目经理的带领下分析了项目的需求文档,制订了接下来几天的工作安排。
2月22日
今天算是正式展开了工作,首先是对开发工具的熟悉和练习,在这里我们使用的是MyEclipse可以用集成化的方式对开发的项目进行管理和部署它省去了我们手动编写编译程序的麻烦,并且有智能化的编译时排错功能,结合Java的解释型语言的有点可以大大的提高我们的编程能力。通过练习对其丰富强大的功能有了更进一步的认识。
2月23日
今天我们已经进入了真正的项目设计阶段了,自己对UML有一定的了解,但是,工作的时候才发现从来没有练习过的知识到了这里全部不起作用了,所有的东西都需要自己摸索着来,经过一段时间的练习,已经基本熟练了。还是项目组长说的好,做设计的工具是被用来使用的,不能成为我们的累赘,我们设计是为了自己以后看,不用太在意它的定义,只要我们项目组都认同就是对的,这样在我们共同的努力下我们做完了系统的用例设计,方法很重要,但是更重要的是怎么使用。
2月24日
今天是对MySQL的使用练习,让我复习了上个学期的SQL语法,并从一种新的数据库上练习了它。MySQL与Java语言兼容性良好,是一种高效的,可移植的,灵活的被广泛应用于中小项目的数据库。最后完成了系统功能的分析,形成了设计文档,并对文档进行了细化分工,通过一天的项目接触让我知道了理论与实践的距离,体验了实践出真知的意义。实现了系统的数据表的建立,与数据的录入工作,因为已经有了先前的分析工作所以,需要什么表,表有什么属性,还有属性的约束等很快就分析完成了,然后就是写sql语句,这花了我们一段时间,其实有可视化工具,不过为了锻炼自己我们选择了手动录入。
2月25日
今天是这周的最后一天,总结这一周的工作,为让自己更好的完成任务,同时也可以好好放松一下。今天我的任务是实现实体类的设计和用JDBC进行数据库的连接工作。今天我发现有问题大家讨论是很重要的,尤其在以后的工作中,只有良好的沟通才能更好的工作,才能更完美的完成任务。
2月28日
过完周末,新的工作又开始了,在经过周末的收集资料和休息感觉自己对完成任务充满了信心。今天要工作模块划分完成了,我的模块为角色管理,与用户的账户管理,属于后台的工作,今天主要实现有关界面的东西。我们实现其功能,在一个上午的努力后我完成了一部分,然后对它要连接的数据进行了实现,一天下来很累,感觉没什么成就,不过也有收获吧,知道了一个人的时候考虑事情一定要全面,一丝一点的错你都不能完成工作。
3月1日
继续昨天的工作,经过晚上的思考和今天的耐心查找终于测试通过了,实现了查询功能,后面的修改和删除就好做了,一样的模式,只是在连接到数据库的实现上有点差别,今天成绩不错,大体的功能实现了,自己还做了测试感觉还可以。
3月2日
今天对后台进行了编码和测试工作,按照设计应该是很简单的事情大家都觉得终于要完成了,当结合的时候发现好多功能丢了还爆出了做,感觉有问题,还是项目经理说的好,我们的设计没有问题,问题是我们的实现不是完全按照设计来的,不是太规范,不管怎样吧 ,在我们互相调整的努力下终于集成完成,有点遗憾的是没有想的好,最后我们在自己的平台下部署了系统,并测试,总体还是不错的。
3月3日
今天是进行系统测试和细节上的完善,本以为没有多少工作了,却忙了一整天,细节决定成败,我发现每一个小小的功能都有它的结构,叫什么麻雀虽小五脏俱全,不过自己盖珏再接再厉一定要做的很完美,第一次的工作不能不认真。
3月4日
今天是最后一天了,首先对整个项目进行了用户手册和帮助文档的编写。也开始完成实习报告了,通过这二周的实习,虽然很累,但是痛并快乐着。也觉得过的很充实,和大家一起完成了一个项目,感觉自己贡献了力量,很有成就感。