学生宿舍管理系统课程设计(共23页)_第1页
学生宿舍管理系统课程设计(共23页)_第2页
学生宿舍管理系统课程设计(共23页)_第3页
学生宿舍管理系统课程设计(共23页)_第4页
学生宿舍管理系统课程设计(共23页)_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、ZT宿舍管理系统 绍兴职业技术学院 PAGE 22黄山(hun shn)学院(xuyun)ASP.NET 编程技术课程(kchng)设计报告系(院): 信 息工程学院 专 业: 计算机科学与技术 班 级: 12计算机2班 学生姓名: 鲁润楠 学号: 21206032033 题目: 学生宿舍管理系统 指导教师: 陆超泽 学年学期: 2014 2015 学年 第 1 学期2014年 12 月 15 日目录 TOC o 1-3 f h z u HYPERLINK l _Toc295933688 第1章分析(fnx) PAGEREF _Toc295933688 h 3 HYPERLINK l _Toc

2、295933689 1.1开发(kif)背景与现状 PAGEREF _Toc295933689 h 3 HYPERLINK l _Toc295933690 1.2开发设计(shj)的意义 PAGEREF _Toc295933690 h 3 HYPERLINK l _Toc295933691 1.3开发工具 PAGEREF _Toc295933691 h 3 HYPERLINK l _Toc295933692 1.3.1ASP.NET简介 PAGEREF _Toc295933692 h 3 HYPERLINK l _Toc295933693 1.3.2SQLServer2005简介 PAGERE

3、F _Toc295933693 h 4 HYPERLINK l _Toc295933694 第2章系统需求分析 PAGEREF _Toc295933694 h 5 HYPERLINK l _Toc295933695 2.1系统结构图 PAGEREF _Toc295933695 h 5 HYPERLINK l _Toc295933696 2.2数据库管理 PAGEREF _Toc295933696 h 6 HYPERLINK l _Toc295933697 第3章设计 PAGEREF _Toc295933697 h 7 HYPERLINK l _Toc295933698 3.1数据库设计 PAG

4、EREF _Toc295933698 h 7 HYPERLINK l _Toc295933699 3.1.1数据库的引入 PAGEREF _Toc295933699 h 7 HYPERLINK l _Toc295933700 3.1.2数据库概念结构设计 PAGEREF _Toc295933700 h 7 HYPERLINK l _Toc295933701 3.2数据库结构设计 PAGEREF _Toc295933701 h 8 HYPERLINK l _Toc295933702 第4章实现 PAGEREF _Toc295933702 h 10 HYPERLINK l _Toc29593370

5、3 4.1.1系统模块设计 PAGEREF _Toc295933703 h 10 HYPERLINK l _Toc295933704 第5章系统测试 PAGEREF _Toc295933704 h 23 HYPERLINK l _Toc295933705 5.1系统测试的目的 PAGEREF _Toc295933705 h 23 HYPERLINK l _Toc295933706 5.1.1测试数据 PAGEREF _Toc295933706 h 23 HYPERLINK l _Toc295933707 5.1.2系统测试的评价 PAGEREF _Toc295933707 h 23分析开发(k

6、if)背景与现状学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依*人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,目前(mqin)我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力和物力。随

7、着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及已进入人类社会生活的各个领域,并发挥着越来越重要的作用。这种传统的手工管理模式必然被以计算机为物质基础的信息管理方法所取代。作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要条件,更是各个高等院校与世界接轨的重要条件。开发设计(shj)的意义为了实现提高高校宿舍管理部门的工作效率;充分利用资源;减少不必要的人力,物力和财力的支出;方便宿舍管理部门的工作人员全

8、面地掌握学生住宿情况等目的;为宿舍管理部门,开发设计专用系统-高校学生宿舍信息管理系统来进行管理学生宿舍信息,使学生宿舍信息实现标准化的管理和规范化的制度是十分必要的。系统针对学校学生信息的特点以及管理中实际需要而设计,能够有效地实现学生信息管理的信息化,减轻管理人员的工作负担,高效率、规范化地管理大量的学生信息,并避免人为操作的错误和不规范行为。开发工具ASP.NET简介ASP.NET是.NET FrameWork的一部分,是一项 HYPERLINK /view/39784.htm t /_blank 微软公司的技术,是一种使嵌入网页中的 HYPERLINK /view/54.htm t /

9、_blank 脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序 。SQL Server 2005简介(jin ji)Microsoft SQL Server 2005 是一个全面的数据库平台(pngti),使用 HYPERLINK /view/101357.htm t /view/_blank 集成(j chn)的 HYPERLINK /view/8

10、211.htm t /view/_blank 商业智能 (BI) HYPERLINK /view/74746.htm t /view/_blank 工具提供了企业级的数据管理。Microsoft SQL Server 2005 HYPERLINK /view/68455.htm t /view/_blank 数据库引擎为关系型数据和 HYPERLINK /view/160039.htm t /view/_blank 结构化数据提供了更安全 HYPERLINK /view/190360.htm t /view/_blank 可靠的 HYPERLINK /view/87682.htm t /vie

11、w/_blank 存储功能,使您可以 HYPERLINK /view/2067054.htm t /view/_blank 构建和管理用于 HYPERLINK /view/64906.htm t /view/_blank 业务的高可用和高性能的数据 HYPERLINK /view/330120.htm t /view/_blank 应用程序。Microsoft SQL Server 2005 数据引擎是该企业数据管理解决方案的核心。此外 Microsoft SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记

12、分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 Microsoft SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,Microsoft SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。系统需求(xqi)分析本系统的最终用户为宿舍楼管理员,本宿舍楼

13、的学生。根据我们日常生活中的经验,结合对自己学校(xuxio)宿舍楼管理老师的咨询和对同宿舍楼同学的调查,得出用户的下列实际要求:宿舍楼的基本(jbn)情况学生的基本信息:入校时,每位同学都有唯一的学号,并被分配到指定的宿舍楼和指定的宿舍。另外,为了管理上的方便,同一院系的学生的宿舍一般在一起,相应地会有其所在的院系名称。系统功能的设计和划分信息查询管理对现有的已有的学生的信息数据进行查询,主要包括了现年度、班级、年级、寝室住址、学号、姓名、班主任等等类别的查询,可以是单方面的查询也可以是多方面的综合人信息的查询。常规检查管理针对浙江师范大学存在的寝室常规检查,特设置了此项内容,主要包括了现班

14、级、年级、事件情况(即寝室常规检查的情况记录)、寝室住址、学生姓名、学号等多个方面信息的查询。增加学生如有新人入学,我们可以通过次功能进行分配新生的寝室。迁入与迁出管理可将离开的学生进行迁出管理,没有宿舍的学生进行迁入管理。系统结构图 学号查询寝室查询寝室列表添加寝室查询所有寝室查询单个寝室学生列表新增学生查询房间管理住宿管理学生宿舍管理 宿舍管理系统数据库管理(gunl)数据库备份(bi fn)对数据库进行备份(bi fn),已应对数据库出现意外的瘫痪和损坏情况。数据库压缩数据量过大会对系统的运行速度和存储空间产生不良的影响,为避免数据过大特设计了对数据库进行压缩的项目。数据库恢复此项是应对

15、数据库出错、损坏、瘫痪的情况,对数据库进行恢复。设计数据库设计(shj)数据库的引入数据库(Database)是按照(nzho) HYPERLINK /view/9900.htm t /_blank 数据结构(sh j ji u)来组织、 HYPERLINK /view/87682.htm t /_blank 存储和管理数据的仓库,它产生于距今六十多年前,随着 HYPERLINK /view/3226.htm t /_blank 信息技术和市场的发展,特别是二十世纪九十年代以后, HYPERLINK /view/14717.htm t /_blank 数据管理不再仅仅是存储和管理数据,而转变成

16、用户所需要的各种数据管理的方式。数据库有很多种 HYPERLINK /subview/738155/8050031.htm t /_blank 类型,从最简单的存储有各种数据的 HYPERLINK /view/899068.htm t /_blank 表格到能够进行海量 HYPERLINK /view/551712.htm t /_blank 数据存储的大型 HYPERLINK /view/7809.htm t /_blank 数据库系统都在各个方面得到了广泛的应用。在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决

17、策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段数据库概念结构设计概念模型是数据库系统的核心和基础。由于各个机器上实现的DBMS软件都是基于某种数据模型的,但是在具体机器上实现的模型都有许多严格的限制。而现实应用环境是复杂多变的,如果把实现世界中的事物直接转换为机器中的对象,就非常不方便。因此,人们研究把现实世界中的事物抽象为不依赖与具体机器的信息结构,又接近人们的思维,并具有丰富语义的概念模型,然后再把概念模型转换为具体的机器上DBMS支持的数据模型。概念模型的描述工具通常是使用E-R模型图。该模型不依赖于具体的硬件环境和DBMS。 概念结构是对现实世界的一种抽象。

18、所谓抽象是对实际的人、物、事和概念进行人为处理,抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确的加以描述,这些概念组成了某种模型。通过概念设计得到的概念模型是从现实世界的角度对所要解决的问题的描述,不依赖于具体的硬件环境和DBMS。 在需求分析和逻辑设计之间增加概念设计阶段,可以使设计人员仅从用户的角度看待数据及处理要求和约束。表达概念设计的结果称为概念模型,对概念模型有以下要求:(1) 有丰富的语义表达能力,能表达用户的各种需求。(2) 易于交流和理解,从而可以用它和不熟悉计算机的用户交换意见。(3) 要易于更改。当应用环境和应用要求改变时,概念模型要能很容易的修改和扩充

19、以反映这种变化。(4) 易于向各种数据模型转换。数据库结构设计根据在数据库概念设计中给出的数据库实体E-R图,可以(ky)设计数据表结构,服务器上建名为mydatabase的数据库。其中(qzhng)包括以下表: STYLEREF 1 s 3. SEQ 图表(tbio) * ARABIC s 1 1 db1数据库下面将简单介绍数据库中主要的表的结构:管理员表此表主要是对系统的管理员的信息已经权限进行记录跟管理,现有的管理员的用户名:username,密码:userpas,属于管理员。表格 STYLEREF 1 s 3. SEQ 表格 * ARABIC s 1 1 Admin表字段名类型说明默认

20、值username文本用户名无suerpas文本用户密码无宿舍表此表存放宿舍所在楼号,宿舍门号,当前宿舍住的人数,宿舍最大能住的人数,男生宿舍还是女生宿舍。表格 STYLEREF 1 s 3. SEQ 表格 * ARABIC s 1 2 SS表字段名类型说明默认值sno文本学生学号无xno文本寝室号无学生详情表此表记录学生姓名,学号,年龄,性别系别等详细信息。表格 STYLEREF 1 s 3. SEQ 表格 * ARABIC s 1 3 Student表字段名类型说明默认值no数字学生学号无name文本学生名字无sex文本学生性别无age文本学生年龄无address文本学生住址无实现(shx

21、in)系统模块(m kui)设计对本系统的各个子模块进行了系统分析和数据库设计(shj)之后,本章将主要讨论该系统所实现的各部分功能:管理员登录界面登陆界面代码如下: 无标题页 .style1 width: 756px; .style2 width: 1000px; var m = true;function changeColor() var color=#f00|#0f0|#00f|#880|#808|#088|#9c6|#c5c|#f6f|yellow|green; color=color.split(|); if (m=true)document.getElementById(123)

22、.style.color=colorparseInt(Math.random() * color.length); function Abegin() m=false;function Aend() m=true; setInterval(changeColor(),500); 学生宿舍管理系统 用户(yngh)登录 用户名: 密码: 管理员 学生 : 黄山学院(xuyun)坐落在风景秀丽、文风馥郁的中国优秀旅游城市安徽省黄山市,是一所综合性的省属普通本科院校。其前身是始创于1978年的徽州师范专科学校。1997年12月,更名为黄山高等专科学校。2002年2月,经国家教育部批准,黄山高等专科学

23、校升格(shng g)为黄山学院。 雨天伤情股份有限公司出版/ /table 用户信息这里显示些用户的基本信息,可以查看到特权,身份等。图表 SEQ 图表 * ARABIC 2 用户信息把学生添加到宿舍图表(tbio) SEQ 图表(tbio) * ARABIC 3 添加(tin ji)管理员 int intinsertCourt; string sqlconnstr = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString; SqlConnection sqlconn = new SqlConnecti

24、on(sqlconnstr); /建立Command对象 SqlCommand sqlcommand = new SqlCommand(); sqlcommand.Connection = sqlconn; /把SQL语句赋给Command对象 sqlcommand.CommandText = insert into tongzhi(sno,xno) values (sno,xno); sqlcommand.Parameters.AddWithValue(sno, TextBox1.Text); sqlcommand.Parameters.AddWithValue(xno, TextBox2.

25、Text); try /打开连接 sqlconn.Open(); /执行SQL命令 intinsertCourt = sqlcommand.ExecuteNonQuery(); if (intinsertCourt 0) Label2.Text = 添加成功; else Label2.Text = 添加失败; catch (Exception ex) Label2.Text = 该记录不存在; finally sqlcommand = null; sqlconn.Close(); sqlconn = null;工具栏工具栏显示:登陆身份;首页、修改密码、注销登陆系统导航栏如下图所示,此图展示了

26、在网站(wn zhn)系统的左边一栏的导航栏界面,此导航栏界面包含了前面的设计中的所有的内容,简单明了,易于操作。 学生列表(li bio)模块此处显示学生的详细信息,便于管理员查看学生入住情况以及管理。还没有寝室的学生可以在此处进行迁入,入住到想要的楼里的寝室号;只要在名字右边最后输入楼号和寝室号点击(din j)迁入即可迁入到相应的寝室,如果迁入寝室已满,系统将提示寝室已满。如若该学生已有寝室,迁入则不可用。学生(xu sheng)列表迁入代码(di m)如下:protected void Page_Load(object sender, EventArgs e) if (!Page.Is

27、PostBack) bindgrid(); void bindgrid() string sqlconnstr = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString; ; DataSet ds = new DataSet(); using (SqlConnection sqlconn = new SqlConnection(sqlconnstr) SqlDataAdapter sqld = new SqlDataAdapter(select stuss.sno,stuss.xno, from stus

28、s, stuimg where stuss.xno=stuimg.no, sqlconn); sqld.Fill(ds, tabstudent); /判断是否已经进行(jnxng)排序,如果是则按照ViewState中存储的信息生成排序后的DataView对象 if (ViewStateSortDirection = null) GridView1.DataSource = ds.Tablestabstudent.DefaultView; else DataView SortedDV = new DataView(ds.Tablestabstudent); SortedDV.Sort = Vi

29、ewStateSortExpression.ToString() + + ViewStateSortDirection.ToString(); GridView1.DataSource = SortedDV; GridView1.DataBind(); protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) GridView1.EditIndex = e.NewEditIndex; bindgrid(); protected void GridView1_RowUpdating(object sen

30、der, GridViewUpdateEventArgs e) string sqlconnstr = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString; ; SqlConnection sqlconn = new SqlConnection(sqlconnstr); /提交(tjio)行修改 try sqlconn.Open(); SqlCommand Comm = new SqlCommand(); Comm.Connection = sqlconn; Comm.CommandText = upd

31、ate stuss set sno=sno, name=name where xno=xno; Comm.Parameters.AddWithValue(xno, GridView1.DataKeyse.RowIndex.Value.ToString(); Comm.Parameters.AddWithValue(sno, (TextBox)GridView1.Rowse.RowIndex.Cells1.Controls0).Text); Comm.Parameters.AddWithValue(name, (TextBox)GridView1.Rowse.RowIndex.Cells2.Co

32、ntrols0).Text); Comm.ExecuteNonQuery(); sqlconn.Close(); sqlconn = null; Comm = null; catch (Exception ex) Response.Write(数据库更新(gngxn)出错 + ex.ToString(); GridView1.EditIndex = -1; bindgrid(); protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) GridView1.EditIndex

33、= -1; bindgrid(); protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) /设置(shzh)数据库连接 string sqlconnstr = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString; ; SqlConnection sqlconn = new SqlConnection(sqlconnstr); sqlconn.Open(); /删除行处理 String sql = de

34、lete from stuss where xno= + GridView1.DataKeyse.RowIndex.Value.ToString() + ; SqlCommand Comm = new SqlCommand(sql, sqlconn); Comm.ExecuteNonQuery(); sqlconn.Close(); sqlconn = null; Comm = null; GridView1.EditIndex = -1; bindgrid(); protected void GridView1_Sorting(object sender, GridViewSortEvent

35、Args e) if (ViewStateSortDirection = null) ViewStateSortDirection = DESC; if (ViewStateSortDirection.ToString() = ASC) ViewStateSortDirection = DESC; else ViewStateSortDirection = ASC; ViewStateSortExpression = e.SortExpression; this.bindgrid()寝室(qnsh)列表这里管理员可以查看(chkn)到所有房间的情况,右边编辑一列可以对房间的信息进行修改和对寝室

36、进行删除。点击详细信息可以查看到寝室里面的学生详情,如下图:所有(suyu)寝室详细信息寝室列表代码:protected void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) bindgrid(); void bindgrid() string sqlconnstr = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString; ; DataSet ds = new DataSet(); using (SqlConnection sq

37、lconn = new SqlConnection(sqlconnstr) SqlDataAdapter sqld = new SqlDataAdapter(select stuss.sno,stuss.xno, from stuss, stuimg where stuss.xno=stuimg.no, sqlconn); sqld.Fill(ds, tabstudent); /判断是否已经进行排序(pi x),如果是则按照ViewState中存储的信息生成排序后的DataView对象 if (ViewStateSortDirection = null) GridView1.DataSourc

38、e = ds.Tablestabstudent.DefaultView; else DataView SortedDV = new DataView(ds.Tablestabstudent); SortedDV.Sort = ViewStateSortExpression.ToString() + + ViewStateSortDirection.ToString(); GridView1.DataSource = SortedDV; GridView1.DataBind(); protected void GridView1_RowEditing(object sender, GridVie

39、wEditEventArgs e) GridView1.EditIndex = e.NewEditIndex; bindgrid(); protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) string sqlconnstr = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString; ; SqlConnection sqlconn = new SqlConnection(sqlconnstr); /提交

40、(tjio)行修改 try sqlconn.Open(); SqlCommand Comm = new SqlCommand(); Comm.Connection = sqlconn; Comm.CommandText = update stuss set sno=sno, name=name where xno=xno; Comm.Parameters.AddWithValue(xno, GridView1.DataKeyse.RowIndex.Value.ToString(); Comm.Parameters.AddWithValue(sno, (TextBox)GridView1.Row

41、se.RowIndex.Cells1.Controls0).Text); Comm.Parameters.AddWithValue(name, (TextBox)GridView1.Rowse.RowIndex.Cells2.Controls0).Text); Comm.ExecuteNonQuery(); sqlconn.Close(); sqlconn = null; Comm = null; catch (Exception ex) Response.Write(数据库更新(gngxn)出错 + ex.ToString(); GridView1.EditIndex = -1; bindg

42、rid(); protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) GridView1.EditIndex = -1; bindgrid(); protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) /设置(shzh)数据库连接 string sqlconnstr = ConfigurationManager.ConnectionStringsConnectionStrin

43、g.ConnectionString; ; SqlConnection sqlconn = new SqlConnection(sqlconnstr); sqlconn.Open(); /删除(shnch)行处理 String sql = delete from stuss where xno= + GridView1.DataKeyse.RowIndex.Value.ToString() + ; SqlCommand Comm = new SqlCommand(sql, sqlconn); Comm.ExecuteNonQuery(); sqlconn.Close(); sqlconn =

44、null; Comm = null; GridView1.EditIndex = -1; bindgrid(); 宿舍(ssh)查询这里管理员可以通过输入(shr)楼号和寝室号对想要了解的寝室进行快速查询,这样管理员可以快速的找到自己想要了解的寝室。下面是我们对1幢101号寝室(qnsh)的查询:寝室查询1幢101的详细信息人物查询这里我们可以快速查询到个人的情况,知道该学生在哪个寝室。下面是我们对学号为2014001的学生进行查询。人物查询部分样式代码如下: string Name4 = (string)SessionName4; string sqlconnstr = Configurat

45、ionManager.ConnectionStringsConnectionString.ConnectionString; SqlConnection sqlconn = new SqlConnection(sqlconnstr); SqlCommand sqlcommand = new SqlCommand(); sqlcommand.Connection = sqlconn; /打开(d ki)连接 sqlconn.Open(); /建立(jinl)Command对象 sqlcommand.CommandText = select stuss.sno,stuss.xno, from stuss, stuimg where stuss.xno=stuimg.no and sno=sno; sqlcommand.Parameters.AddWithValue(sno, Name4); /建立DataReader对象(duxing),返回查询结果

温馨提示

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

评论

0/150

提交评论