网上书店系统毕业设计.doc

上传人:爱问知识人 文档编号:3291124 上传时间:2019-08-08 格式:DOC 页数:37 大小:6.43MB
返回 下载 相关 举报
网上书店系统毕业设计.doc_第1页
第1页 / 共37页
网上书店系统毕业设计.doc_第2页
第2页 / 共37页
网上书店系统毕业设计.doc_第3页
第3页 / 共37页
网上书店系统毕业设计.doc_第4页
第4页 / 共37页
网上书店系统毕业设计.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《网上书店系统毕业设计.doc》由会员分享,可在线阅读,更多相关《网上书店系统毕业设计.doc(37页珍藏版)》请在三一文库上搜索。

1、四川大学锦城学院本科毕业论文 网上书店系统网上书店系统专业:软件工程学生:谭鹏均 指导老师:乔少杰摘 要随着计算机技术在各行各业日益广泛和深入的应用,网络的概念早已深入人心。网络在各行各业的发展战略中占据了重要的位置,成为商家不可分割的部分。商品的宣传已不只局限于电视与报纸,网络已成为商家展示自己的另一个舞台。商家建立网站,将商家各方面的宣传与服务展现于网络中,通过网络更可实现如网上购物、信息查寻等功能,这些在改变我们原有经营方式与经营理念的同时,也为商家带来了更高的效益。因此,对于商家来说,拥有一个属于自己的网站是至关重要的。网上书店越来越受到人们的关注。通过网上书店,人们足不出户就能选购自

2、己所需要的图书。网上书店是根据公司的实际需求、应用动态网页技术开发而成。浏览器为第一层,作为系统的应用界面;应用逻辑服务为第二层;数据链接为第三层,作为系统的数据存取服务。在支持整个网站的运作功能的基础上,能帮助用户对前台网站进行日常管理和信息发布;并具有占用系统资源少、信息量大、站点维护方便、便于扩充和更新、易于继承和保护历史数据等优点。在此,我真诚的感谢对我的毕业设计进行耐心指导的乔少杰老师,以及对我的论文完成给予帮助的各位老师和同学。关键词:SQLSERVER ASP.NET C#online bookstore systemMajor: Software engineering Stu

3、dent: Tan Pengjun Supervisor: Qiao ShaojieAbstractWith the popularity of the network and supporting the development of information technology, network-based services, information dissemination as the direction of reform and development of technology. This design is mainly online bookstore Web sites,

4、 established between the buyer and reader communication.On the one hand, the buyer can be released in this web site, on the other hand book information on website where readers can browse books information and buy books and Buyers can check their shopping cart information, including historical shopp

5、ing cart and the current cart information, and can choose Banks for payment.Administrators can manage the information on the books, information and user information management.With the development of the Internet, online bookstores more concern for people. Through the online bookstore, people can st

6、ay at home to buy the books they need. Online bookstore is based on the actual needs of the company, using dynamic web technology was developed. a browser for the first floor, as a system of the application interfaces ;application logic services for the second floor ;fit myself to a number of the ap

7、plication client spread of the operation and maintenance requirements. in support of the operational functions of the entire site, based on the reception site to help users of the daily management and information dissemination; and with less system resources, the amount of information large, site ma

8、intenance convenient, easy to expand and update, easy to inherit and the protection of historical data and so on. Thanks to my tutor, Teacher Zhao Shan.he gives me earnest direct to this paper,as well as other teachers and my fellow students.Key Words:SQLSERVER ASP.NET C#目 录1引 言12概论12.1 网上书店开发简介12.2

9、网上书店的研究意义22.3 网上书店研究对象33基础知识介绍33.1ASP.NET的概述33.1.1ASP.NET的功能和特点43.1.2 查询数据库73.2 数据库技术104总体设计104.1功能模块104.1.1系统功能结构图104.1.2 各功能模块简要描述114.2 数据库设计114.2.1 系统主要E/R图114.2.2数据库主要表125详细设计175.1功能描述175.1.1非管理员用户175.1.2管理员用户225.2 数据库连接276性能测试与分析286.1 运行各个模块进行调试286.2 对调试结果进行分析297总结31参考文献32致 谢3333四川大学锦城学院本科毕业论文

10、网上书店系统1引 言 伴随着Web技术和社会经济的发展,人们不再满足于只能浏览信息的静态网页,更多时候需要与上网的互联网用户进行交流以及发表自己的意见见解,因此能提供后台数据库的管理和控制等服务的动态网站就诞生了。近年来,随着互联网在中国的迅速发展,越来越多的人也希望能过通过网络购买各种自己想要的物品。 2003年5月10日淘宝网建立。淘宝网目前业务跨越C2C(个人对个人)和B2C(商家对个人)两大部分,成为中国乃至亚洲到世界最具影响力的购物网站,全国各地纷纷建立起自己的网络购物网络,网上购物呈星火燎原之势,迅速地出现在全国各地。特别是在北京、上海以及广东等网络比较成熟的省市,网上购物越来越得

11、到人们的亲睐。实际上,网上购书与在真实的书店基本上是相同的,不同的是网上购书是买卖双方通过一个网络虚拟的平台来实现。网站一般为购物者准备了发表评论联系卖家的功能,也在很明显的地方试用了人性化的导航标示,使得没有太多网络知识的人们,也能准确地找到所需要的东西,购书者可以通过多种途径查询到书店发布的书籍得相关信息,书店管理员也能网站对所卖书籍的信息做一个详细的管理与描述,一边广大购书者能清楚明白额了解各种各样的书籍。2概论2.1 网上书店开发简介本系统采用B2C(商家对个人)的结构编写,前台使用的是Visual Studio 2008平台,所使用的语言是ASP.NET,后台使用强大的数据库软件SQ

12、L Server 2005。 1、Visual Studio 2008是一套完整的开发工具集,用于生成XML Web Services、ASP.NET Web 应用程序,移动应用程序以及桌面应用程序。Visual C+、Visual Basic, Visual J#以及Visual C# 都使用相同的集成开发环境 (IDE),利用 IDE 可以共享工具并且有助于创建混合语言解决方案。此外,这些语言利用了 .NET Framework 的功能,通过此框架可使用简化XML Web Services 开发的关键技术以及ASP Web 应用程序。 2、动态”网站所具有的另外几个特点:(1) “自动更新

13、”即是不需要维护者手动地更新庞大的文档内容,系统会自动根据客户端用户提出的要求和需要生成新的页面,从而大大节省工作量和提高工作效率。 (2) “交互性”即系统会根据用户的要求和选择而动态响应和改变,让客户端的用户和服务器端进行面对面的交流”浏览器由此作为客户端界面,客户可以直接在自己的客户端浏览器上对远程的服务器的相应的文件和数据进行查询,增加和删除等简单操作,从而大大增加了网站的“互动性”。 (3)因人因时而异即当不同的人在不同的时间访问你的网站时看到的将会是不同的网页。动态网页不外乎是对用户请求的处理和处理结果的显示。这里包含了对用户需求的传递与分析,根据用户需求对数据库的操作,处理结果的

14、返回与显示,错误处理等较为复杂的技术环节。在编程的时后,首先要明确该组程序应实现的功能,然后再根据功能要求创建好数据库。动态网页可以选择Visual Studio 2008等专门工具开发,也可通过直接编写源代码完成。动态网页是通过让用户在服务器上执行一个程序来实现的,这必然存在着一定程度的安全隐患。为了保证一定程度的安全性与可靠性,建议对用户的网页表单输入进行相应检查。有两种基本的表单输入检查方法,一是服务器端验证,一是客户端验证。在服务器端验证客户输入是最安全的,但增加了客户和服务器之间的通话次数,会由于网络原因带来一定的延时;在客户端(浏览器端)网页上通过JavaScript或VBscri

15、pt等脚本来验证用户输入是最快捷的,但安全性较前者稍差,因为客户能够通过修改网页源代码来避开该脚本验证。建议根据实际需要将两者结合起来,这样就实现了双保险。2.2网上书店的研究意义 美国是Internet的发源地,目前拥有世界上最大的网上书店巴恩斯诺内尔书店网(http:/www.B) 和 亚马逊网上书店(网址为http:/www.A)等。中国近几年网上书店的发展也非常快,如芝麻开门网上书店(http:/)、当当网上书店(http:/www.dangdang.org)等多达数百家。网上构建书店与普通书店的目的有所不同,其意义主要为:1、便于网站书店人员了购书者的阅读需求普通书店采购图书最大的问

16、题就是缺乏准确的需求信息,虽然采取的很多办法,但实际效果并不理想。但是网上书店就不一样,采用网上推荐后,读者不仅可以荐书,还充分发表意见。2、便于读者推荐图书读者既可从网上书店中挑选所需图书信息提供给书店,也可提供其他来源信息。与传统方式相比,采用网上书店荐书具有以下优势:信息量大。与传统书目报相比,网上书店能够提供海量图书信息。书目报由于受版面及其它条件的制约,其品种及受众往往比较少。而普通网上书店由于各出版社的加盟,其存书可达数百万种之多。如美国俄亥俄州的图书馆网上书店能提供100万种在版图书和300万种绝版图书,加拿大最大的网上书店查普特斯书店可提供200万种图书。任何感兴趣的读者都可参

17、与荐书。目信息丰富。目前,大多数网上书店都提供尽可能完整详细的书目信息,如书名、作者译者、出版社、出版日期、书号、开本、页码、内容提要、价格等,有的甚至提供图书的目录、前言、内容节选、精彩插图、书评、作者简介等。这些书目信息弥补了读者不能直接翻看书的内容、了解书的全貌的缺陷。检索便捷。网上书店提供了多种检索途径,可以从书名、作者、主题词、ISBN号等途径进行单独检索或组合检索,快捷准确。3、便于读者购买图书现在图书价格都不便宜,所以一个网上书店购书不仅便宜,而且通过网络购买急需的图书,网上书店订购方式非常简单易行,读者足不出户就可以购买到称心如意的图书。许多人不大使用网络购物的原因就是货币支付

18、、退换货机制问题,商家担心货发出去收不到款,顾客担心寄了钱收不到货,或者收到的不是自己需要的东西又不能调换,这些问题在图书馆的网上书店都可迎刃而解。4、便于图书馆开展个性化服务。网上书店不只单纯推荐、销售图书,还可充分发挥网络优势,提供丰富多彩的个性化服务,满足读者特定的需求。网上书店开设的如新书推荐、畅销书排行、读者评论、作者访谈、专家点评等栏目,既可使读者把握全方位的图书信息,又可使其利用网络公告版同图书的作者及其他读者进行在线讨论、交流心得体会,并根据他人的书评来协助选书。2.3 网上书店研究对象一般来说网上书店包括了两个对象:卖书者和买书者。我做的这个购书网站主要能够达到以下几点要求:

19、系统管理员可以使用该系统进行发布书籍、管理用户、修改书籍信息、添加新书、管理留言板、发布书讯、管理订单等操作;注册的购书者可以实现:发表留言、个人信息管理、管理购物车、查看订单等操作;普通Internet用户可以使用该系统注册为书店会员”,进行购书操作。3基础知识介绍3.1ASP.NET的概述ASP.NET是建立在微软新一代.Net平台架构上的,利用普通语言运行时(Common Language Runtime)在服务器后端为用户提供建立强大的企业级Web应用服务的编程框架。ASP.NET可以完全利用.Net架构的强大,安全,高效的平台特性。ASP.NET是运行在服务器后端编译后的普通语言运行

20、时代码,运行时早绑定(Early Binding),即时编译,本地优化,缓存服务,零安装配置,基于运行时代码受管与验证的安全机制等都为ASP.NET带来卓越的性能。ASP.NET主要包括WebService和WebForm两种编程模型。前者通过对HTTP,XML,SOAP,WSDL等Internet标准的支持提供在异构网络环境下获取远程服务,连接远程设备,交互远程应用的编程界面。后者为用户提供建立功能强大,外观丰富的基于表单(Form)的可编程Web页面。C#是一种语言,C#(读做 C sharp),C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。

21、并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。它借鉴了Delphi 的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。 C# 语法表现力非常强,只有不到 90 个关键字,而且简单易学。C# 的大括号语法使任何熟悉 C、C+ 或 Java 的人都可以立即上手。了解上述任何一种语言的开发人员通常在很短的时间内就可以开始使用 C# 高效地工作。 语法简化了 C+ 的诸多复

22、杂性,同时提供了很多强大的功能,例如可为空的值类型、委托、 枚举、C# 源文件可以定义任意数量的结构、类、接口及事件。Microsoft.NET 是 Microsoft XML Web services 平台。3.1.1ASP.NET的功能和特点 1.ASP.NET访问数据库的原理C#.NET是服务器端的脚本执行环境,可产生和执行动态的高性能的WEB服务器应用程序。当用户使用浏览器请求ASPX主页时,WEB服务器自动响应,调用ASP引擎来执行ASPX文件,并解释其中的脚本语言(VCScript或JScript),通过SQLBC连接数据库,由数据库访问组件ADO(ActiveXDataObjec

23、ts)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。由于ASPX在服务器端运行,运行结果以HTML主页形式返回给用户浏览器,因此ASPX源程序不会泄密,增加了系统的安全性和保密性。另外,ASPX是面向对象的脚本环境,用户可以增加ActiveX组件来扩充其功能,拓展其应用范围。2.ASPX页面的结构ASPX的程序的文件名由.aspx结尾,ASPX文件通常由四个部分构成:(1)标准的HTML标记:所有的HTML标记均可使用。ASPX语法命令:位于标签内的ASPX代码。3.ASP.NET的运行环境目前ASP.NET可运行在三种环境下。(1)WINDOWS XP/VIS

24、TA(2)WINDOWS 95/98运行PWS(Personal Web Server)。 (3)WINDOWS NT workstation 4.0运行Peer Web Server 3.0以上。(4)WINDOWS NT server 4.0运行IIS 3.0(Internet Information Server)以上。其中以NT server上的IIS功能最强,提供了对C#.NET的全面支持,是创建高速、稳定的ASPX主页的最佳选择。4.ASP.NET的内建对象ASP.NET提供了六个内建对象,供用户直接调用:(1) Session对象:存贮特定用户的会话信息,只被该用户访问,当用户在

25、不同WEB页面跳转时,Session中的变量在用户整个会话过程中一直保存。Session对象需cookie支持。(2) Application对象:负责管理所有会话信息,可用来在指定的应用程序的所有用户之间共享信息。(3)Server对象:提供对服务器有关方法和属性的访问。 。(4) Object Context对象:IIS 4.0新增的对象,用来进行事务处理。此项功能需得到MTS(Microsoft Transcation Server)管理的支持。(5) Request对象:从用户端取得信息传递给服务器,是ASPX读取用户输入的主要方法(6)Response对象:服务器将输出内容发送到用户

26、端。5.ASPX的主要内置组件(1)数据组件:提供ADO (ActiveX Data Objects)和ADO.NET来访问支持ODBC/SQLBC的数据库。(2) File Access组件:提供对服务器端文件的读写功能。(3) Ad Rotator组件:用来按指定计划在同一页上自动轮换显示广告,用于WWW上日益重要的广告服务。(4)Content Linking组件:生成WEB页内容列表,并将各页顺序连接,用于制作导航条。(5) Browser Capabilities组件:确定访问WEB站点的用户浏览器的功能数据,包括类型、性能、版本等。6.Database Access组件ADO.NE

27、TWWW上很重要的应用是访问WEB数据库,用ASP访问WEB数据库时,必须使用ADO.NET组件,ADO.NET是ASPX内置的ActiveX服务器组件(ActiveX Server Component),通过在WEB服务器上设置ODBC和OLEDB可连接多种数据库:如SYBASE、ORACLE、INFORMIX、SQL SERVER、ACCESS、VFP等,是对目前微软所支持的数据库进行操作的最有效和最简单直接的方法。 ADO.NET组件主要提供了四个集合以及七个对象来访问数据库。(1) Command对象:执行SQL指令,访问数据库。(2) Connection对象:建立与后台数据库的连接

28、。(3) RecordSet对象:存放访问数据库后的数据信息,是最经常使用的对象。(4)Parameters集合和Parameters对象:为Command对象提供数据和参数。 (5) Properties集合和Property对象:提供有关信息,供Connection、Command、RecordSet、Field对象使用。(6)Field集合 和Field对象:提供对RecordSet中当前记录的各个字段进行访问的功能。(7)Errors集合 和Error对象:提供访问数据库时的错误信息。7.ASPX访问SQL Server 2005数据库步骤ASPX中,使用ADO.NET组件访问后台数据

29、库是,有以下几个步骤:1. 定义数据源在WEB服务器上打开控制面板,选中ODBC,在系统DSN下选添加,选定你希望的数据库种类、名称、位置等。本文定义SQL SERVER,数据源为HT,数据库名称为HTDATA,脚本语言采用Jscript。2. 使用ADO.NET组件查询WEB数据库(1) 调用Server.CreateObject方法取得”ADODB.Connection”的实例,再使用Open方法打开数据库:conn = Server.CreateObject(“ADODB.Connection”)conn.Open(“HT”)(2) 指定要执行的SQL命令连接数据库后,可对数据库操作,如

30、查询,修改,删除等,这些都是通过SQL指令来完成的,如要在数据表table1中查询代码中含有M的记录sqlStr =” select * from table1where code like %M%”rs = conn.Execute(sqlStr)(3) 使用RecordSet属性和方法,并显示结果为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就是储存在内存中的数据。rs = Server.CreateObject(“ADODB.RecordSet”)rs.Open(sqlStr,conn,1,A)注:A=1读取A=3 新增、修改、删除在RecordSet组件中,常

31、用的属性和方法有:rs.Fields.Count: RecordSet对象的字段数。rs(i).Name: 第i个字段的名称,i为0至rs.Fields.Count-1rs(i): 第i个字段的数据,i为0至rs.Fields.Count-1rs(字段名): 指定字段的数据。rs.Record.Count:游标中的数据记录总数。rs.EOF: 是否最后一条记录。rs.MoveLast: 指向最后一条记录。rs.MoveFirst: 指向第一条记录。rs.MoveNext: 指向下一条记录。rs.GetRows: 将数据放入数组中。rs.MovePrev: 指向上一条记录。rs.close():

32、 关闭连接。(4) 关闭数据库conn.close()3.1.2 查询数据库下面这用root访问SQL SERVER数据库中的BTS表来说明。下面的代码是管理员管理留言板的页面的后台代码:using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebContr

33、ols.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient; public partial class Admin_LinkAdmin : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!this.IsPostBack) if (SessionUserName = null) Response.Redirect(erro_Amin.aspx); else this.lb_to_name.Text = 欢

34、迎您: + SessionUserName.ToString(); this.bindgridview(); /定义一个绑定到gridview的方法,实现分页功能! public object bindgridview() SqlConnection con = DBAccess.createsqlcon(); con.Open(); /试用sqldataadapter+set来实现数据源的绑定,实现gridview分页功能。 SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = new SqlCommand(select

35、 * from BTS, con); DataSet ds = new DataSet(); sda.Fill(ds, BBTS); this.GridView1.DataSource = ds.TablesBBTS; / 对应行的主码标识! GridView1.DataKeyNames = new string ID; this.GridView1.DataBind(); return ds; protected void lbt_exit_Click(object sender, EventArgs e) / Response.Write(window.close();); protect

36、ed void GridView1_PageIndexChanging1(object sender, GridViewPageEventArgs e) this.GridView1.PageIndex = e.NewPageIndex; this.GridView1.DataSource = bindgridview(); this.GridView1.DataBind(); protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) if (e.Row.RowType = DataControlR

37、owType.DataRow) e.Row.Attributes.Add(onmouseover, c=this.style.backgroundColor;this.style.backgroundColor=#58baf0); e.Row.Attributes.Add(onmouseout,this.style.backgroundColor=c); protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) string sindex =Convert.ToString ( GridView

38、1.DataKeyse.RowIndex.Value); SqlConnection con = DBAccess.createsqlcon(); SqlCommand cmd = new SqlCommand(delete from BTS where ID=+sindex+, con); con.Open(); cmd.ExecuteNonQuery(); this.bindgridview(); protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) this.GridView1.EditIn

39、dex = e.NewEditIndex; this.bindgridview(); protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) this.GridView1.EditIndex = -1; this.bindgridview(); protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) SqlConnection con = DBAccess.createsql

40、con(); con.Open(); SqlCommand cmd = new SqlCommand(update BTS set Adminre= + (TextBox)(this.GridView1.Rowse.RowIndex.Cells3.Controls0).Text.ToString().Trim() + where ID=+ GridView1.DataKeyse.RowIndex.Value.ToString() + , con); cmd.ExecuteNonQuery(); con.Close(); GridView1.EditIndex = -1; this.bindgr

41、idview(); 3.2 数据库技术SQL Server是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠、高效的平台用于企业数据管以及商业智能应用。SQL Server 2005为信息工作者和IT专家提供了了熟悉的、强大的工具,并且减少了在从移动设备到企业数据系统的多平台上创建、部署、管理及使用企业数据和分析应用程序的复杂度。通过全面的功能集、现有系统的集成性和对日常任务的自动化管理能力,SQL Server 2005为不同的企业提供了一个完善的数据解决方案。SQL Server 2005不仅能作为一个功能强大的数据库服务器有效地工作,而且数据库引擎也用于需要

42、在客户端本地存储独立数据库的应用程序中。所以采用SQL Server 2005作为数据库平台是很是实用的。4总体设计4.1功能模块4.1.1系统功能结构图图1:功能结构图4.1.2 各功能模块简要描述 (1)登录网站时,用户可以在页面中登录,管理员点击下方后台登陆。1.1用户登录后,进入书籍列表页面,按类别分别列出数据库中的书籍信息,点击可以购买书籍。1.2管理员,可以不仅可以对图书进行添加,删除,修改等操作,而且能够对图书类别,用户等进行相同的操作。还可以对资金进行查看。a.图书类别修改:,可根据图书类别找到这一类别的所有书籍。b.图书信息修改与添加:登陆后台后,可以添加详细信息,也可以对图

43、书的信息进行修改。 (2)没有帐号的用户可以进入注册页面进行注册,注册页面具有验证功能,能够判断用户输入的信息是否达到相应的要求。 (3)图书详细信息页面,根据用户选定的书籍显示相应书籍的详细信息,还设有购买功能。 (4)图书列表:通过用户进入后,可以看到推荐的书,热销图书以及最新图书的列表。 (5)购物车页面用以显示用户选定需要购买的书籍信息并完成结算。4.2 数据库设计4.2.1 系统主要E/R图图2:会员E-R图后台管理,在建立数据库之前,首先要针对后台的功能需求建立数据模型,然后在建立数据库。首先 画出部分的E-R图:图3:图书信息E-R图 4.2.2数据库主要表表1:书籍详细信息表列

44、名类型主键可为空值描述bookidintYN由数据库自动生成的顺序编号,作为图书的标示。booknameVarchar(128)NN书籍的名称。bookpublisherVarchar(128)NY出版社bookdateVarchar(128)NY出版日期yeshuintNY页数banciintNY该书的版次isbnVarchar(128)NYISBNshichangjiaintNY市场价huiyuanjiaintNY会员价best bookintNY管理员推荐此书chengjiaocountintNY该书成交数liulancountintNY该书被浏览次数dazheintNY该书折扣nclassid

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1