本科毕业论文:Web校园二手交易系统的设计与实现44241.doc_第1页
本科毕业论文:Web校园二手交易系统的设计与实现44241.doc_第2页
本科毕业论文:Web校园二手交易系统的设计与实现44241.doc_第3页
本科毕业论文:Web校园二手交易系统的设计与实现44241.doc_第4页
本科毕业论文:Web校园二手交易系统的设计与实现44241.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

安阳师范学院本科学生毕业论文web校园二手交易系统的设计与实现作 者 周 伟 院 (系) 人文管理学院 专 业 信息管理与信息系统 年 级 2007 级 学 号 074952024 指导教师 田喜平 论文成绩 日 期 2009 年 6 月 目 录1引言11.1 开发背景11.2 开发意义11.3 可行性研究22系统构架分析22.1java语言简洁22.2 javaee技术介绍22.3 servlet/jsp技术32.4 javabeans技术32.5 开发环境及环境配置42.5.1 系统环境及java/jsp环境配置42.5.2 数据库开发工具选择及配置42.5.3 关系数据库管理系统52.5.4 对性能的一般规定52.5.5 其他专门要求52.5.6 对安全性的要求52.5.7 运行环境规定53系统设计63.1 系统总体设计63.2 概要设计63.2.1 系统功能模块设计63.2.2 系统结构图73.2.3 数据流图73.3数据库设计83.3.1 数据库需求分析83.3.2 数据库概要设计83.3.3 数据库详细设计94 系统实现114.1程序设计114.2系统的测试214.2.1测试的目的和作用214.2.2测试原则214.2.3测试方法和步骤21总 结22参 考 文 献24web校园二手交易系统的设计与实现周伟(安阳师范学院 人文管理学院, 河南 安阳 455002)摘 要:随着信息技术的迅速发展与网络教学的普及,网上作业提交也成为现代化教学不可或缺的一部分。在此背景下,用javaee开发了网上作业提交系统。本论文首先考虑了学生网上作业提交和教师网上作业批改的实际要求,分析了此系统应该具有的功能;其次对系统的主要功能模块进行了详细地描述,其中主要包括教师布置作业,学生提交作业,教师批改作业和管理员设置。最后结合系统开发阶段和调试阶段发现的问题,提出了系统需要完善的地方,总结了开发此系统所取得的经验和体会。关键词:web二手交易系统;javaee;b/s结构;数据库1 引言1.1 开发背景近些年来互联网迅速发展,使得不同地点的人们在任何时间都可以轻松获取自己需要的信息,同时互联网的出现极大地推动了教育事业的发展,特别是javaee技术,以其交互性、动态性的特点,大大扩展了互联网的应用范围,互联网的广泛应用也深刻的影响了教育教学领域。1.2 开发意义 随着全世界互联网技术的不断发展,各种基于互联网技术的网络应用不断涌现,网络技术正在不断的深入人们的生活。人们从internet上获取信息、享受生活、交流感情、网上工作等。internet正在迅速改变着人们的生活方式。在当前社会上,许多的各种类型的电子商务类网站纷纷建立,可以很大程度上的解决人们信息资源的闭塞以及地域上的限制。作为大学校园,伴随着学生的购买能力的提高和每年的升学和毕业,也存在的许多各种类型的二手商品,由于信息交流的落后,很多只限于于校园公告栏或者请人代为宣传的方式进行交易。这种方式有很多局限性和偶然性,并不能满足二手商品畅通交流的要求。于是一种新的二手商品信息交流的方式出现了,就是基于web的校园网二手商品交易系统。通过这个系统,可以发现每一个校园网用户都是系统的主人,大家可以非常方便的发布自己的信息,浏览别人的发布的信息,还可以对各种二手商品信息作出横向比较,作出自己的最佳选择。由此可见,该系统只是一个交流二手商品信息的平台,与一般的电子商务类网站又有本质的区别。1.3 可行性研究 设计这样一个系统,从根本上解决了传统的校园二手信息发布交流方式的弊端,使得校园各种二手商品信息得到了有效的整合,方便了广大用户。且拥有的客户通常只是大学校园网的用户,所有系统规模上来讲不会很大,从经济上来说,由于选择的开发工具和服务器几乎全部为免费的开源软件,并且由于是开发成本较低的基于web的b/s模式,而非成本费用相对较高的c/s模式,所以从经济上来讲是可行的。从技术上来说,由于是基于web的,可以相对比较容易面对用户的实际需求而开发。而在现今,各种网络应用的开发已经相当成熟,出现了几大主流的开发语言和工具,都可以非常有效的支持开发这样一个系统。同时作为本系统,也有许多成功的电子商务类网站的经验可以借鉴,所以从技术的角度来说,也是可行的。从运行上来说,由于客户端仅仅只是需要一个浏览器,通过浏览器来登陆系统,而服务器端也只需要一台服务器,服务器要求一个数据库环境和一个网络应用开发的环境,实现起来比较容易,所以从运行上来说是可行的。同时这样一个系统,在系统管理员合法管理和用户的自觉配合下,不会违规进行任何的不法的活动和交易,发布具有危害性和不适宜的信息,也不存在任何非法牟利的行为,在法律上也是可行的。在各种可行性研究保证和基于用户需求要求下,开发系统的方案经过不断论证和假设,确定出了一个最佳方案。2 系统构架分析2.1 java语言简介java语言是美国sun公司于1995年推出的一种简单的、面向对象的、分布式的、可解释的、键壮的、安全的、结构的、中立的、可移植的、性能很优异的多线程的、动态的语言。其前身为oak语言,是sun公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术。经过sun公司的工程师的不懈努力以及全世界无数的编程爱好者的使用,java终于发展成为今天这样一个集桌面(j2se)、网络(j2ee)、移动平台(j2me)应用为一体的功能强大的编程语言。目前java由于其平台无关及分布式特性,最重要的应用是在网络应用上。2.2 j2ee技术介绍j2ee技术是java网络应用的技术,广泛应用于企业级的应用。它是由一套规范(shannin,2001)和建立在j2se平台上的应用编程接口(api)组成。j2ee拥有sun公司提供免费开发工具,称为j2ee软件开发工具包(software development kit,sdk )(/j2ee)。j2ee技术是一种java网络应用技术的组合,包含有远程方法调用(remote method invocation,rmi)、java消息服务(java message service,jms)、javamail等通信服务,jdbc、java命名和目录接口(java naming and directory interface,jndi)、java连接器体系结构(java connector architecture,jca)、java事务api/java事务服务(jta/jts)、xml处理api等通用服务以及servlet、java服务器页面(jsp)、企业级javabean(ejb)等组件技术。任何j2ee的实现都必须要在其特定容器中实现。 2.3 servlet/jsp技术servlet是jsp技术的基础,jsp本身就是预先被编译成servlet,然后再运行的,而且大型的web应用程序的开发需要java servlet和jsp配合才能完成。 servlet其实和传统的cgi程序和isapi、nsapi等web程序开发工具的作用是相同的,在使用java servlet以后,用户不必再使用效率低下的cgi方式,也不必使用只能在某个固定web服务器平台运行的api方式来动态生成web页面。许多web服务器都支持servlet,即使不直接支持servlet的web服务器也可以通过附加的应用服务器和模块来支持servlet。得益于java的跨平台的特性,servlet也是平台无关的,实际上,只要符合java servlet规范,servlet是完全平台无关且是web服务器无关的。由于java servlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此java servlet效率非常高。但java servlet也不是没有缺点,和传统的cgi、isapi、nsapi方式相同,java servlet是利用输出html语句来实现动态网页的,如果用java servlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么sun还要推出java server pages的原因。jsp(javaserver pages)是一种基于java的脚本技术。在jsp 的众多优点之中,其中之一是它能将 html 编码从 web 页面的业务逻辑中有效地分离出来。用 jsp 访问可重用的组件,如 servlet、javabean 和基于 java 的 web 应用程序。jsp 还支持在 web 页面中直接嵌入 java 代码。可用两种方法访问 jsp 文件:浏览器发送 jsp 文件请求、发送至 servlet 的请求。 1. jsp 文件访问 bean 或其它能将生成的动态内容发送到浏览器的组件。2. 发送至 servlet 的请求生成动态内容,并调用 jsp 文件将内容发送到浏览器。该访问使得将内容生成从内容显示中分离出来更为方便。jsp最大的优点在于其与平台无关性,并且具有“一次编写,处处运行”的特点。2.4 javabeans技术javabeans就是java的可重用组件技术。asp通过com来扩充复杂的功能,如文件上载、发送email以及将业务处理或复杂计算分离出来成为独立可重复利用的模块。jsp通过javabeans实现了同样的功能扩充。jsp对于在web应用中集成javabeans组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为jsp应用带来了更多的可伸缩性。javabeans组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。在实际的jsp开发过程中,和传统的asp或php页面相比,jsp页面将会是非常简洁的,由于javabeans开发起来简单,又可以利用java语言的强大功能,许多动态页面处理过程实际上被封装到了javabeans中。2.5 开发环境及环境配置2.5.1 系统环境及java/jsp环境配置开发及测试的系统环境,我选择了microsoft windows advanced server 2000。由于其本身就是为服务器版的,适合用于搭设成为服务器端。要开发jsp,首先必须要求有java环境,我选择了java 2 platform,enterprise edition 1.4 sdk(即j2eesdk-1_4_03-windows)。作为jsp的容器,选择了目前非常流行的tomcat 5.5。而ide工具则选择了eclipse。各种软件和工具安装完成后,必须相应的配置windows 2000的系统环境变量。2.5.2 数据库开发工具选择及配置oracle系统主要是由oracle database和oracle application server两大拳头产品及oracle 管理程序包等其他产品组成,下面主要例一下10g的产品:oracle database 10g 提供了四个版本,每个版本适用于不同的开发和部署环境。oracle 还提供了额外的几种可选数据库产品,这些产品针对特殊的应用需求增强了 oracle database 10g 的功能。下面是 oracle database 10g 的可用版本: oracle数据库10g企业版(oracle database 10g enterprise edition )为关键任务的应用程序(如大业务量的在线事务处理 (oltp) 环境、查询密集的数据仓库和要求苛刻的互联网应用程序)提供了高效、可靠、安全的数据管理。oracle 数据库企业版为企业提供了满足当今关键任务应用程序的可用性和可伸缩性需求的工具和功能。它包含了 oracle 数据库的所有组件,并且能够通过购买选项和程序包(本文稍后将加以说明)来进一步得到增强。oracle 数据库个人版、oracle 数据库标准版、标准版1和 oracle 数据库企业版包含了一系列常见的应用程序开发功能(包括与 sql 对象相关的功能、用于编写存储过程和触发器的 pl/sql 和 java 编程接口)。oracle 数据库这些版本中的任意一个编写的应用程序将与其它的应用程序一起运行,oracle数据库10g企业版提供了额外的性能2.5.3关系数据库管理系统关系数据库所使用关系语言班的特点是高度非过程化,即用户只需说明做什么而不必说明怎么做。用户不必请求数据库管理员为其建立特殊的存取路径,存取路径的选择是由dbms(数据库管理系统)自动完成的。这也是关系数据库的主要优点之一。 早期关系操作有两种表示方式:关系代数与关系演算。理论上,关系代数和关系演算被证明是完全等价的。关系代数通过对关系的运算来表达查询,其操作对象是关系,操作结果亦为关系。全关系系统十二准则:一个关系形的关系数据库系统必须能完全通过它的关系能力来管理数据库;关系数据库系统的所有信息都应该在逻辑一级上用表中的值这一种方法显式的表示;依靠表名、主码和列名的组合,保证能以逻辑方式访问关系数据库中的每个数据项;全关系的关系数据库系统支持空值的概念,并用系统化的方法处理空值;数据库的描述在逻辑级上和普通数据采用同样的表述方式;一个关系数据库系统可以具有几种语言和多种终端访问方式,但必须有一种语言,它的语句可以表示为严格语法规定的字符串,并能全面的支持各种规则;所有理论上可更新的视图也应该允许由系统更新;系统应该对各种操作进行查询优化;无论数据库的数据在存储表示或存取方法上作任何变化,应用程序和终端活动都保持逻辑上的不变性;当对基本关系进行理论上信息不受损害的任何改变时,应用程序和终端活动都保持逻辑上的不变性;关系数据库的完整性约束条件必须是用数据库语言定义并存储在数据字典中的;关系数据库系统在引入分布数据或数据重新分布时保持逻辑不变;如果一个关系数据库系统具有一个低级语言,那么这个低级语言不能违背或绕过完整性准则。2.5.4对性能的一般规定一、硬件服务器硬件要求有一台可以满足日常办公的pcserver,可以同时满足全体员工同时在线使用该系统。公司内部可以通过交换机、集线器等设备连接到硬件服务器上,通过浏览器访问使用。二、软件服务器tomcat6,本身就可以作为服务器使用,虽然性能上没有weblogic、server、 apache、websphere等大型服务器功能强大,但是,作为一个中小型公司oa的服务器,完全可以满足日常访问和使用的需求,并保持一定的性能。 2.5.5 其他专门要求web校园二手交易系统对数据库操作不是很频繁,可以使用sqlserver2000、mysql、oracle等做数据库服务器就均可以满足用户的访问操作需求。2.5.6 对安全性的要求在配置服务器时会保障软,硬服务器的的相对安全性。web校园二手交易系统的使用者分为两种权限的级别(管理员和普通用户),但是这两种权限与部门的权利体系并没进行对应,可以减少程序复杂性,降低程序出错和安全风险。程序代码的安全性通过封装javabean 而减少原代码泄露的危险。2.5.7运行环境规定设备及分布1)主机类型 服务器:2*p4 cpu以上/2g内存以上 客户端:p4 cpu以上/128内存以上2)网络类型 基于企业内部的intenet和广域internet3)存贮器容量 服务器:80g硬盘以上 客户端:10g硬盘以上 支撑软件1) 操作系统服务器端:windows98/windows2k/windowsnt/linux/unix客户端:windows98/windows2k/windowsnt/linux/unix2) 数据库管理系统在服务器端使用oracle10g,也可以分布式应用,使web服务器和数据库服务器分别在安装两台计算机上。3) 其他支撑软件客户端浏览器在ie 4.0以上。 接口web校园二手交易系统的各个功能模块之间通过相应的javabean进行关联和相互的数据调用。 程序运行方式web校园二手交易系统独立运行在服务器端,客户端通过ie,或者netscape浏览器进行访问操作。3.系统设计3.1系统总体设计 图1 总体设计系统主要运行在tomcat这个web容器中,各个模块对数据库的访问都通过javabeans来实现,javabeans为数据库的连接建立一个连接池,将对数据库的连接请求池化,控制有效连接数,可确保系统及数据库管理系统的稳定运行。 系统安全可靠也是一个重要的设计原则。本系统的配置是采用windows xp作为网络操作系统,oracle 10g作为数据库服务器。所以操作系统windows xp的安全防护机制及数据库oracle 10g的安全机制是本系统采用的安全防护方式。3.2 概要设计3.2.1 系统功能模块设计系统主要设计了用户设置功能、发布信息功能、信息管理功能、搜索信息功能,留言功能,及系统管理功能模块。用户设置功能主要是用户注册必须填写所要求的个人资料,完成个人资料登入。发布信息功能主要是为已注册用户的服务,登陆的用户可以即时发布自己的二手商品信息,立刻就能浏览到。这是本系统的主要功能。信息管理功能是帮助已发表信息的的用户管理自身发布的二手商品信息的同时也管理短消息信息。此项功能也主要是服务于注册用户。搜索信息功能是面向所有登陆到本系统的人员的,采用模糊查询的方法,篇历所有二手商品信息,搜索出浏览者感兴趣的内容。留言功能分为两种,一种是对某一二手商品信息进行留言,还可以查看该信息的其他留言;另一种是短消息的,可以在用户与用户之间,也可以在系统管理员与用户之间进行短消息联系。留言功能可在信息管理功能中进行相应的管理。该项功能也主要是面向注册用户的。系统管理功能是系统管理员对系统所有信息资源进行统一管理的一个模块。只针对系统管理员帐户,登陆方式采用了帐户加验证码机制,提高该模块的安全级别。3.2.2 系统结构图校园网二手商品信息系统发布信息功能信息管理功能搜索信息功能系统管理留言功能用户注册模块用户设置功能用户登陆模块出售信息模块求购信息模块信息浏览模块信息管理模块短消息管理模块信息搜索模块信息浏览模块商品留言信息短消息模块用户信息模块信息管理模块信息管理模块留言管理模块短消息管理模块添加信息模块邮件发送模块图2 系统结构图3.2.3 数据流图 图3 数据流图3.3 数据库设计3.3.1 数据库需求分析对于数据库的需求主要体现在对数据库的提交信息、更新信息、删除信息、保存信息等。这些信息的存在都取决于各个功能模块的对信息的需求。通过对功能模块的具体操作,实现对数据库中信息的输入和输出。所以,针对各个功能模块的需求,设计如下的数据表和数据结构:用户信息:包括用户名、密码、及用户的相关信息等。商品信息表:包括信息序号、发布信息的用户名,信息相关内容等。商品留言信息:包括信息序号、商品信息相关、留言内容相关等。用户消息:包括发消息和接消息的用户名、消息相关内容等。系统管理员信息:包括帐户名和帐户密码等。通过以上的信息,完成数据库对各项需求的实现。3.3.2 数据库概要设计使用er-wring进行建模:逻辑模型为: 图4 逻辑模型图物理模型为:图5 物理模型图3.3.3 数据库详细设计表1 (会员信息表)序号字段名称约束宽度类型default字段说明1id主键8-18char保持唯一2passwordnot null8-18char密码3namenot null10char名字4loadusernot null11char登录名5sexnot null2char性别6idcardnot null18char身份证号7emailnot null50char电子邮件8agenot null50char年龄9identity外键50int1参照identable10lock外键50int参照locktable表2 (身份表)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2typenot null8-18 char身份说明表3 (状态表)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2typenot null3-11char类型 表4 (权限)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2namenot null3-11 char功能的名称3connurlnot null3-11 char功能的地址4ismenunot null3-11char菜单项5father_idnot null11char父亲节点的id表5序号字段名称约束宽度类型default字段说明1identable_id主键外键4 int参照identable2funs_id主键外键4 int参照funs表表6(登录安全表) 序号字段名称约束宽度类型default字段说明1users_id主键4 int保持唯一2time11datanew data记录登录时间3id11 int记录登录用户表7 (我要买的商品)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2merchandisenamenot null3-11 char商品的名字3content11char求购的内容4narrate33char求购的说明5sestate_id 外键3int参照sestate表8(状态表)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2typenamenot null14char类型名字表9 (我要卖的东西)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2merchandisenamenot null14char商品名字3content12char出售内容4hue12char成色新旧5price13char价格6sale_id外键3int参照saleestate表10(状态表)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2typenamenot null14char类型名字表11(商品的类型)序号字段名称约束宽度类型default字段说明1id主键8-18 int保持唯一2typenamenot null14char类型名字表12(留言模块表)序号字段名称约束宽度类型default字段说明1id主键8-18int保持唯一2content256char留言内容3leavedatenotnulldate留言日期4name30char作者5mysaleidnotnull30外键6myshoppingnotnull30外键4 系统实现4.1 程序设计用户登录界面:图6 用户登录界面用户登录核心代码:public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)string key = request.getparameter(key);list list = new arraylist();if (key = null)firstuser f = (firstuser) form;string name = f.getnames();string password = f.getpwd();string regx = 0-9a-za-z_2,9$;actionmessages ms = new actionmessages();boolean flag = true;if (!(name.matches(regx)actionmessage m = new actionmessage(username.wrong);ms.add(username.wrong, m);flag = false;if (!(password.matches(regx)actionmessage m = new actionmessage(userpwd.wrong);ms.add(userpwd.wrong, m);flag = false;bysjservice bs = new bysjserviceimpl();if (flag = true)tryusers u = bs.seachname(name, password)set set = (set) bs.lockuser(u.getidentitys().getid(); list.add(u);list.add(set);httpsession session = request.getsession();session.setattribute(key, list); catch (dataaccessexception e)actionmessage m = new actionmessage(nameerror);ms.add(nameerror, m);flag = false; catch (dataerrorexception e)actionmessage m = new actionmessage(pwderror);ms.add(pwderror, m);flag = false;if (!flag)saveerrors(request, ms);return mapping.getinputforward();return mapping.findforward(ok);return mapping.findforward(oks);1)会员登录模块:会员发布出售信息:图7 发布出售信息平台界面发布出售信息核心代码:public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response) tryaddmysalefrom amf = (addmysalefrom) form;httpsession session = request.getsession();file file = null;list list = (list) session.getattribute(key);users u = (users) list.get(0);bysjservice bs = new bysjserviceimpl();string str = bs.addmysale(amf, u.getloaduser();servletcontext sc = getservlet().getservletcontext();string fileurl = sc.getrealpath(upload + + u.getloaduser();file = new file(fileurl);if (file.isdirectory()/ system.out.println(); elsefile.mkdir();string fileurls = fileurl + + str;system.out.println(fileurl);byte b = new byte1024;formfile ff = amf.getuploads();tryinputstream is = ff.getinputstream();outputstream os = new fileoutputstream(fileurls);while (true)int c = is.read(b);os.write(b);if (c 0)sql+= and m.merchandisename=+shoppingname+;if(where!=null & where.length()0)sql+= and m.merchandisetype.id=+where;pagepage=(page)am.seachmysall(sql, integer.parseint(pageindex);request.setattribute(page, page);return mapping.findforward(ok);2)管理员模块:商品类别管理:图11 商品类别管理界面商品管理后台代码:public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)list list = new ajaxmerchandisetypeimpl().seachmerchandise();request.setattribute(list, list);return mapping.findforward(ok);public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)string id = request.getparameter(ids);string type = request.getparameter(type);merchandisetype mt = new ajaxmerchandisetypeimpl().findbyid(id);mt.settype(type);return mapping.findforward(ok);public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response) string type=request.getparameter(type);merchandisetype mt=new merchandisetype();mt.settype(type);new ajaxmerchandisetypeimpl().insert(mt);return mapping.findforward(ok);留言信息管理:图12 留言信息管理界面留言管理后台代码:public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse response)string id=request.getparameter(id);messageimpl msg = new messageimpl();msg.deletebyid(id);return mapping.findforward(ok);public actionforward execute(actionmapping mapping, actionform form,httpservletrequest request, httpservletresponse

温馨提示

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

评论

0/150

提交评论