网上鲜花销售系统的设计与开发.docx
- 文档编号:6280794
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:24
- 大小:260.53KB
网上鲜花销售系统的设计与开发.docx
《网上鲜花销售系统的设计与开发.docx》由会员分享,可在线阅读,更多相关《网上鲜花销售系统的设计与开发.docx(24页珍藏版)》请在冰豆网上搜索。
网上鲜花销售系统的设计与开发
小型财务办公管理系统的设计与实现
摘要
随着计算机及网络在教学领域的不断应用,Web网上教材管理系统也得到了不断的发展和应用,作为网络教育支持平台中十分重要的组成部分,是网络教育教学反馈、质量评估的有效手段。
本文论述了教材管理系统的研究意义,重点讨论了教材管理系统的设计与实现。
该系统采用B/S模式,三层软件体系结构,运用ASP.NET动态网页语言、JavaScript脚本语言、CSS+DIV及SQLServer2000和VisualStudio2008等相关软件技术,实现了教材科管理端的系统设置、计划审批及教材审核、入库管理、出库管理、库存管理、教材费结算,院系用户端的计划编报、订单及教材发放单打印、本单位教材费查询,学生用户端个人教材费查询等功能。
教材管理的全部工作都可通过该系统在线完成,所有数据实时共享。
关键词
教材管理系统;三层架构;B/S模式
BasedonThree-tierArchitectureTextbookManagementSystem'sDesignandImplementation
Name:
CaoLi
Supervisor:
QianTao
SchoolofcomputerScience and Technology, Xianning College,
XianningHubei,437000,China
Abstract
Withcomputersandnetworksinthecontinuousapplicationofthefieldofteaching,Webonlinethetextbookmanagementsystemhasbeenconstantdevelopmentandapplicationofe-learningtosupporttheplatformasaveryimportantpartofteachingisthefeedbacknetwork,aneffectivemeansofqualityassessment.Thisarticlediscussesthematerialsmanagementsystemofmeaning,focusedonmaterialsmanagementsystemdesignandimplementation.Thesystemadoptsbrowse/servermode,three-tierarchitecture,exertstheActiveServerPages,JavaScript,CSSandDIV,theSQLserver2000andVisualStudio2008softwaretechnology.Thesystemrespectivelyrealizedhastaughtthetextbooksectionmanagementendthesystemestablishment,theplanexaminationandthetextbookverification,thewarehousingmanagement,thestorehousemanagement,thestockmanagement,thetextbookspendsthesettlement,thecourtyardisthesubscriber’spremisesplaneditsthenewspaper,therevision,theexaminationresulttoexaminethattheorderformandthetextbookprovidelistprinting,thisunittextbookspentininquiry,thestudentsubscriber'spremisestextbookselectsandpurchases,individualtextbooktospendfunctionsindependentlyandsooninquiry.Thetextbookmanagestheentirejobmaycompletethroughthissysteminthenetwork,alldatareal-timesharing.
Keywords:
TextbookManagementSystem;Three-tierArchitecture;B/SMode
1、绪论
1.1课题背景
1.2财务办公管理信息化研究现状分析
1.3开发财务办公管理系统的目的和意义
1.3.1财务办公管理模式的现状
1.3.2开发财务办公管理系统的重要意义
1.3.3本人所做的工作
2、相关技术介绍
本章概述:
本章主要对系统中使用到的主要技术进行了介绍,包括ASP.NET2.0框架结构、工作原理以及特点,NHibernate框架体系结构和ASP.NetAJAX框架。
2.1ASP.NET2.0技术介绍
自Microsoft公司于2000年6月在"论坛2000"上向全球正式推出Microsoft.NET以来,Microsoft.NET就成为整个IT业界极为关注的话题,越来越多的应用已经开始建立在.NET这种新的体系结构之上,并迅速成为信息化应用的潮流于方向[3]。
2.1.1ASP.NET2.0框架结构
ASP.NET2.0框架是继ActiveX技术之后,于2000年推出的用于构建新一代Internet集成服务平台的最新框架,这种集成服务平台允许各种系统环境下的应用程序通过因特网进行通信和共享数据。
目前,因特网服务器平台亟特解决的重要问题是系统间的互通性问题,一些相关协议如XML(extensibleMarkupLanguage,可扩展标记语言)、SOAP(SimpleObjectAccessProtocol,简单对象访问协议)等,.NET平台将这些协议提供支持,其意义可与当年Windows平台推出的意义相提并论,微软公司将其称为“.NET战略”。
也就是说,.NET的最终目的就是让用户在任何地方、任何时间,利用任何设备都能访问所需的信息、文件和程序。
用户不需要知道这些文件放在什么地方,只需要发出请求,然后只管接收即可,而所有后台的复杂性是完全屏蔽起来的。
同时,对于开发人员来说,更容易建立Web应用程序和Web服务,进一步简化对应用程序的开发。
ASP.NET2.0的三层结构如图2.1所示。
图2.1ASP.NET的三层结构
UI层负责与用户交互,接收用户的输入并将服务器端传来的数据呈现给客户。
业务逻辑层负责接收浏览器传来的请求并将请求传给数据层,同时将请求处理结果发给浏览器。
它由Web表单、XMLWeb服务和组件服务组成。
其中Web表单是ASP.NET应用程序的核心所在,它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的Web表单交互生成的信息和数据的基础。
数据层是通过ADO.NET操纵数据为事务逻辑层提供数据服务,如存储数据操作结果、返回数据检索结果等。
.NET框架具有两个主要组件:
公共语言运行库和.NETFramework类库。
公共语言运行库是.NET框架的基础。
从层次上来看,.NET框架包括三个主要组成部分:
公共语言运行时(commonLanguageRuntime,CLR或称公共语言运行库)、服务框架(ServicesFramework)和两类应用模板。
两类应用模板包括传统的Windows应用程序模板(Windows表单)和基于ASP.NET的面向Web的应用程序模板(Web表单和Web服务)[4]。
2.1.2ASP.NET2.0工作原理
ASP.NET的工作原理是:
首先,有一个HTTP请求发送到Web服务器要求访问一个Web网页。
Web服务器通过分析客户的HTTP请求来定位所请求网页的位置。
如果所请求的网页的文件名的后缀是aspx,那么就把这个文件传送到aspnet_isapi.dll进行处理,由aspnet_isapi.dll把ASP.NET代码提交给CLR。
如果以前没有执行过这个程序,那么就由CLR编译并执行,得到纯HTML结果;如果已经执行过这个程序,那么就直接执行编译好的程序并得到纯HTML结果。
最后把这些纯HTML结果传回浏览器作为HTTP响应。
浏览器收到这个响应之后,就可以显示Web网页。
2.1.3ASP.NET2.0的特点
ASP.NET2.0与以前的Web开发模型ASP相比,ASP.NET具有以下突出的特点。
(1)优良的性能
ASP.NET代码不再是解释型的脚本,而是运行于服务器端经过已经编译好的公共语言运行库(CLR)代码。
同时,ASP.NET可利用早期绑定、实时编译、本机优化和缓存服务来提高程序执行的性能,因此,大大提高了ASP.NET程序的执行效率。
(2)强大的开发工具支持
ASP.NET应用程序可用微软公司最新产品VisualStudio2008进行开发,VisualStudio.NET提供了强大、高效的.NET应用程序的集成开发环境,支持所见即所得、控件拖放和自动部署等。
使用VisualStudio.NET进行ASP.NET应用开发,可大大提高程序开发效率,并且简化程序的部署和维护工作。
(3)多种语言支持
目前ASP.NET支持完全面向对象的C#、VisualBasic.NET和Jscript.NET等
ASP.NET是语言独立化的(language-independent),即无论使用何种语言编写程序,都将被编译为中间语言。
所以,程序开发人员可以选择一种自认为最适合的语言来编写程序,或者用多种语言编写程序。
(4)自定义性和扩展性
ASP.NET设计是考虑了让开发人员可以在代码中自己定义“plug-in”模块,即ASP.NET可以加入自己定义的任何组件。
实际上,可以用自己编写的自定义组件扩展或替换ASP.NET运行库的任何子组件。
(5)安全性
ASP.NET借助内置的Windows身份验证和基于每个应用程序的配置,可以保证应用是安全的。
(6)清晰的程序结构
ASP.NET使用事件驱动和数据绑定的开发方式,将程序代码和用户界面彻底分离,具有清晰的结构。
另外,可以使用Code-Behind方式将程序代码和用户界面标记分离在不同的文件中,使程序的可读性更强。
另外,ASP.NET对ASP应用程序有着很高的兼容性,这保证了将ASP程序迁移到ASP.NET环境时,只稍做改动或不用修改仍能正常运行。
2.2ASP.NETAJAX介绍
MicrosoftASP.NETAJAX是Microsoft公司对Ajax技术的完美封装。
它能使你已快速的创建
包含丰富用户体验的用户界面的Web页面,提供加入了跨浏览器的ECMAScript(Javascript)和动态HTML(DHTML)技术的客户端脚本,并与基于服务器的ASP.NET2.0平台进行了集成。
它还对Javascript进行了非常巧妙的面向对象方面的扩展,以提供对客户端面向对象编程的支持;提供了与ASP.NET紧密结合的客户端/服务器端组件、类型的自动转换;自动为客户端暴露服务器端的代码的方法;为远程WebService提供本地客户端代理等许多优美的功能。
使用ASP.NETAJAX,可以提高应用程序的用户体验和效率。
ASP.NETAJAX由客户端脚本库和服务器端组件缓存,以提供一个健壮的开发框架。
除了ASP.NETAJAX以外,还可以使用ASP.NETAJAXControlToolkit和由社区提供的ASP.NETAJAXFutures的特性。
ASP.NETAJAX的架构如下图所示:
图1ASP.NETAJAX服务器和客户端架构
2.3NHibernate框架介绍
NHibernate是一个面向.NET环境的对象/关系数据库映射工具。
对象/关系数据库映射(object/relationalmapping,ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于
SQL的关系模型数据结构中去。
NHibernate不仅仅管理.NET类到数据库表的映射(包括.NET数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和ADO.NET处理数据的时间。
NHibernate的目标主要是用于与数据持久化相关的编程任务,能够使开发人员从原来枯燥的SQL语句的编写中解放出来,解放出来的精力可以让开发人员投入到业务逻辑的实现上。
对于以数据为中心的程序,开发人员往往是在数据库中使用存储过程来实现商业逻辑,这种情况下NHibernate可能不是最好的解决方案,但对于那些基于.NET,并且能够实现OO业务模型和商业逻辑的中间层应用,NHibernate是最有用的。
NHibernate可以帮助用户消除或者包装那些针对特定厂商的SQL代码,并且帮用户把结果集从表格式的表示形式转换成一系列的对象。
1.NHibernate体系结构
NHibernate体系结构如图2.2所示。
它体现了NHibernate如何使用数据库和配置文件数据来为应用程序提供持久化服务(和持久化的对象)。
图2.2NHibernate体系结构
在NHibernate全面解决体系中,NHibernate运行时体系结构的细节如图2.3所示。
图2.3NHibernate体系结构
SessionFactory(NHibernate.IsessionFactory):
它是Session的工厂,是ConnectionProvider的客户。
可以持有一个可选的(第二级)数据缓存,可以在进程级别或集群级别保存的可以在事物中重用的数据。
会话(NHibernate.ISession):
单线程,生命期较短的对象,代表应用程序和持久化层之间的一次对话。
封装了一个ADO.NET连接,也是Transaction的工厂。
保存有必需的(第一级)持久化对象的缓存,用于遍历对象图,或者通过标识符查找对象。
持久化对象(Persistent)及其集合(Collections):
生命期较短的单线程的对象,包含了持久化
状态和商业功能。
这些可能是普通的对象,唯一特别的是现在从属于且仅从属于一个Session。
一旦
Session被关闭,它们都将从Session中取消联系,可以在任何程序层自由使用(比如,直接作为传送到表现层的DTO,数据传输对象)。
临时对象(TransientObject)及其集合(Collection):
目前没有从属于一个Session的持久化类
的实例。
这些可能是刚刚被程序实例化,还没有来得及被持久化,或者是被一个已经关闭的Session实例化。
事务Transaction(NHibernate.ITransaction):
(可选)单线程,生命期较短的对象,应用程序用其来表示一批工作的原子操作,它是底层的ADO.NET事务的抽象。
一个Session在某些情况下可能跨越多个Transaction事务。
ConnectionProvider(NHibernate.Connection.ConnectionProvider):
(可选)ADO.NET连接的工
厂。
从底层的IDbConnection抽象而来。
对应用程序不可见,但可以被开发者扩展/实现。
TransactionFactory(net.sf.hibernate.TransactionFactory):
(可选)事务实例的工厂。
对应用程序不可见,但可以被开发者扩展/实现。
2.持久化类
持久化类是应用程序用来解决商业问题的类(比如,在电子交易程序中的Customer和Order)。
持久化类是暂时存在的,实例会被持久性保存于数据库中。
3.NHibernate映射
对象和关系数据库之间的映射是用一个XML文档(XMLdocument)来定义的。
这个映射文档被设计为易读的,并且可以手工修改。
映射语言是以.NET为中心的,意味着映射是按照持久化类的定义来创建的,而非表的定义。
在Hibernate中XML映射文档可以手动定义,也有一些工具来辅助生成,包括Xdoclet、Middlegen和AndroMDA,但是在NHibernate文档中并没有上述的辅助工具,不过可以采用MyGeneration这样的代码生成工具来生成XML配置文档。
3、财务办公管理系统的分析和建模
本章概述:
软件系统的需求分析是软件开发过程中极其重要的一步,需求分析的好坏直接影响着所开发的软件系统是否合理,是否符合用户的需要。
需求分析过程通常是从软件系统功能需求的调查研究入手,最终形成能够全面反映各部分功能要求的描述文档。
软件需求分析的目标是深入描述软件的功能和性能,确定软件设计的约束和软件同其它系统元素的接口细节,定义软件的其它有效性需求。
3.1系统概述
3.2系统目标和设计要求
本系统实现的目标是借助于Internet,使员工工资管理工作中的各个环节达到自动化、规范化、工资管理由复杂、繁琐转为简单快捷化。
从而达到在减轻财务人员的工作量的同时,又方便、快捷、准确的对员工资进行管理。
系统应具有以下设计要求:
1、实现对员工工资的全面管理
工资管理系统是一个综合性的人机交互系统,他专门针对农村工程承包的特殊流程和业务要求进行数据组织处理和信息调控,代替业务人员进行烦琐和重复性的工作。
使各级用户能够根据本系统顺利完成员工工资管理的有关工作。
2、扩充和维护容易
该系统采用了面向对象的开发思想,采用基于简单工厂的三层架构模式,可以降低层与层之间的依赖,利于各层逻辑的复用,同时数据访问层采用了Nhibernate框架,有利于数据库的移植操作。
另外,系统使用了运行日志管理,可以根据日志记录很容易的找出系统出现异常的原因,从而使得系统的维护变得简单。
3、数据打印和导出方便
该系统使用了微软的RDLC报表控件,查询出要打印的数据后,一键就可以实现打印或者导出,弥补了原有系统需要复制放到word里面再打印的缺陷。
3.3财务办公管理系统需求分析
本财务办公管理系统包括员工信息管理、工程信息管理、材料信息选购、材料购置开销管理、员工工作记录管理、员工工资支取管理、员工工资结算和盈亏统计管理。
财务办公管理系统结构图如图3.1所示:
图3.1财务办公管理系统结构图
3.3.1员工基本信息管理
员工基本信息管理模块是对员工基本信息进行管理,包括添加员工基本信息、修改员工基本信息、删除员工基本信息。
员工基本信息包括员工姓名、性别、家庭住址、联系电话、电子邮件等。
3.3.2工程基本信息管理
工程基本信息管理模块是对工程基本信息进行管理,包括添加工程基本信息、修改工程基本信息、删除工程基本信息。
工程基本信息包括工程名、所有人、投资额、动工日前、完工日期等。
3.3.3材料信息和开销管理
本模块主要是针对购买器材费用的管理:
材料基本信息管理和材料购买开销的增、删、改管理。
材料基本信息包括材料名称,价格等,购买材料记录信息包括购买数量、购买材料名称、购买人、购买时间等。
3.3.4员工工作记录管理
员工工作记录模块是对员工工作情况进行记录。
包括添加员工工作记录、修改员工工作记录、删除员工工作记录。
员工工作记录信息包括员工编号、工程编号、工作类型、日工资等信息。
3.3.5员工工资管理
员工工资管理包括员工工资支取管理和工资结算管理。
工资支取管理是对员工所支取的钱数进行管理。
工资结算是根据员工所作的工作金额和支取金额计算员工最终所得工资。
3.3.6权限管理
该系统主要是针对农村个体户建筑工程项目的工资管理。
只涉及员工和管理员。
员工可以查询自己所作工作记录情况和工资支取情况,并且可以打印账单。
3.4财务管理系统体系结构建模
3.4.1系统用例分析与设计
在工资管理系统中,参与的用户主要有两类:
管理员和员工。
他们有着不同的权限,完成不同的功能。
(1)该系统管理员总的用例图如图3.2所示:
图3.2工资管理系统管理员总用例图
(2)该系统员工用例图如图3.3所示:
图3.3工资管理系统员工用例图
(3)该系统管理员和员工关系用例图如图3.4所示:
图3.4工资管理系统员工用例图
3.4.2系统类图分析与设计
UML的静态建模机制包括用例模型、类和对象模型。
用例模型用于需求分析阶段,它的建立是系统开发者和用户反复讨论的结果,表明了开发者和用户对需求规格达成的共识。
UML中类有三种主要的类型:
边界类、控制类和实体类。
引入边界类、控制类及实体类的概念有助于分析和设计人员确定系统中的类。
边界类位于系统与外界的交界处,窗体、报表、以及表示通讯协议的类、直接与外部设备交互的类、直接与外部系统交互的类等都是边界类。
通过用例图可以确定需要的边界类,每个Actor/UseCase对至少要一个边界类,但并非每个Actor/UseCase对要唯一的边界类。
实体类保存要放进持久存储体的信息。
持久存储体就是数据库、文件等可以永久存储数据的介质。
实体类可以通过事件流和交互图发现。
通常每个实体类在数据库中有相应的表,实体类中的属性对应数据库表中的字段。
控制类是控制其他类工作的类。
每个用例通常有一个控制类,控制用例中的事件顺序,控制类也可以在多个用例间共用。
其他类并不向控制类发送很多消息,而是由控制类发出很多消息。
通过功能和用例分析,工资管理系统的实体类包括:
工程(Project)、员工(Employee)、工作记录(WorkRecord)、工资领取(Wage)、材料(Materials)、材料开销(MaterialsCost)、用户(Users)。
一个工程可以有多个员工工作,一个员工可以有多条工作记录,可以多次支取工资。
一件材料可以有多条材料开销记录。
系统静态类图如图所示。
4、财务办公系统的总体设计
本章概述:
本章对系统的总体设计思想,系统体系结构模型设计,系统开发环境和数据库设计进行了详细的描述。
4.1系统总体设计思想
本系统是为了实现工资管理的自动化和网络化,提高工资管理的工作效率而设计的。
其总体设计思路为:
1、系统采用B/S模式
以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet模式下数据库应用,相对易于把握、成本也是较低的。
它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。
2、采用面向对象的设计思想
本系统将采用面向对象的思想进行系统的开发,运用三层架构,方便系统开发,降低层与层之间的依赖,有利于标准化和逻辑的复用。
3、数据库可移植性
本系统数据持久层采用Nhibernate框架,它把表映射成对象,通过操作对象才操作数据,因为Nhibernate框架已经区分了数据库操作的不同,从而有利于数据库的移植操作。
4、界面美观,操作简单,操作人性化
本系统将采用ASP.NETAJAX技术和JavaScript技术,比如局部刷新、
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上鲜花 销售 系统 设计 开发