基于.NET的海运基础信息平台研究和实现硕士学位论文.doc_第1页
基于.NET的海运基础信息平台研究和实现硕士学位论文.doc_第2页
基于.NET的海运基础信息平台研究和实现硕士学位论文.doc_第3页
基于.NET的海运基础信息平台研究和实现硕士学位论文.doc_第4页
基于.NET的海运基础信息平台研究和实现硕士学位论文.doc_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学校代码:10254密级: 论文编号:上海海事大学SHANGHAI MARITIME UNIVERSITY硕士学位论文MASTER DISSERTATION论文题目:基于.NET的海运基础信息平台研究和实现学科专业:作者姓名:指导老师:完成日期:4毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日指导教师评阅书指导教师评价:一、撰写(设计)过程1、学生在论文(设计)过程中的治学态度、工作精神 优 良 中 及格 不及格2、学生掌握专业知识、技能的扎实程度 优 良 中 及格 不及格3、学生综合运用所学知识和专业技能分析和解决问题的能力 优 良 中 及格 不及格4、研究方法的科学性;技术线路的可行性;设计方案的合理性 优 良 中 及格 不及格5、完成毕业论文(设计)期间的出勤情况 优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)指导教师: (签名) 单位: (盖章)年 月 日评阅教师评阅书评阅教师评价:一、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格二、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格建议成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)评阅教师: (签名) 单位: (盖章)年 月 日教研室(或答辩小组)及教学系意见教研室(或答辩小组)评价:一、答辩过程1、毕业论文(设计)的基本要点和见解的叙述情况 优 良 中 及格 不及格2、对答辩问题的反应、理解、表达情况 优 良 中 及格 不及格3、学生答辩过程中的精神状态 优 良 中 及格 不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优 良 中 及格 不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优 良 中 及格 不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优 良 中 及格 不及格2、论文的观念是否有新意?设计是否有创意? 优 良 中 及格 不及格3、论文(设计说明书)所体现的整体水平 优 良 中 及格 不及格评定成绩: 优 良 中 及格 不及格(在所选等级前的内画“”)教研室主任(或答辩小组组长): (签名)年 月 日教学系意见:系主任: (签名)年 月 日摘 要本课题针对我国海运行业业务面广,业务流程变化快,数据量大,业务系统开发工作量大、周期长以及业务数据的共享、抽取、分析,完整性、安全性的保持及高效的事务处理等问题提出了一个切实可行的适合中小型海运企业信息化解决方案的海运基础信息平台CSIMS,以满足海运企业提高本身经营、管理等的效率和市场竞争力的迫切需要。本文介绍基于.NET技术的、多层架构的海运基础信息系统平台CSIMS核心框架的设计实现及使用的关键技术。通过对海运企业主要业务流程现状进行调研建立业务模型,经过对业务模型分析研究进行业务重组,设计实现了海运信息平台的六个核心业务子系统:基础管理系统、个人事务管理系统、客户关系管理系统、航线管理系统、船舶管理系统和决策支持系统。本文将着重介绍CSIMS平台的两个底层框架:带来显著开发效率提升的CSIMS ORM 持久层框架和灵活的安全框架模型的设计策略。面向对象的组件化设计思想贯穿于整个研究过程。作者参与了此平台的一个商业实例的设计和实施的全过程。作者研究了ADO.NET的数据访问策略和ASP.NET技术,利用.NET平台的便利、快捷以及与XML技术的结合,设计实现了数据持久层框架CSIMS ORM Framework,其通过对ADO.Net的高层封装实现了数据库无关性、业务代码和数据访问代码的解耦合、简单易用等特点,提高了代码质量和开发速度。接着讨论对海运企业信息安全至关重要的访问权限控制系统的实现方法和工作原理。其实现了基于User-Role方式和基于LDAP方式的灵活严谨的权限管理策略。全文共分六章。第一章为引言,介绍本课题研究背景、当前海运企业信息化现状、系统平台架构技术的发展以及在实现海运基础信息平台CSIMS中涉及到的相关技术;第二章介绍了CSIMS的逻辑分层模型、总体设计框架和核心业务功能子系统;第三章详细介绍了CSIMS的数据持久层CSIMS OEM Framework的设计思想和实现;第四章介绍了CSIMS的安全框架模型的设计策略、工作原理和实现方法;第五章介绍了CSIMS平台开发设计原则;第六章对本课题的研究工作进行了总结并指明了下一步工作方向。关键词:.NET框架,多层架构,商业逻辑,数据持久层,组件化,安全拦截器ABSTRACTFor a shipping company, its very quick to create a new operation and very frequent to change their current operations and normally a business operation can be done by collaborating with other departments. So these companies need a computer system with good framework to provide rapid development ability, flexible ability, so that they can support their business operation fluently and change as demand. CSIMS Platform is a good platform providing such abilities and has good technical components such as CSIMS ORM Framework and CSIMS Security Aspect and Enterprise Bus Support for integrating. Also CSIMS has developed some business functions for Small-Medium shipping company and its very easy to add new operation support and integrate them. It can be used as a basic platform for shipping company.The thesis gives a brief introduction to the design methods of the .NET based and multi-tier distributed application-CSIMS architecture, technologies for the implementation of the system, and system function modules. After researching current shipping business procedure we built some business modules and rebuilt business flow so that it can be more fluent, logical and adaptive to future development. The core business function system of CSIMS has six subsystems: basic management system, individual affair management system, custom relationship management system, flight course management system, shipping management system and decision-making system. The author puts emphasis on the description of the CSIMS architecture, CSIMS ORM Framework design methods and access control system. Object-oriented analysis and design run through the whole research and the author was also involved in a business applications design and implementation. The author lucubrated ADO.NET data access strategy and ASP.Net technology, and draw a schema of a data persistence framework - CSIMS ORM Framework, which has excellent API design and performance. Besides, focused on specification of CSIMS access control system, which provides User-Role based and LDAP based access control. The thesis is composed of six chapters. The first chapter introduces the background of this thesis, the state of the art of enterprise application platform and related technologies for implementing of multi-tier distributed application; Chapter two focused on specification of CSIMS architecture, multi-tier architecture and function implementation each tier, and describing function systems; Chapter three explains the design and implementation details of .NET platform based CSIMS ORM Framework a data persistence implementation strategy; CSIMS access control system which provides User-Role based and LDAP based access control is discussed in Chapter four; in chapter five, the design patterns are involved in CSIMS implementation, that contribute to perfect high level structure and efficient code implementation; In the last chapter, the author concludes the whole research and gives the prospect of the system application.Yanni Wu (Computer Application Technology) Directed by Prof. Kangchen ShenKEYWORDS:.NET, Multi-tier Framework, Business Logic, Data persistence, Component Model, Security interception 75目录第一章 引言11.1 课题研究背景11.2 海运行业信息化现状及存在的问题11.3 信息平台技术的发展31.3.1 平台化软件31.3.2 应用软件体系结构发展41.3.3 平台软件的设计要求51.4 本课题研究的目标与意义61.5 主要的相关技术71.5.1 .NET技术71.5.2 ASP.Net 技术及C#91.5.3 ADO.NET技术101.5.4 基于.NET的服务器控件技术111.5.5 XML技术12第二章 海运基础信息平台(CSIMS)体系结构142.1 CSIMS平台设计目标142.1.1 平台服务不断改进的目标 29 32142.1.2 CSIMS平台设计目标142.2 CSIMS平台的逻辑分层结构162.2.1 分层结构图162.2.2 CSIMS分层设计思想172.2.3 CSIMS逻辑层面功能介绍182.2.4 CSIMS平台总体逻辑结构212.3 CSIMS 平台系统功能设计实现222.3.1 CSIMS平台功能模块组成222.3.2 基础平台管理系统242.3.3 个人事务管理子系统262.3.4 客户关系管理子系统272.3.5 航线管理子系统292.3.6 船舶管理系统302.3.7 决策支持系统32第三章 CSIMS数据持久层设计与实现343.1 引入CSIMS ORM Framework的原因343.1.1 什么是持久层343.1.2为何引入持久层343.2 CSIMS ORM Framework功能343.3 CSIMS ORM Framework实现353.3.1 整体架构概览:353.3.2 实现数据库无关373.3.3 定义映射关系383.3.4 体现映射关系403.3.5 读取映射关系413.3.6 核心数据处理模块实现413.3.7 事务管理功能443.3.8 持久化数据对象高级控制功能453.3.9 查询功能实现463.4 CSIMS ORM Framework特点46第四章 CSIMS安全控制系统设计和实现484.1 权限访问控制494.2 CSIMS可插拔式安全系统架构设计514.2.1 Authentication模块设计534.2.2 Access control模块设计544.3 CSIMS安全拦截器设计与实现56第五章 CSIMS平台设计原则595.1 CSIMS平台设计原则595.1.1 开闭原则(OCP)595.1.2 替换原则 (LSP)605.1.3 依赖原则 (DIP)615.1.4 接口分离原则(ISP)62第六章 结论与展望65本文所做的工作65本文研究工作的意义65下一步研究计划66系统的应用前景67致谢68参考文献69基于.NET的海运基础信息平台研究与实现第一章 引言1.1 课题研究背景科学技术的高速发展、计算机在全社会各个领域广泛应用的今天,人类已进入信息社会的时代,一个企业能否利用计算机技术、信息网络技术等现代化的手段服务于自身管理,几乎决定着它是否能够适应当今社会的发展。特别在中国加入WTO后,市场竞争日益激烈,如何通过现代的信息化技术,来提高本身生产、管理、销售等的效率,提高企业的竞争能力,是企业刻不容缓的需求。海运系统作为传统的物流服务业,随着全球经济一体化趋势的进一步发展和电子商务时代的到来,在获得了一个蓬勃发展机遇的同时将面临更加残酷的市场竞争环境.海运企业要想在日趋激烈的市场竞争环境中存活并进一步发展,只有对内进行有机整合,对外寻求强强联合,充分发挥整体功能和规模优势,延伸服务内容以提高利润空间.而无论是”整合”还是”联合”都强调资源的最佳配置和利用。这就对企业的信息化建设的力度,信息化应用水平提出了较高要求。 随着市场竞争的加剧,以及合作伙伴对物流企业响应速度、准确性需求不断提高,采用简单的数据录入、输出的信息管理手段已经无法实现良好的信息管理效果,物流企业的信息化已经开始从硬件和数据库建设为主向智能化程度更高的软件应用方向发展。同时,物流行业地域分布广、信息系统众多,系统之间互联互通、即时共享的需求也十分明显,因此,系统整合也成为了一种必然趋势。但是在海运企业的实施信息化的过程中,普遍遇到异构的软硬件平台、分布的数据资源与业务系统,以及难于扩展和适应需求变化等问题。1.2 海运行业信息化现状及存在的问题经过研究和实地调查,我们发现我国海运行业信息化存在以下特点和问题 42 45:1)我国海运行业已普遍使用计算机处理业务. 公司内部建有局域网,通过专线与总公司或者分公司联结,并通过ADSL或者宽带等访问公网。由于公共基础设施和内部网的建设,一般海运企业都已具备了基本的信息处理环境 ;2)大部分公司已经建设起一些满足单项业务需要的各自独立的应用软件如:船舶管理系统,单证管理系统,港使费管理系统,人事考核系统,财务管理等业务软件。但其中多数建立在老的平台上,使用不便;有些企业核心业务,如航运管理等尚未开发;一些基本的应用,如部门或岗位之间交换数据,发送通知和电子邮件等尚不能进行,没有形成企业的内部网;3)大部分已实施的计算机系统只能做一个业务流程中一个或几个业务环节的工作,不能完成整个业务流程;整个业务流程的大部分环节需要大量的人力投入手工完成大部分操作,这就形成公司业务的“瓶颈”,大大制约公司业务的发展。4)这些应用软件都有自己的数据库或文件,一般不能实时共享;这就会造成数据重复输入的情况。同时,各系统间的“数据口径”不同,系统之间要进行“多对多”的数据交换十分困难,形成“信息孤岛”;各部门对自己数据库中数据的随时更新,也可能造成公司内部数据失去了“一致性”和“完整性”,随着海运企业对计算机系统依赖的加深,这种现象会导致公司业务的混乱。5)由于各个应用系统是由不同的服务提供商,使用不同的技术在不同的时间提供的,没有统一的平台、设计和标准,已经对公司的业务带来困难。在实际工作中因为不同的应用系统常需跨不同的主机、或不同的操作系统(OS)、而因DOS Memory的限制、某些部门的工作人员每次转换作业都需要重新开机或使用两台以上计算机来作业十分麻烦。举例来说,货载信息审核作业是使用HP3000上的系统、电报前端作业是使用Clipper来开发的系统而文书处理又是使用Office 4.0,常常得打开HP3000主机上的应用系统,取得数据后再关掉系统转换至电报系统上回电报,很多应用系统是在DOS环境下完成的,若又需使用电子表格(EXCEL)或是文件撰写排版(WORD) 等工具又要重新进入Windows 环境,如此切换作业对于工作的效率与情绪都有不良的影响。6)这些信息系统主要满足业务操作需要,对管理层的支持较少,对决策分析的贡献更少;信息系统没有或基本没有反映企业领导对本企业管理的模式、企业发展目标的支持。信息系统难以跟上企业业务发展、企业重组和企业流程再造的步伐,逐渐会成为制约企业发展的因素之一;信息系统主要为企业内部管理服务,很少面向市场,面向客户、面向合作单位,难以向电子商务过渡。7)有一定的硬件:用局域网连起来的几台服务器和若干微机。一方面这些设备并没有发挥其全部作用,例如支持企业的内部网;另一方面,这些设备又不足以满足目前业务应用的需求,例如业务数据如在网上流动,则速度会较慢;同时,没有足够的服务器支持各类业务数据的存储和管理。8)企业深切体会到了信息化的重要性,但如何建设和应用信息技术为公司服务的具体方案很难拿出;对信息技术的把握和管理还没有形成科学的制度和规章。包括管理和利用企业信息资源: 大量的数据 计算机系统 技术力量等中高级人才的不足和对信息化的认识深度有限,信息技术工作并没有在企业的规划和具体工作计划中落实。所有这一切,都使企业面临一系列令人困惑的问题。提高认识,掌握企业信息化的规律,加大投入,建设队伍,形成相对稳定的合作伙伴关系,制订科学的发展规划和实施计划,是解决企业信息化问题的对策。1.3 信息平台技术的发展1.3.1 平台化软件平台化软件是指用来构建与支撑应用软件的独立软件系统。软件平台有两个基本要素,即支撑环境和开发体系,其中支撑环境是指应用软件系统开发与运行的基本条件,开发体系是指开发与维护管理应用软件的工具与方法。它又可以分为技术支撑型平台软件和应用实现型平台软件两种类型的平台。技术支撑型平台 为软件系统研发提供通用技术基础架构,主要面向软件开发人员,主要包含应用软件的运行支持体系和上层开发的工具,上层应用系统由用户进行研发。我们熟悉的有.Net、J2EE、IIS服务器等它们整合了丰富的组件和类库,另外还提供很多不错的技术框架,例如提供软件公司或企业进行二次开发的Library等这些功能如果不采用平台开发则需要用户自己编程实现。使用此类平台进行开发可以大大的提高系统的开发效率,并且降低系统出错的几率。应用实现型平台 指用来构建与支撑应用软件的独立软件系统。主要面向应用软件的终端用户。目前直接卖给终端用户的软件基本上都是应用实现型平台。一般来说,这种平台会对业务流程做很多抽象和假设,对目前已经存在的业务流程有一定的支持和抽象,一般只能依赖工作流技术对企业的业务进行有限的更改和变更支持。1.3.2 应用软件体系结构发展在应用软件技术发展的过程中,出现了四类比较重要的体系结构:单层结构、客户/服务器结构(富客户端结构)、三层(多层)结构和浏览器/服务器结构,它们都在各自的年代得到了非常广泛的应用。单层应用程序结构单层应用程序结构没有层次概念。通常一个应用程序包括了所有的用户界面、业务规则以及数据处理。单层应用程序结构由于包含了所有的应用逻辑,从后台最基本的数据处理,到前台对用户的响应以及处理结果的显示,所以应用软件往往比较庞大。单层应用程序结构不利于软件工程。软件生产过程中,在设计阶段,要求设计人员必须面面俱到,从复杂的逻辑结构中整理出程序设计文档;在开发阶段,软件开发人员之间的协作比较困难;在测试和维护阶段,对软件的局部变动可能会影响到整体;软件发布之后,为适应新的需求,在开发新版本软件时,往往全面调整甚至废弃原来大量的代码,所以单层软件的版本升级往往比较慢。其优点是程序的运行效率往往比较高,对用户的响应也比较快。客户/服务器结构客户/服务器结构把应用程序分成客户端程序和服务器端程序两部分。用户界面和业务规则在应用程序的客户端,数据维护在服务器端实现。业务逻辑放在数据库系统中,用存储过程来维护数据的系统结构即属于此类结构。在此类结构中如果把业务规则放在客户端,则往往是客户端非常笨重;如果把业务逻辑放在服务器端,往往难以实现数据库系统中实现复杂的业务规则。三层(多层)结构三层(多层)结构是指业务规则被单独提取出来,构成了中间层,形成真正的分布式应用系统。在多层应用结构(包括三层应用结构)中,客户层(也称为表现层)提供用户界面,它根据用户的操作作出相应的反应,它不能直接访问后台数据库;业务逻辑层是负责处理所有用户的请求,并把处理结果反馈给客户层;服务器层仍然提供数据库支持,称这一层为数据层。多层应用结构要求层与层之间必须有明确的接口定义,从而保证多层之间可以协作完成应用任务。业务层作为表现层和数据层的中间服务层,必须保证所有的业务逻辑被正确处理。该结构可将复杂的业务处理分割成相互之间可交互、调用和通信的若干业务功能部件或对象,并可将其分配到多个网络互连的应用服务器中间件上实现负荷的分担。三层(多层)结构可以运行在不同的机器上,如果应用的业务逻辑比较复杂,可以使用高配置的计算机来运行业务层。如果应用的数据量很大,可以采取分布式的数据库来存储数据。其次,只要层与层之间的接口保持不变,那么某一层的变化不会影响到其它层。浏览器/服务器结构在B/S结构中,客户端仅需要运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为对商业逻辑的调用,并交给应用服务器进行处理,应用服务器根据逻辑可以通过数据库服务器的辅助来处理这次请求,然后将处理后的结果返回给Web服务器,Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。在这种结构下,软件应用的业务逻辑完全在应用服务器端实现,用户表现完全在Web服务器实现,客户端只需要浏览器即可进行业务处理,是一种全新的软件系统构造技术。在B/S模式下,集成了解决企事业单位各种问题的服务,而非零散的单一功能的多系统模式,因而它能提供更高的工作效率。不仅可以实现大量信息的网上发布,而且能够为广大用户提供动态的信息查询和数据处理服务,进而加强企事业单位内部部门之间、上级部门与下级部门之间、企事业单位员工之间、企事业单位与客户之间以及企事业单位与企事业单位之间的信息交流,降低企事业单位的日常工作成本,提高企事业单位的经济效益。应用软件平台正发生着革命性的变革,这种变革与应用市场需求及其解决方案的多样性和复杂性是相辅相成的,今天的开发人员所面临的商用需求极具广泛性:1)将传统的客户机/服务器应用程序发展成多层应用程序,以胜任与企业级应用相适应的各种任务。2)利用Internet/Intranet技术,构建Web应用程序,解决新的需求。1.3.3 平台软件的设计要求1)具备灵活方便的二次开发能力,能够快速适应业务变更传统的平台管理软件大多脱胎于财务软件和业务管理软件的结合,这种结合不仅生硬、集成度不高,而且结构僵化、死板,无法适应千变万化的企业环境和需求,在客户化和二次开发过程时往往进度缓慢,实施困难。作为新一代软件系统,平台化软件则应该具备更好的应用开发和维护的工具和接口,实施时可以迅速根据用户的特点进行部署和二次开发,用户可以最大限度地使用贴近自身特点的管理软件。2)实现分布式应用系统传统的管理软件局限于内部的资源管理。平台化软件应该将整条产业链上的多家企业通过Internet和数据平台组成一个更加紧密的协同化生产组织,实现企业与企业之间的资源共享,疏通企业的各自的信息孤岛,实现各类功能互连、互通、互动的有效集成。过去以自身为主的企业与企业之间的竞争,转变成为协同化作业的企业链与企业链之间的竞争,极大地增强企业的竞争能力。3)不能对客户端访问方式做过多假设B/S结构具有免安装的特点,C/S则具有更高的安全性,不安装无法访问。只要能上网,就可以通过浏览器对B/S结构系统访问,输入帐号和密码后任意机器(如网吧)可以登录系统。所以,对于网上交易、门户网站,企业协作等可以采用B/S结构,但是对于重要的内部数据,如财务管理、物资管理等内部机密资料和数据,最好采用C/S结构,需要共享的数据可以通过服务发布的方式共享。但是无论B/S还是C/S结构,都应采用分布式结构,可远程网络访问,平台设计应该采用多层结构,层与层之间要尽可能的松耦合。这样也可以很好的支撑以后会出现的新的访问方式,例如RIA(富客户端)开发。1.4 本课题研究的目标与意义鉴于目前海运系统企业的信息化现状、业务发展特点:业务在探索中前进的,这部分的流程和需求是不固定的、无法预估的。而目前的管理软件和平台基本上以流程为导向,流程导向决定了流程基本上是固定的,清晰的,这样即使目前很适合企业的业务需要,很有可能不能快速适应新业务的开展。因而CSIMS海运信息平台设计成以高度可重用性的技术支撑平台为主并具备六大核心业务子系统的综合平台。此平台是以Microsoft.NET技术为基础的基于Internet /Intranet 技术的多层分布式的B/S软件平台。利用此平台可快速进行二次开发。CSIMS海运信息平台提供的功能完全可以作为一个技术支撑型的开发平台。良好的契约式组件开发模型,使得大量组件可以方便地集成于系统中;良好的分层架构使得系统各层各负其则,具有可伸缩性和扩展性;简单易用的功能强大的ORM 数据持久化框架,实现了数据库无关性和查询等数据处理功能;适合单条件及多条件综合查询的查询框架,满足了海运企业超大数据量的检索、查询和分析需要;以及独立的安全策略支持,提供灵活的授权机制和严谨的访问权限设定,满足了海运企业对安全性的要求;这些框架的支持使得基于CSIMS信息平台的业务系统开发的开发周期缩短,代码可读性增强,开发成本降低,稳定性和灵活性增强,而且通过企业总线更可以随时方便的进行各个业务组件之间的集成和协作,从而形成一个高度自主性的海运信息系统协作平台,能够适应海运企业变化快,需求变化快等特点,能够支撑海运业务的迅速开展。1.5 主要的相关技术本文介绍的基于.NET的海运系统信息平台是一个多层架构的分布式系统平台。此平台的设计和实现涉及到以下相关技术:1.5.1 .NET技术.NET Framework6 8 是一种新的计算平台,它简化了在高度分布式Internet环境中的应用系统开发。.NET Framework旨在实现下列目标:1)提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。 2)提供一个将软件部署和版本控制冲突最小化的代码执行环境。 3)提供一个保证代码(包括由未知的或不完全受信任的第三方创建的代码)安全执行的代码执行环境。 4)提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。 5)使开发人员的经验在面对类型大不相同的应用程序(如基于 Windows 的应用程序和基于 Web 的应用程序)时保持一致。 6)按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。 .NET Framework具有两个主要组件:公共语言运行库(CLR)和 .NET Framework类库。公共语言运行库是 .NET Framework 的基础。它提供核心服务(如内存管理、线程管理和远程处理),而且还强制实施严格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性。.NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI)应用程序,也包括基于 ASP.Net 所提供的最新创新的应用程序(如 Web 窗体和 XML Web services)。.NET Framework 可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.NET Framework 不但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。图1-1 显示了.NET框架的各个组成部分和它们之间的关系。公共语言运行期(Common Language Runtime,CLR)通过提供运行期执行环境,建立了.NET框架的基础。所开发的在此环境中运行的应用和组件称为托管(Managed)应用和组件。之所以称为托管,是因为CLR管理这些应用和组件中的代码的执行过程,并提供大量服务简化其开发和部署。CLR最主要的一个特征是其自动内存管理和垃圾回收功能。这一特征有助于集中实现组件行为而不用担心内存管理、内存分配相关的编程错误。图1-1 .Net 框架的逻辑视图CLR可以用具有良好设计的、简单直观的API或者基于构造的对象模型来表述组件功能,例如可以用元数据attribute说明性地描述属性、方法和事件。CLR另一个重要特征是一旦实现了组件,CLR就可以自动在一个或多个应用程序中应用,而不需要任何额外的注册。包含组件的配件可以按照并行的方式进行改版和部署。也就是说,CLR可以使多个版本的组件共存。这样就可以进一步开发和部署组件的版本而不会因为疏忽而破坏任何依赖于当前组件版本行为的现有应用程序。同时,CLR提供真正的语言互操作性。可以从任何.NET框架编程语言(如C#、Visual Basic .NET、Microsoft Jscript .NET和Microsoft Visual J#)中开发、使用和继承组件,这样组件开发者可以使用任何喜欢的语言开发组件。.NET框架类库位于CLR的上层,它用一种一致、直观的方式显示了类的丰富层次结构,其范围覆盖了大量不同应用程序和组件开发方案。通过提供共同的基础和可以让所有组件及应用程序共享的API,.NET框架类库真正实现了基于组件的编程。表示数据访问的ADO.NET层,作为System.Data命名空间和其子命名空间的一部分嵌入到.NET框架中。ADO.NET提供了对断开或离线缓冲的关系数据进行操作的能力。数据访问层能访问各类数据库引擎,对微软的SQL Server提供非常高性能的连接。XML层是ADO.NET层的对应层,包括了System.XML命名空间及其子命名空间中的类。XML层能有效地访问有结构和无结构的XML数据。此外,它还提供各种基于行业标准的实现如可扩展样式表语言转换(Extensible Stylesheet Language Transformations, XSLT)、XML路径语言(XPath)和XML模式(Schema)。这一层的类库也赋予了XML格式串行化对象的能力。GDI+层代表由System.Drawing命名空间和其子命名空间提供的面向对象制图和绘画功能,包含原始物体、向量技术和格式化文本,并能使用和创建不同格式的图像文件,包括JPEG、GIF、BMP和TIFF等。组件模型层由System.ComponentModel和System.ComponentModel.Design命名空间的类组成,提供把类转变成可设计的、定制的、串行和反串行的组件结构的设计工具。微软的Visual Studio .NET就是以此模型构建的。这一层使得不同应用开发技术能够共享类似的组件创建和技术以及设计模式。图11中的最顶层描述了应用开发技术:ASP.Net(Web Forms和XML Web服务)以及Windows Forms。即它提供基于.NET框架支持的图形化Win32客户端和服务器端应用程序开发。在System.Windows.Forms命名空间中实现的Windows Forms以开发Win32平台的应用程序为目标。而在System.Web命名空间和其子命名空间中实现的ASP.Net和Web Forms支持Web应用程序以及XML Web服务开发。1.5.2 ASP.Net 技术及C# ASP使得使用数据库的网站开发变得非常容易,但缺乏高级开发特性,如面向对象编程(OOP)、编译型代码、XML Web服务以及专门为Internet开发设计的语言类库等。为此Microsoft开发了一种新的基于Internet的Web应用程序开发的系统体系结构:.NET平台。而ASP.Net9 12继承了.NET框架的编程模型,是其中的一个核心部分。它是一个完整的、可扩展的Web应用程序开发框架,提出了一种用于创建内容丰富的动态网站、Web应用程序和XML Web服务的新型编程模型,与已往编程模型相比,它提供了基于组件的构架和开发范型。使用C# 的开发者可以方便的在Microsoft网络平台上扩展自己的应用。C#能将任何组件转变为WEB服务,并且可使之运行于Internet上的任何平台的任何应用调用,更重要的是C# 对这一特性提供了内置的支持。此外,Web Services框架可以让任何Web Services都看起来类似于C# 的内置对象,所以能让开发人员在开发过程中继续使用他们已经具备的面向对象的开发方法和技巧。.NET还在C中引入了零部件的概念,它们具有自描述的功能,通过自描述来确立了零部件的身份、版本、语言和数字签名等,并且不需要在任何地方注册;要扩展我们已经开发的程序只需要删除老的文件并用新的文件来升级它们,不需要注册动态链接库;升级软件组件的过程只是一个错误探测的任务,对代码的修改能够影响现存的程序,作为其开发语言之一的C#在语言中就支持版本修改,对界面和方法重载的支持使得复杂的程序框架能随着时间发展和进化。1.5.3 ADO.NET技术ADO.NET5 是专为基于消息的 Web 应用程序而设计的,同时还能为其他应用程序结构提供较好的功能。通过支持对数据的松耦合访问,ADO.NET 减少了与数据库的活动连接数目(即减少了多个用户争用数据库服务器上的有限资源的可能性),从而实现了最大程度的数据共享。ADO.NET 提供几种数据访问方法。在有些情况下,Web 应用程序或 XML Web Services 需要访问多个源中的数据,或者需要与其他应用程序(包括本地和远程应用程序)进行互操作,或者可受益于保持和传输缓存结果,这时使用数据集将是一个明智的选择。作为一种替换方法,ADO.NET 提供数据命令和数据读取器以便与数据源直接通信。使用数据命令和数据读取器直接进行的数据库操作包括:运行查询和存储过程、创建

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论