MVC在Web数据管理平台中的应用-毕业论文_第1页
MVC在Web数据管理平台中的应用-毕业论文_第2页
MVC在Web数据管理平台中的应用-毕业论文_第3页
MVC在Web数据管理平台中的应用-毕业论文_第4页
MVC在Web数据管理平台中的应用-毕业论文_第5页
免费预览已结束,剩余22页可下载查看

下载本文档

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

文档简介

厦门大学软件学院本科毕业论文本科毕业论文(科研训练、毕业设计)题 目:MVC在Web数据管理平台中的应用姓 名:学 院:软件学院系:专 业:软件工程年 级: 学 号: 指导教师(校内): 职称: 指导教师(校外): 职称: 年 月 日MVC在Web数据管理平台中的应用摘要 MVC即Model(模型)、View(视图)、Controller(控制器),是一种目前广泛流行的软件设计模式。MVC把一个应用的输入、处理、输出按照Model、View、Controller的方式进行分离,形成三个层模型层、视图层、控制层。模型表示应用的数据及操作这些数据的逻辑方法。视图将模型的当前状态展示给用户,具体的显示方法由视图负责,因此一个模型可以适用多个不同的视图。控制器负责交互和将用户输入的数据导入模型,它还利用用户的输入将应用转向其它视图。恒好公司(Good Forever)是厦门的一家贸易公司,我们开发的GF2000系统用作其统一的Web数据管理平台,根据公司的业务特点与业务流程,系统划分为:产品管理、项目管理、样品管理、定单管理、出货管理、收汇管理、系统管理共七个模块,每个模块对数据都有频繁的增加、删除、修改、查询操作,这些操作即MVC设计模式中的模型,必须与呈现给用户的界面即视图分离,实现当用户要求改变界面时不会影响到逻辑层的代码。关键词设计模式模型视图控制器Abstract MVC, which means Model, View and Controller, is a widely used design pattern. MVC separates the input, processing and output according to model, view and controller. It has three layers - model layer, view layer and control layer.Model represents the business data and the method to handle it. View shows the current state of model to the user, and it takes charge of how to display the content. So, one model may apply to many views. Controller is responsible for interaction and imports the data user input to the model. It can also turn the application to other view with the users input.Good Forever Co. is a foreign trade company in Xiamen. The system, named GF2000, is developed as its uniform data management platform on web. According to the business characteristic and flow, the system is divided into seven modules, product management, project management, sample management, order management, shipping management, remit management and system management. Each module has frequent operation on data, such as insert, delete, update and search. These operations, the model of MVC, must be separated from the user interface, and when user demand changing the interface it doesnt influence the model layer. Keyword design pattern model view controller目录第1章 引言1第2章 MVC概述22.1 Model(模型)22.2 View(视图)32.3 Controller(控制器)32.4 MVC设计模式小结4第3章 GF2000项目53.1 产品管理53.2 项目管理63.3 样品管理73.4 定单管理83.5 出货管理83.6 收汇管理93.7 系统管理10第4章 MVC在GF2000中的应用114.1 GF2000的Model(模型)114.2 GF2000的View(视图)114.3 GF2000的Controller(控制器)134.4 GF2000中如何实现MVC144.4.1 数据库字段表(Sys_Field)144.4.2 两个关键函数154.4.3 分离模型与视图17总结20致谢语21参考文献22厦门大学软件学院本科毕业论文第1章 引言MVC最初是在Smalltalk-80中被用来构建用户界面的,M代表模型Model, V代表视图 View, C代表控制器Controller。MVC的目的是增加代码的重用率,减少数据表达,数据描述和应用操作的耦合度。 同时也使得软件可维护性,可修复性,可扩展性,灵活性以及封装性大大提高。单用户的应用通常是以事件驱动的用户界面为组织结构的。开发人员用一个界面工具画了一个用户接口界面,然后编写代码根据用户输入去执行相应的动作,许多交互式的开发环境鼓励这么做,因为它强调先有界面然后再有功能。一些软件设计模式策略是这样的,然后经常将固定后的代码融入最后的系统当中。导致的结果就是,程序组织围绕用户界面元素和用户在那些界面元素上的动作,数据的存储,应用的功能以及用来显示的代码都杂乱无章的缠绕在一起。在单用户的系统里代码结构是可以这样的,因为系统需求不会频繁变化。但是对一个大的系统如大型Web系统,或电子商务系统来说就不太适用了。通过把数据模式从各种可以被存取和控制的数据中分离出来可以改善分布式系统的设计。MVC设计模式由三部分组成。模型是应用对象,没有用户界面。视图表示它在屏幕上的显示,代表流向用户的数据。控制器定义用户界面对用户输入的响应方式,负责把用户的动作转成针对Model的操作。Model 通过更新View的数据来反映数据的变化。恒好公司(Good Forever)是厦门的一家贸易公司,我们开发的GF2000项目为该公司提供一个统一的基于Web的数据管理平台,该平台应用MVC设计模式,很好地实现了表示层与逻辑层的分离,使该平台具有良好的可扩展性、可维护性。第2章 MVC概述MVC包括3种类型,Model(模型)是应用对象,View(视图)是界面对象,Controller(控制器)是用户界面对用户输入的响应。在MVC之前,用户程序的构建往往将这几部分混在一起,而MVC将它们分开了,以增加灵活性和复用性。MVC通过在模型和视图之间建立查询通告协议来协调显示和数据。图2-1是模型视图控制器交互的示意图。模型视图控制器选择视图用户动作、请求调用模型API查询模型状态通知视图,模型状态改变方法调用事件图2-1MVC模式2.1 Model(模型)模型表示应用的数据及操作这些数据的逻辑方法。任何和整个应用有关的持久性数据都应该放在模型中。对于模型,它所提供的API不能只针对某一个专门的视图或控制器,应该更一般化以适应不同客户的需求。一个应用的模型组件是最有价值的软件部分,模型包含着商业实体以及如何管理访问和修改数据的规则。这些工作在一个特定的场所完成,以维护有效数据的完整性,减少冗余,增强可重用性,这十分重要。模型必须与那些用作访问业务对象及其相关规则的客户端的具体类型无关,即模型必须具备分离于某个特定实例的通用性。因此,模型组件不应该意识到是何种类型的客户端或者框架在使用它。模型具有不同的含义,最普通的含义是表示事件的面貌。模型可以表示一个买卖货物的商店,可以表示一种预测是否会有暴风雪来的方法,或者是标价待售的房屋等。所有的这些例子都以实际概念为基础。创建一个模型的主要目的是帮助理解、描述或者模拟事物如何在真实世界中行动。2.2 View(视图)视图将模型的当前状态展示给用户,具体的显示方法由视图负责,因此一个模型可以适用多个不同的视图。在模型状态改变后,通过模型和视图之间的协议,视图得知这种改变并修改自己的显示。对于用户的输入,视图将它们交给控制器处理。通常意义上来说,视图表示在用户界面中模型的显示,在此,并非一个模型只能有一个视图,事实上,表示一个模型有多种不同的方式。如我们之前所了解的,模型包含持有应用程序状态的业务实体,打个比方来说,视图就是客户端能够用来窥见模型状态的“窗口”,通过不同的“窗口”来观察,获得的透视也就不同。可以设想由不同类型的客户端(例如一个无线设备),查看完全不同的一系列视图,但是仍然使用相同的模型。只要模型与表示层拥有合适的分离性,在相同的模型上就可以为任意数量的客户端构建任意数量的视图。在MVC模型中,V是模型的表示,提供用户交互界面。当模型状态改变时,视图应该得到通知,以便更新视图。2.3 Controller(控制器)控制器组件负责检测用户输入,为客户端选择下一个视图。控制器有助于将模型的表示层与实际的模型分离开来。这种区分将使用户在根据同一个模型开发不同类型的表示层时具有更大的灵活性。使用控制器这一概念是为应用程序的控制提供一个集中点,在此处所有的客户端请求都可以先进行处理。由于控制器在客户端的输入与模型间扮演着一个中间人的角色,控制器可以为每一个客户端请求提供一些公用的功能,如安全、日志以及一些其它重要的功能等。由于所有的请求都是通过控制器来过滤的,视图是与业务操作及其它的视图组件相耦合的,将哪个视图返回给客户端就完全由控制器来决定,这样做看起来可能并没有带来多少益处,但这样一来就可以使应用程序获得其它方法无法得到的弹性机制。控制器负责交互和将用户输入的数据导入模型,它还利用用户的输入将应用转向其它视图,一些非持久的临时数据也应该在视图中存取。2.4 MVC设计模式小结采用MVC有许多好处,其中一个就是显示、逻辑和数据分开,这样一方面的改变不会影响另一方面,比如原来用的是CLI(Command Line Interface),后来要改成GUI(Graphics User Interface),只要了解原来的模型和控制器的接口,然后构造GUI,把它按过去的协议和模型关联起来就可以了,这样做增加了组件的重用性和灵活性。假设针对某个模型数据开发了一套View,那么在其它访问该模型数据的地方,完全可以再次使用该套件或将现在的View组合成一个复合视图。每个单视图有自己和模型的连接协议和自己的响应控制器,这样开发就仅仅变成了简单的组合。其次,可以在不更改视图显示的情况下,更改控制器,以达到更改视图与用户交互的响应模式的目的。通常情况下,对于MVC模式,有一个事件通知机制在模型改变时通知视图,但对于Web应用,浏览器通常只保持无状态的连接,因此通知机制不是很容易实现。当然,应用可以执行更多的推操作,将数据推入客户端,但在Web应用中,大部分情况下,这样的方法是不可以或根本不可能实现的,因为用户可以随时关闭浏览器而服务器却不知晓,在服务器端管理远程客户端是高消耗的。对于标准的Web应用而言,客户需要向服务器发送另外一个请求来获取模型的变化。比如说,当一个用户在察看网上商店中一件商品的价格,同时,管理员改变了这件商品的价格,该用户必须刷新页面或购买该商品后才会发现价格改变了。MVC的设计实现并不十分容易, 理解起来比较容易,但对开发人员的要求比较高。MVC只是一种基本的设计思想,还需要详细的设计规划。 模型和视图的严格分离可能使得调试困难一些,但比较容易发现错误。经验表明,MVC由于将应用分为三层,意味着代码文件增多,因此,对于文件的管理需要费点心思。 综合上述,MVC是构筑软件非常好的基本模式,至少将业务处理与显示分离,强迫将应用分为模型、视图以及控制层, 使得你会认真考虑应用的额外复杂性,把这些想法融进到架构中,增加了应用的可拓展性。如果能把握到这一点,MVC模式会使得你的应用更加强壮,更加有弹性,更加个性化。第3章 GF2000项目恒好公司(Good Forever)是厦门的一家贸易公司,GF2000项目为该贸易公司提供一个统一的数据平台,以加强数据共享,提高工作效率,为公司决策提高量化数据。以改变该公司现有的以文件级共享为基础、大量手工操作为方法的低效信息共享方式。该数据管理平台主要涵盖系统管理模块与数据管理模块。通过系统管理模块,可提供对不同用户的访问权限控制。通过数据管理模块,可实现对客户与项目信息、定单、收汇及出货信息,以及产品与样品信息的实时跟踪与自动化管理。该数据管理平台可很大程度上加快信息交流速度与信息共享质量,从而提高公司工作效率。通过对该数据平台的设计与开发,有效组织公司的大量数据,实现办公的自动化,继而实现公司信息管理的系统化。通过对该系统的研究,形成一套针对于中小型的贸易型公司的数据管理平台的开发思路与模式。开发过程中形成高复用性模块,以加速今后类似数据管理平台的开发速度与质量。系统采用B/S结构,后台基于SQL Server 2000数据库,前台采用ASP开发,完成后的系统将可在浏览器上完成绝大部分的数据显示与操作,另外涉及到需要输出的文档均以文本文件、邮件、Word文档或Excel文档的形式,方便易用。根据公司的业务特点与业务流程,系统划分为:产品管理、项目管理、样品管理、定单管理、出货管理、收汇管理、系统管理共七个模块3.1 产品管理产品管理是GF2000的核心基础模块,系统所有的业务都将基于它而建立。它主要对应的是产品部门的工作,主要包括产品信息管理、配件管理,功能分解如图3-1所示。产品信息管理包括:产品类别维护、产品资料维护、产品目录维护、产品箱规维护。配件管理包括:配件类别维护、配件资料维护、供应商维护、出库单维护、生产计划单维护、采购建议、价格查询。产品管理产品信息管理配件管理产品类别维护产品资料维护产品目录维护产品箱规维护配件类别维护配件资料维护供应商维护出库单维护生产计划单维护采购建议价格查询图3-1产品管理功能分解3.2 项目管理项目管理是GF2000的基础业务模块,对应的是业务部门的日常工作。它基于产品管理的数据,记录与客户的每一次交互信息,主要包括客户管理、项目信息管理,功能分解如图3-2所示。客户管理包括:客户资料维护、客户联系人维护。项目信息管理包括:项目信息维护、项目阶段维护、项目产品维护、项目产品版本维护、产品报价维护、报价箱规维护。项目产品版本维护项目管理项目信息管理客户管理项目信息维护项目阶段维护项目产品维护产品报价维护报价箱规维护客户资料维护客户联系人维护图3-2项目管理功能分解3.3 样品管理样品管理对应的是样品室的工作,主要包括:样品信息管理、寄件管理,功能分解如图3-3所示。样品信息管理包括:样品信息维护、样品明细维护、样品图标维护。寄件管理包括:寄件信息维护、寄件明细维护。样品管理样品信息管理寄件管理样品信息维护样品明细维护样品图标维护寄件信息维护寄件明细维护图3-3样品管理功能分解3.4 定单管理定单管理是GF2000中核心业务模块,包含了所有的定单处理工作。根据定单的工作流程,可将其分为:定单信息管理、单证管理,功能分解如图3-4所示。定单信息管理包括:定单信息维护、定单产品维护、包装资料维护、出货图片维护、标志图案维护。单证管理包括:形式发票维护、商业发票维护、催款单维护、装箱单信息维护。定单管理定单信息管理单证管理定单信息维护定单产品维护包装资料维护形式发票维护商业发票维护出货图片维护标志图案维护催款单维护装箱单信息维护图3-4定单管理功能分解3.5 出货管理出货管理分为:货代管理、出货信息管理,功能分解如图3-5所示。贷代管理包括:贷代信息维护。出货信息管理包括:出货信息维护、出货柜号维护。出货管理货代管理出货信息管理出货信息维护出货柜号维护贷代信息维护图3-5出货管理功能分解3.6 收汇管理收汇管理分为:水单管理、结汇管理、统计信息,功能分解如图3-6所示。水单管理包括:水单信息维护、认领水单维护。结汇管理包括:定单费用维护、额外损失维护、结汇信息维护。统计信息包括:业绩统计、交易统计。收汇管理水单管理结汇管理业绩统计交易统计水单信息维护统计信息认领水单维护定单费用维护额外损失维护结汇信息维护图3-6收汇管理功能分解3.7 系统管理系统管理是GF2000的框架基础模块,主要对应的是系统管理员的工作,主要包括用户管理和基础数据的维护,功能分解如图3-7所示。用户管理包括:用户定义、角色定义、用户角色分配、模块角色定义、登陆注销、密码修改、操作日志。基础数据包括:系统信息定义、国家地区定义、数据维护。系统管理用户管理密码修改操作日志用户定义基础数据维护角色定义用户角色分配模块角色定义登陆注销国家地区定义数据维护系统信息定义图3-7系统管理功能分解第4章 MVC在GF2000中的应用一个小孩子都可以搭建一个Web应用,但要建造一个大型Web应用,就不是小孩子搭积木的能力所能完成的了。正如要建一座高楼,必须要有一个坚实的地基。对于一个大型的Web应用,需要处理的东西虽然相当多,但是同样必须有坚实的基础,我们也必须保持相同的概念。摘自STRUTS技术揭密及WEB开发实例我们为厦门恒好贸易公司开发的GF2000系统是基于Web的统一的数据管理平台,系统七个模块之间的数据有着错综复杂的联系,如果前期没有一个良好的设计,没有打好坚实的基础,系统的开发将遇到难以想象的困难,后期的维护、扩展更是难上加难。我们选择了MVC设计模式,MVC中三个层各施其职,互不干涉,如果哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码。在MVC模式中,由于按层把系统分开,更好地实现了开发中的分工,网页设计人员可以进行开发视图层中的ASP,对业务熟悉的开发人员可开发业务层,而其它开发人员可开发控制层。分层后更有利于组件的重用。如控制层可独立成一个重用的组件,视图层也可做成通用的操作界面。 GF2000系统采用B/S结构,后台基于SQL Server 2000数据库,采用ASP开发,可在浏览器上完成绝大部分的数据显示与操作,另外涉及到需要输出的文档均以文本文件、邮件、Word文档或Excel文档的形式,方便易用。4.1 GF2000的Model(模型)GF2000项目开发的是数据管理平台,其模型主要是数据的增、删、改、查询。例如项目管理模块,主要功能即项目信息的增加、删除、修改、查询。GF2000的模型由函数Bill_Model(DBTableName)实现,根据用户执行的不同操作,如增加、删除、修改、查询,将调用不同的子函数。4.2 GF2000的View(视图)GF2000的视图负责向用户呈现模型的数据,主要有四类视图:查询视图、查看视图(只读)、编辑视图和添加视图,以项目管理模块为例,四类视图如图4-1、图4-2、图4-3及图4-4所示。GF2000的视图由函数Bill_View(ATableName, ID)实现。图4-1项目信息查询视图图4-2项目信息查看视图图4-3项目信息编辑视图图4-4项目信息添加视图4.3 GF2000的Controller(控制器)GF2000的控制器由函数Bill_Controller(List_Page)实现,主要是一些控制按钮及客户端的验证函数。控制按钮包括:编辑、删除、保存、保存继续等,如在上文的图4-2点击“编辑”按钮后将进入图4-3,即从查看视图转入编辑视图。客户端验证函数主要用来验证用户输入的数据是否合法,如在上文图4-3中点击“保存”后会验证带红色星号的文本框是否有值及值是否合法。4.4 GF2000中如何实现MVC本章前三节介绍了GF2000中的模型、视图、控制器,本节将具体说明如何应用MVC,实现模型与视图的分离。4.4.1 数据库字段表(Sys_Field)表Sys_Field属于元数据,记录了GF2000数据库中业务表的各个字段,是实现MVC中模型与视图分离的关键数据表,其结构如表4-1所示。表英文名Sys_Field表中文名数据类型定义描 述主 键 ID 字段英文名中文名类型非空描述IDIDTable_Name字段所在表名YField_Name字段名YData_Type数据类型Y整数 0字串 10长宽高 3重量 4价格 2Check_Type检查类型Y默认 0备注字段 1Is_Flag是否标识位Y否 0是 1如果是需要在Sys_Flag表增加一条记录CF_Table关联表如“定单表”上面的Cust_ID对应这里是“客户表”CF_ID关联表ID字段名一般是ID,如客户表的”ID”字段CF_Field需要关联出来的字段如“客户名称”字段Default_Value默认值表4-1数据库字段表(Sys_Field)Sys_Field表十分重要,是MVC设计模式在GF2000系统中得以实现的关键,充当着模型层与视图层中间人的角色,在以下的分析中将不断提到该表。4.4.2 两个关键函数为实现模型与视图的分离,本系统编写了两个关键的公用函数:GetMetaData(ATableName)、GetBillData(ATableName, MetaData)。GetMetaData(ATableName)GetMetaData函数的参数为某一数据库表名,根据该表名查询数据库字段表(Sys_Field),取得该表的元数据。主要代码如下:Function GetMetaData(ATableName)Dim rsSet rs = SQLQuery(SELECT * FROM Sys_Field WHERE Table_Name = + SQLStr(Trim(ATableName)Call Assert(not rs.EOF, Sys_Field表中没有 & ATableName & 表的定义.)Set GetMetaData = rsEnd FunctionGetBillData(ATableName, MetaData)GetBillData函数的的参数为某一数据库表名,及GetMetaData函数返回的元数据,根据表名和元数据取得Web Form上的域值数组。主要代码如下:MetaData是AdoRecordset形式的引用对象Function GetBillData(ATableName, MetaData)Dim strDataDim strCurrentDim ResultstrData = strCurrent = MetaData.MoveFirstWhile not MetaData.EOFIf UCase(MetaData(Field_Name) = ID Then ID型字段在web页面上对应的是TableName_ID控件strCurrent = MyRequest(ATableName & _ID) ElsestrCurrent = MyRequest(OG_ & MetaData(Field_Name) End IfIf (strCurrent = ) and (MetaData(Data_Type) 10) Then 如果数字类型栏位的输入值为空,则默认赋值 0strCurrent = 0 End IfIf MetaData(Data_Type) = 2 Then 如果数字类型栏位的输入值为空,则默认赋值 0strCurrent = Replace(strCurrent, , ) End IfstrData = strData & strCurrent & | MetaData.MoveNextWend去掉最后一个多余的“|”strData=Left(strData,Len(strData)-1) Result = Split(strData, |)Call Assert(IsArray(Result), 表单值数组有误,传入的不是数组)GetBillData = ResultEnd Function4.4.3 分离模型与视图模型由函数Bill_Model实现,Bill_Model接收控制器Bill_Controler的请求,根据控制器传递的消息,如ADD_SAVE,EDIT_SAVE,DELETE等调用相应的子函数,Bill_Insert (ATableName),Bill_Update (ATableName)或Bill_Delete(ATableName, ID),最后函数Bill_View将模型的当前数据展现给用户。以GF2000模型中的添加数据为例,说明如何分离模型与视图,即关注Bill_Insert和Bill_View两个函数。图4-5为项目信息新增视图。图4-5项目信息新增视图图4-5所示的新增视图由函数Bill_View生成,应能够与模型中的添加功能即函数Bill_Insert相分离,关键是实现新增一条记录时要插入哪几个字段并不由如图4-5所示的新增视图决定。首先分析函数Bill_Insert (ATableName),参数ATableName表示某一数据库表名,如项目信息表,Bill_Insert调用4.4节所述的关键函数之一GetMetaData(ATableName),返回Sys_Field表中关于项目信息表的字段定义,如图4-6所示。图4-6项目信息表(Project)的元数据从图4-6的Table_Name和Field_Name列可知Bill_Insert函数往项目信息表(Project)插入的一条新记录将包含以下字段:Sales_ID, Cntr_ID, Source_ID, Create_Time, Topic, Status_Flag, Dscp, Cutomer_ID。注意到此处已经实现了新增一条记录时要插入哪几个字段并不由如图4-5所示的新增视图决定,而是由表Sys_Field决定。新增视图仅仅为插入一条记录时所需的全部或部分字段提供数据,但并没有规定插入一条记录时需要哪些字段。例如,从Sys_Field表中可知往项目信息表(Project)插入一条新记录时需要项目主题(Topic)字段,但在如图4-5所示的新增视图中可以不存在项目主题表单域,即该视图可以不为模型中的Topic字段提供数据。但如何解决模型需要数据而视图却不提供数据的矛盾呢?这就要分析4.4节所述的关键函数之二GetBillData(ATableName, MetaData)。函数GetBillData(ATableName, MetaData)根据表名和元数据取得视图中各个域的值,参数MetaData是函数GetMetaData返回的关于某一数据库表的元数据。视图中各个表单域必须以OG_FieldName的形式命名,Field_Name为字段名,如图4-5所示的新增视图中的项目主题文本框应命名为OG_Topic,HTML代码为。这一命名约定十分重要,是视图将数据传入模型的协议。例如要获得项目主题(Topic)字段值的代码为Request(“OG_” & MetaData(“Field_Name”),其中MetaData(“Field_Name”)的值为”Topic”。函数GetBillData遍历MetaData中的各个字段,若视图中有相应的字段则返回用户输入的值,若没有则返回空值。MetaData中的各个字段来自Sys_Field表,即函数GetBillData要返回哪些字段的值由Sys_Field决定,而不由视图决定。以上分析了Bill_Insert函数,说明其运作依赖于Sys_Field表及两个关键函数GetMetaData和GetBillData,实现了与视图的分离,而视图若要传递数据给模型,唯一要遵守的就是其表单域的命名约定,即以OG_FieldName的形式命名。以下分析函数Bill_View。函数Bill_View(ATableName, ID)将模型的数据呈现给用户,参数ATableNam

温馨提示

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

评论

0/150

提交评论