综合实习报告youmin3205计应102.docx
《综合实习报告youmin3205计应102.docx》由会员分享,可在线阅读,更多相关《综合实习报告youmin3205计应102.docx(32页珍藏版)》请在冰豆网上搜索。
综合实习报告youmin3205计应102
综合实习
综合实习题目:
综合实习
专业班级:
学生姓名:
指导教师:
实习时间:
2012.12.10—2013.1.18
重庆工程职业技术学院
重庆工程职业技术学院
学生实习考核表
学生姓名
专业班级
指导教师
梁超
实习时间
2012年12月10日至2013年1月18日
实习地点
实习名称
综合实习
自我总结
(包括遵守纪律、增长知识、动手能力、独立工作、团队协作等方面)
经过这几周的实习,发现.net远远不像以前想的那么简单,那么容易学、尤其是对它的掌握,其实专业语言对我们来讲,就是一门技术活,你不去深入的了解它,理解它,最后什么也弄不明白。
对于我们初学者来讲,出了掌握基础理论知识外,还要多注重实战演练,这样我们才能够更深层次的了解他、掌握它,才能更好的让它融入到我们的这个领域。
指导教师
意见
实习单位
意见并盖章
(院内实习由系签署)
考核等级
目录
1实习目的1
2实习概况1
2.1实习要求1
2.2实习时间2
2.3实习环境2
2.4开发环境2
3实习内容2
3.1.net常用框架介绍3
3.1.1MicrosoftVisualStudio2008简介3
3.1.2MicrosoftSQLServer2008简介4
3.1.3Spring框架简介4
3.1.4Nhibernate简介5
3.1.5、NHiberante的优缺点7
3.2S和NHibernate的配置8
3.2.1添加程序集的引用8
3.2.2配置S和HNibernate9
3.3数据库设计11
3.4数据库连接配置11
3.5系统登录页面及其验证13
3.5.1登录页面13
3.5.2验证码18
3.6项目信息管理20
3.6.1用户信息管理如下:
20
3.6.2添加用户信息21
3.6.3修改信息21
4实习心得25
1实习目的
1.通过顶岗实习,锻炼我们的实践能力,提高我们的动手能力,所学的专业理论知识与实践紧密结合起来,培养实际工作能力与分析能力,以达到学以致用的目的。
2.通过顶岗实习让我们能够与不同层次的客户交流,这样可以增强我们的社交能力和沟通能力。
3.通过在实际工作可以让我们学习到很多学校不能学到的知识,以及增强了我们的社会实践经验,为我们以后走上正式工作做必要的准备。
4.通过本次实习使我能够亲身感受到由一个学生转变到一个职业人的过程。
2实习概况
2.1实习要求
现在对于我们来说,才接触.net并不是要求马上就能上手。
因为它作为一门开发语言来讲本身对于我们来说是具有一定难度的。
所以我们才要花更多的时间深入的去了解它、掌握它,达到学以致用的效果。
在公司老员工的带领下完成项目开发准备工作、了解该公司的项目开发流程和基本开发框架,从而为以后工作做铺垫。
因为现在我们不是求的一份工作,而是求的一份融入.net开发的过程。
2.2实习时间
2012年12月10日至2013年1月18日
2.3实习环境
2.31实习单位:
重庆大佳软件技术开发有限公司
2.32公司背景:
重庆大佳软件技术开发有限公司(ChongqingPublicSoftwareDevelopmentCO.,LTD)主营业务是以电信运营商的计算机软件产品开发和服务为主的高科技企业。
公司信守“诚实守信”的原则,把“大佳软件,服务大家”作为我们的目标,公司愿与你们进行广泛合作,一起同创美好的明天。
2.4开发环境
◆操作系统(WindowsXP)
◆数据库系统(SqlServer2008)
◆开发工具(MicrosoftVisualStudio2008)
◆客户浏览器(google)
◆开发语言(.net)
3实习内容
现在对我们10届应届毕业生来讲,首先面对的是找工作问题。
在这期间我们通过各种渠道寻找适合我们的工作,不过现实是残酷的,这个都懂。
屡遭几次失败后。
也许是坚持的原因吧,最后不知不觉来到了大佳软件技术开发有限公司,开始了我大学生涯的一次定岗实习。
对于应届毕业生来讲,无论是不是与专业相关的工作,现在都可以去尝试尝试,随着工作类型的逐步改变,我们在社会中的地位也会发生相应的变化,因为只有在不同领域中发展才能提高自己,俗话说:
“不要再一颗树上吊死”,也许是这个理由吧。
对我而言出去实习是一件幸事,因为只有通过实际的工作,才能了解到社会实际工作的需要,使得自身学习目的更为明确,从中得到更多收获。
现在在重庆大佳软件技术开发有限公司从事的是.net开发工作主要是面向CS模式的开发,下面来讲解讲解这几周在公司的实习成果吧。
3.1.net常用框架介绍
首先对我们公司现在使用的常用开发工具做个简单的介绍。
现在我们主要涉及到的开发软件是MicrosoftVisualStudio2008或MicrosoftVisualStudio2010、MicrosoftSQLServer2008(数据库管理软件)或Oralce。
其次是.net企业架构设计主要有:
hibernate方法的使用,叫Nhibernate,hibernate是一种简化程序的方式、与Spring一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
3.1.1MicrosoftVisualStudio2008简介
MicrosoftVisualStudio2008是面向WindowsVista、Office2007、Web2.0的下一代开发工具,代号“Orcas”,是对VisualStudio2005一次及时、全面的升级。
3.1.2MicrosoftSQLServer2008简介
而SQLServer2008在Microsoft的数据平台上发布,帮助您的组织随时随地管理任何数据。
它可以将结构化、半结构化和非结构化文档的数据(例如图像和音乐)直接存储到数据库中。
SQLServer2008提供一系列丰富的集成服务,可以对数据进行查询、搜索、同步、报告和分析之类的操作。
数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,您可以控制数据而不用管数据存储在哪里。
SQLServer2008允许您在使用Microsoft.NET和VisualStudio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过MicrosoftBizTalkServer进行的业务流程中使用数据。
信息工作人员可以通过他们日常使用的工具直接访问数据。
SQLServer2008提供一个可信的、高效率智能数据平台,可以满足您的所有数据需求。
3.1.3Spring框架简介
简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,Spring是一个开源框架,它由RodJohnson创建。
它是为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
Spring框架——Spring可以将简单的组件配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。
Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。
所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。
它们也为Spring中的各种模块提供了基础支持。
Spring框架的7个模块如下图所示:
Spring框架图
3.1.4Nhibernate简介
NHibernate是一个面向.NET环境的对象/关系数据库映射工具。
对象/关系数据库映射(object/relationalmapping,ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去。
在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦和浪费时间的。
而NHibernate不仅仅管理.NET类到数据库表的映射(包括.NET数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和ADO.NET处理数据的时间。
NHibernate的目标主要是用于与数据持久化相关的编程任务,能够使开发人员从原来枯燥的SQL语句的编写中解放出来,解放出来的精力可以让开发人员投入到业务逻辑的实现上。
对于以数据为中心的程序,开发人员往往是在数据库中使用存储过程来实现商业逻辑,这种情况下NHibernate可能不是最好的解决方案,但对于那些基于.NET,并且能够实现OO业务模型和商业逻辑的中间层应用,NHibernate是最有用的。
NHibernate可以帮助用户消除或者包装那些针对特定厂商的SQL代码,并且帮用户把结果集从表格式的表示形式转换成一系列的对象。
NHibernate是一个基于.Net的针对关系型数据库的对象持久化类库。
NHibernate来源于非常优秀的基于Java的Hibernate关系型持久化工具。
NHibernate从数据库底层来持久化你的.Net对象到关系型数据库。
NHibernate为你处理这些,远胜于你不得不写SQL去从数据库存取对象。
你的代码仅仅和对象关联,NHibernat自动产生SQL语句,并确保对象提交到正确的表和字段中去。
3.1.5、NHiberante的优缺点
优点:
(1).面向对象:
NHiberante的使用时只需要操纵对象,使开发更对象化,抛弃了数据库中心的思想,完全的面向对象思想。
(2).透明持久化:
带有持久化状态的、具有业务功能的单线程对象,此对象生存期很短。
这些对象可能是普通的POCO,这个对象没有实现第三方框架或者接口,唯一特殊的是他们正与(仅仅一个)Session相关联。
一旦这个Session被关闭,这些对象就会脱离持久化状态,这样就可被应用程序的任何层自由使用。
(例如,用作跟表示层打交道的数据传输对象。
)
(3).它没有侵入性,即所谓的轻量级框架。
正因为它具有透明持久化的优点,它才没有侵入性,才是一个轻量级框架。
恒定一个框架为重量级、还是轻量级,是根据其侵入性而定夺的。
而NHibernate就是一个轻量级ORM框架。
(4).较好的移植性:
支持多种数据库,便于数据库的迁移。
(5).缓存机制:
提供一、二级缓存和查询缓存。
(6).开发效率:
众所周知,使用NHibernate可以简化程序开发,从而达到快速开发的目的。
作为软件公司,项目管理的关键就是控制开发成本。
正因为使用NHibernate后所写的代码量减少了,相对于原先使用“SqlHelper、DAL、BLL”开发程序的项目周期缩短了,成本就降低了。
缺点:
(1).内存消耗:
直接使用“SqlHelper、DAL、BLL”无疑是最省内存的。
使用NHibernate后,内存开销比较大,这点是毋庸置疑的。
(2).批量数据库的处理:
由于NHibernate是基于面向对象的ORM框架,处理数据库的方式是针对单个对象的。
对数据库的增、删、改都是正对一条记录而言。
对于批量修改、删除数据,不适合用NHiberante。
这也是所有OR框架弱点,其原因,我认为是在于与缓存机制的冲突。
(3).较多使用数据库特性时,也不适合使用NHiberante。
如数据库中大量的存储过程、触发器、特点的SQL语句。
(4).表关系比较混乱时也不适合使用NHiberante。
NHibernate只适合于表与表的关系比较明确的环境中。
如本应该建立外键的,没有建立外键。
这时使用NHiberante不仅没有减少工作量,反而增加了工作量。
3.2S和NHibernate的配置
3.2.1添加程序集的引用
首先,我们需要在网站中添加对于Spring.NET和NHibernate程序集的引用,其中我们使用Spring.NET和NHibernate框架经常用到的几个文件:
NHibernate.bll、Iesi.Collection.dll
Log4net.dll、Common.Logging.dll(必要)
Spring.Core.dll(必要)、Spring.Data.dll
Spring.Aop.dll(可选)、Spring.Data.NHibernate21.dll
Spring.Web.dll、Spring.Core.dll是整个Spring.NET的核心程序集,而Spring.Web.dll则对于网站开发提供支持。
3.2.2配置S和HNibernate
为了在启动网站的时候,能够自动创建Spring.NET的应用程序环境,需要在网站的配置文件web.config中进行设置加载.xml配置文件。
具体如下
说明:
上图Bin文件中导入的是Spring.NET和NHibernate框架中常用到的几个文件。
该项目的具体层次结构如上图所示;
1、app.config或web.config文件
xmlversion="1.0"encoding="utf-8"?
>
--将self.xml和.NHibernate.xml文件嵌入到app.config文件中去-->
//Model/Entity/self.xml"/>
//Web/Entity/NHibernate.xml"/>
//spring/objects"/>
2、xml文件
Self.xml文件定义如下:
xmlversion="1.0"encoding="utf-8"?
>
NHibernate.xml文件如下
xmlversion="1.0"encoding="utf-8"?
>
--普通配置文件,使用程序集加载映射文件-->
nhibernate-configuration-2.0">
--属性-->
NHibernate.Connection.DriverConnectionProvider
NHibernate.Driver.SqlClientDriver
—数据库连接字符串-->
server=localhost;database=user;uid=sa;pwd=dajia;
false
NHibernate.Dialect.MsSql2000Dialect
true
true1,false0,yes'Y',no'N'
--映射文件-->
--程序将加载DDLLY.MyDoc.NHibernateTest.Configuration命名空间所有的映射文件(*.hbm.xml)-->
3.3数据库设计
图表3.3用户信息表
3.4数据库连接配置
通常我们做.net项目时一般是在web.config配置文件里设置的具体配置如下。
1、在Web.config里面配置连接数据库字符串:
—其他配置文件-->
—定义databaseSeting字节符-->
--数据库连接字符串-->
—其他配置文件-->
2、在userInfo.xml里面配置数据库映射文件
xmlversion="1.0"encoding="utf-8"?
>
nhibernate-mapping-2.2"assembly="Model"namespace="Model">
相应的NHibernate.xml配置文件同上3.22中S和HNibernate配置。
具体项目结构如下:
图表3.41项目具体结构
说明:
该项目介绍的是表单简单应用。
该表通过对数据进行访问获取最新数据填充数据表。
其中定义了添加((insert)、删除(delete)、修改(updata)等功能;
图表3.42具体操作界面设计
3.5系统登录页面及其验证
3.5.1登录页面
在这登录页面主要涉及了登录时,各文本框焦点的的获取、登录信息验证及验证码的获取。
系统登录Web页面如下图:
图表3.5.1登录信息
1、验证用户信息
检测数据的有效性,在登录前判定用户名是否为空,并给出相应的提示操作,具体实现代码如下:
if(txtUserName.Text.Trim().Length==0)
{
JavaScript.alert("用户名不能为空!
",this.Page);
return;
}
验证效果如下:
该操作时对用户信息的检测,根据相应的效果提示错误信息。
当点击确定后又回到相应的登录页面。
图表3.5.2用户名错误提示
2、用户密码提示
这里对登录密码进行判定,在密码为空的情况下给出相应的操作提示。
在用户名不为空的情况下,点击登录按钮是加载的事件部分代码如下:
if(txtPWD.Text.Trim().Length==0)
{
JavaScript.alert("密码不能为空!
",this.Page);
return;
}
具体效果如下:
图表3.5.3判断密码不为空
3、验证码判断
这里对登录时验证码进行判定,在验证码为空的情况下给出相应的操作提示。
在用户名和密码不为空的情况下,点击登录按钮是加载的事件部分代码如下:
if(txtCheckCode.Text.Trim().Length==0)
{
JavaScript.alert("验证码不能为空!
",this.Page);
return;
}
具体效果如下:
图表3.5.4验证码判定
4、登录信息验证
这里对登录信息进行判定,在用户名、密码、验证