1、摘要摘要校园旧货交易系统的主要功能可分为:货物信息的登记、修改、查询、留言以及货物信息的统计和输出报表等。根据系统实际运作流程,可将校园旧货交易系统分成包括卖方、买方和管理员三个不同角色的功能模块。本论文主要研究校园旧货交易系统中卖方角色的设计与开发。涉及的具体功能主要包括:商品信息的发布、查询;卖方、买方关于商品交易的留言记录。核心模块包括三个部分:商品信息浏览、商品信息发布、留言讨论。设计实现系统卖方角色所使用的开发工具:Microsoft Visual C# 2005 Express,Microsoft Visual Web Developer 2005 Express,Microsof
2、t SQL Server 2005。本论文主要目的在于论述卖方角色关于商品信息的发布功能的实现,以及回复买方留言的功能。由于本系统需要使用者被认证为合法用户后才能发布商品信息,因此在设计上也初步考虑了系统的安全性问题。关键字:校园交易 C# ASP.NET 2.0 SQL Server。AbstractAbstractThe main function of the secondhand goods trade system of the campus (SGTSOC) can be divided into registration, modification, inquiring abou
3、t the goods information, leaving a message and giving statistics and reporting goods information, etc. According to the work procedure of the system, SGTSOC can be divided into three function module including the seller, the buyer and the administrator.The role of the seller in SGTSOC has been desig
4、ned and developed mainly in this thesis. The concrete function involved includes mainly issue, inquiry of the goods information, message records about the trade between the sellers and the buyers. The main module includes three parts that are issues of goods information, leaving a message and discus
5、sing about information of the goods.The technology and tools used to design the seller role of the system are Visual Studio .NET including Microsoft Visual C# 2005 Express, Microsoft Visual Web Developer 2005 Express, Microsoft SQL Server 2005.The main purpose of this thesis lies in describing the r
6、ealization of putting out goods information and replying the buyers message as a seller role. For it needs authentication of the users who wants to put out goods information, there is some consideration of the security problem of the system.Keyword: trade on the campus C# ASP.NET 2.0 SQL Server.目录目录
7、第一章 引言 .11.1 课题来源 .11.2 开发工具的选择 .1第二章 .NET 框架 .32.1 .NET 整体框架 32.1.1 NGWS Framework 的定义 .32.1.2 NameSpace 定义 .32.2 Web 应用程序模型 .42.2.1 ASP.NET 的基本概念 52.2.2 NGWS Runtime.62.2.3 ADO.NET7第三章 系统总体设计 .113.1 系统需求分析 .113.2 系统功能模块分析 .133.3 系统数据库设计 .133.3.1 ER 图设计 .133.3.2 系统数据库设计 .14第四章 应用程序设计 .174.1 网页页面设计
8、.174.1.1 网页页面设计 .174.1.2 系统构建中使用的若干简单控件的介绍 .184.2 待售商品信息浏览功能模块设计 .214.3 商品信息发布功能模块设计 .274.4 填写个人信息功能模块设计 .304.5 商品论坛功能模块设计 .32第五章 结束语 .39致谢 .41第一章 引言1.1 课题来源从 1990 年以来,随着我国国民经济的发展与产业结构的快速升级,我国旧货业发展迅速。1998 年,我国旧货交易额仅为 300 亿元,到 2003 年底就已经突破了 1200 亿元,年均增长达到 41.42%。然而,由于我国旧货市场的价格体系还不够完善,不可避免地会出现旧货非规范定价的
9、问题,从而损害了消费者的利益,影响到旧货的正常流通。 1因此,对旧货市场而言,信息的媒介作用就显得非常重要。构建合理的收售网络、加强信息沟通,成为必要。随着 Web 技术的不断进步,旧货交易系统和旧货交易网站蓬勃发展起来。例如国外的“电子港湾” ,国内的“当当” ,都开辟了自己的网上二手商品市场。开发设计校园旧货交易系统有两个方面的现实意义:一是解决了同学们,特别是即将毕业的同学旧物无法处理的困难;二是使急需这些物品的同学,以较低廉的价格购买到想要的东西,实现了资源的合理利用。1.2 开发工具的选择现在用来构建网上交易系统的语言和技术种类非常丰富,我们此次设计和开发的校园旧货交易系统主要采用
10、C#、ASP.NET 2.0、ADO.NET 等语言和技术,在 Microsoft Visual C# 2005 Express、Microsoft Visual Web Developer 2005 Express和 Microsoft SQL Server 2005 等开发工具和开发环境下进行。C# 是微软公司在 C、C+之后发布的一种新的编程语言,它对 C、C+做了重大改进,在继承前两者强大功能的同时,去掉了它们的一些复杂特性,成为一种高效的、现代的面向对象的程序设计语言。 2ASP .NET 2.0 并不是在 ASP 基础上的简单升级,而是全新一代的动态网页实现系统。ASP 程序是面向
11、过程的,语句是被 HTML 包围,一条一条执行,在程序上难于维护,在效率上和速率上也都大打折扣,查看代码也很吃力。ASP .NET作为一种全新的 Web 开发技术,给了设计者一种全新的设计概念。它将软件设计和 Web 设计融为一体。它和 VB .NET、VC .NET、VC# .NET 这些程序设计语言使用同一个.NET Framework 对象开发库,故其可实现的功能非常强大,加上高系数的安全性、快捷的处理速率、条理清晰的类代码以及许许多多的集成功能,使校园旧货交易系统中卖方角色的设计与开发2从前在 ASP 中难以实现的功能在 ASP .NET 2.0 中可以轻松实现。 3 ADO .NET
12、 是由.NET Framework 为了与数据库中的数据进行交互而提供的一组对象类的名称,它可以与许多类型的对象交互,不仅有存储在数据库中的数据,还有存储在电子邮件服务器、文本文件、应用程序文档(例如 Excel 电子表格)和XML 中的数据。ADO 与 ADO.NET 都能够编写对数据库服务器中的数据进行访问和操作的应用程序,并且具有易于使用、高速度、低内存支出和占用磁盘空间较少、支持用于建立基于客户端/服务器端的 Web 应用程序的主要功能。但是ADO 使用 OLE DB 接口并基于微软的 COM 技术,而 ADO.NET 拥有自己的ADO.NET 接口并且基于微软的.NET 体系架构。因
13、为.NET 体系不同于 COM 体系,ADO.NET 接口也就完全不同于 ADO 使用的 OLE DB 接口,这也就是说ADO.NET 和 ADO 是两种数据访问方式。 ADO.NET 相对于 ADO 的最大优势在于对于数据的更新修改可以在与数据源完全断开联系的情况下进行,然后再把数据更新情况传回到数据源。这样大大减少了连接过多对于数据库服务器资源的占用。 4第二章 .NET 框架2.1 .NET 整体框架微软新一代的平台名称为“Microsofts Next Generation Windows Services”, 即“新一代 Windows 服务” 。这个平台的注册商标是“Microso
14、ft .NET”。Microsoft .NET 是 Microsoft XMLWeb Service 平台。 XMLWeb Service 允许应用程序通过 Internet 进行通讯和共享数据,而不需要考虑采用的是哪种操作系统、设备或编程语言。Microsoft .NET 平台提供创建 XMLWeb Service 并将这些服务集成在一起。Microsoft .NET 将开创互联网的新局面,使基于 HTML 的 Web 界面通过基于 XML 的信息得到扩展与增强。2.1.1 NGWS Framework 的定义.NET 作为一个崭新的运行平台,它使用关键的结构提供对所有.NET 下应用程序以
15、及 Web 程序的支持,包括对 ASP.NET 的支持。图 2.1 说明 Framework 支持 ASP.NET 和 Windows 应用程序的方式。ASP.NET agesASP.NET Web Srvice. plicatonTraditonlwsAplictWindowsA therSvicRutime FraorksCor Opting Syte图 2.1 .NET 模型2.1.2 NameSpace 定义对象是 Windows 开发环境中程序开发的中心,在不同的开发环境下,会具备不同的对象。.NET 所使用的对象就是命名空间(NameSpace ) 。在经典的 ASP 中,只有 S
16、erver、Request、Response 等六个对象。而ASP.NET 可以使用.NET 类库中非常丰富的对象。 .NET 类库中丰富的对象都有对应的名称定义,例如,要调用 SQL 数据库就必须使用 System.Data.SqlClient,要使用文本文件就必须使用 System.IO, 要使用 XML 就必须使用 System.Xml,这些就是命名空间。在命名空间里面包含类(Class),这些类都可以被看作为对象,它校园旧货交易系统中卖方角色的设计与开发4们有自己的属性、方法。因此每个命名空间可以看作是同类型对象的集合。所以在 ASP.NET 中需要用到某个对象时,就需要引入相应的命名
17、空间。.NET 类库、命名空间、类之间的关系可以用图 2.2 表示。. N E T 类库N a m e S p a c e 1 N a m e S p a c e 2C l a s s 1 C l a s s 2 C l a s s 1 C l a s s 2图 2.2 .NET 类结构模型因此,简单地说,.NET 框架就是通过 Framework 提供对.NET 的支持,并使用其丰富的类库进行程序的开发。 52.2 Web 应用程序模型早期 Web 上的所有信息都是静态的, Web 服务器仅仅对从本地文件系统下载静态的 HTML 的请求做出响应,并把该网页发送给发出请求的客户。静态技术的优点
18、在于可以以很高的效率提供信息的访问,并且站点的架设与开发都相当容易。随着 Web 的迅速普及,人们开始给静态的 HTML 网页添加动态的内容以开发各种丰富的应用领域。动态 Web 的技术发展主要有两个方向:服务器端技术和客户端技术。服务器端技术指在 Web 服务器端,根据客户的请求,动态生成相应的内容,然后发送给客户端浏览器。早期的服务器端技术有 CGI(Common Gateway Interface,通用网关接口),ISAPI(Internet Server Application Programming Interface, 因特网服务器应用程序编程接口),FastCGI 等,后期有Se
19、rverlet、JSP、ASP、PHP 等。 6我们仅仅简单研究一下 ASP 然后过渡到我们构建系统时所使用的ASP.NET。ASP 属于一种较新的服务器端动态技术,它只能和微软的 IIS(Internet Information Server,因特网信息服务器)配合使用。ASP 技术的核心是 ASP 文件,每一个 ASP 文件由脚本语言与 HTML 语言混合写成。Web 服务器在收到客户浏览器的请求后,首先在一个独立的环境中加载 ASP 文件,然后分析文件中嵌入的第二章 .NET 框架 5脚本并编译与执行这些脚本指令,最后 Web 服务器把脚本执行的输出结果返回到客户端。2.2.1 ASP.
20、NET 的基本概念ASP.NET 是用于创建动态 Web 内容的一种强大的服务器端技术,较之 ASP是一个质的飞跃。ASP.NET 与其底层框架.NET 紧密结合,为动态的 Web 开发技术提供了丰富而强大的类库资源。ASP.NET 与.NET Framework 的结合关系如图 2.3 所示。A S P . N E T应用程序A S P . N E TW e b 服务A S P . N E T 运行环境基于 . N E TF r a m e w o r k 的应用程序. N E T F r a m e w o r k 通用运行时刻支持 ( C o m m o n L a n g u a g
21、e R u n t i m e )传统的应用程序核心操作系统 ( W i n d o w s , U n i x , L i n u x , M a c O S )图 2.3 ASP.NET 与.NET FrameworkASP.NET 将事件模型引入到 Web 应用程序的开发领域。与事件模型对应的应用程序模型是传统的顺序执行模型。最早的基于字符界面的应用程序采用的就是顺序执行模型,也就是由应用程序来控制用户的交互流程,当程序需要用户输入某些信息时,在屏幕上就会出现提示。随着 Windows 应用的兴起,事件模型成为图形用户界面(Graphics User Interface,GUI)的应用程
22、序的标准,这种模型下用户控制应用程序的运行流程。用户通过鼠标、键盘向应用程序发出事件,程序响应这些事件以完成相应的功能。 78最早的 Web 应用程序模型也采用顺序执行模型。服务器端的脚本一次处理所有的脚本指令,然后把生成的动态信息发送给客户端。随着 Windows 图形界面程序的普及,HTML 表单也越来越趋近于 Windows 程序的交互风格,用户通常需要和页面进行各种复杂的交互。从理论上讲,这种图形界面的应用采用事件模型更为合理,但由于底层协议校园旧货交易系统中卖方角色的设计与开发6的问题,绝大部分的 Web 开发技术还是采用了顺序模型。图 2.4 显示了事件模型与顺序模型的区别。翻译事
23、件事件处理程序 1事件处理程序 2事件处理程序 3获取事件分发事件事件模型获取输入进行处理请求其他数据进一步处理结束顺序模型图 2.4 事件模型与顺序模型ASP.NET 可以使用多种语言开发。从原理上说,凡是可以在.NET 平台开发应用的语言以及可以生成微软中间语言代码(MSIL)的编译器,都可用来开发ASP.NET。目前主要的语言有 Visual Basic .NET、C#、Jscript .NET 以及受托管的C+(Managed C+)等。采用这些语言书写的源程序被编译为微软中间语言以后,其底层代码没有任何区别,可以互相调用各自生成的对象。ASP.NET 文件类型如表 2.1。表 2.1
24、 ASP.NET 的文件类型文件扩展名 用途及说明Global.asax ASP .NET 系统环境设置文件,相当于 ASP 中的 Global.asa.aspx 内含 ASP 程序代码的文件,如同过去的 ASP,浏览器可执行此文件,向服务器提出浏览请求.asmx 制作 Web Service 的原始文件.sdl 制作 Web Service 的原始文件 XML 格式的文件.vb 或.cs 在非 ASP.NET 环境下,执行 Web Service 的文件.aspc 可重复使用多个.aspx 文件,此文件内容可含有控件2.2.2 NGWS RuntimeASP.NET 是一种编译型编程框架,它
25、的核心是 NGWS Runtime。NGWS Runtime 提供一种运行时环境,叫做公用语言运行时,它管理代码的执行,并提供使编程更容易的服务,这些服务包括: 交叉语言集成。 自动内存管理。第二章 .NET 框架 7 交叉语言异常处理。 增强安全。 版本支持。 组件交互简化模式。 92.2.3 ADO.NET(1) ADO.NET 简介ADO.NET 是 ADO 的升级版本。在 ADO.NET 中,通过 Managed Provider 提供的应用程序编程接口(API) ,可以轻松地访问各种数据库资源。ADO.NET 中对数据库的访问接口分为两类,通用接口和专用接口。通用接口主要支持 ODB
26、C 和 OLEDB 两大接口的数据库,而这两个接口几乎能访问所有的数据库。专用接口访问的数据库比较特殊,例如 SqlClient 数据库接口只能访问SQL Server 数据库,MySqlClient 接口只能访问 MySql 数据库,Oracle 接口只能访问 Oracle 数据库。专用接口在性能方面一般优于通用接口。因此在程序的数据库不需要变动的情况下,采用专用接口是比较科学的。ADO.NET 中最重要的两个概念是 Managed Provider 和 DataSet。Managed Provider在以前的 ASP 中,通过 ADO 的数据存取采用了两层的基于连接的编程模型。随着多层应用
27、需求的不断增加,程序员需要无连接的模型。Managed Provider 就是多层次的无连接编程模型。它提供 DataSet 与数据库之间的联系,包括存取数据库的一系列接口,主要包括以下三个部件。 Connection、Command 和 Parameter。这三个对象提供 DataSet 与数据库之间的接口。DataCommand 接口定义数据列和表映射,并最终返回DataSet 供程序操作。 数据流提供高性能的数据存取机制,通过 DataReader 可以高效地访问数据流。 通过更底层的对象允许连接到数据库,然后执行数据库的特定命令,提供高性能的数据库访问操作。DataSetDataSet
28、 是 ADO.NET 的中心概念,称为数据库容器,可认为其是保留在内存中的数据库。DataSet 可以屏蔽各种数据库的差异,所有的数据源通过 DataSet 获校园旧货交易系统中卖方角色的设计与开发8得一致的编程模式。DataSet 支持表、表间关系、数据约束等功能,这和关系型数据库的基本模型是一致的。 DataTable 对象DataSet 里的表是用 DataTable 来表示的。DataSet 可以包含很多个DataTable,这些 DataTable 构成 DataCollection 对象。在 DataTable 中包含ColumnsCollection 对象,它代表数据表的各个列;
29、还包含 RowCollection 对象,它代表数据表中的各个行。 DataRelation 对象多个 DataTable 可以通过 DataRelation 建立关系,这些 DataRelation 形成集合,称为 RelationConnection,它是 DataSet 的子对象。 Relation 表示数据表之间的主键与外键的关系,当两个有这种关系的表之中的某个表的记录指针移动时,另一个表的记录指针也随之移动。当有外键的记录更新时,如果不满足主键外键关系,更新将会失败。 (2) 使用 ADO.NET 访问数据库ADO.NET 中最重要的概念是 DataSet,DataSet 是不依赖于
30、数据库的独立数据集合。即便数据连接断开,DataSet 依然可用。通过 DataSet,ADO.NET 访问数据库的步骤为: 创建与数据源的连接。 请求数据集合。 将集合放入 DataSet 中。 如果需要的话,可以再请求另外的数据集合。 关闭数据连接。 在 DataSet 上进行所需要的操作。 如果需要,将 DataSet 的变化更新到数据库中。 在 Windows 平台下 ADO.NET 主要由三种数据库访问模式:OLEDB 模式、ODBC 模式、SqlClient 模式。我们这里主要研究和使用 SqlClient 模式。SqlClient只用于访问 MS SqlServer 数据库,是
31、ADO.NET 中的比较特殊的组件。使用SqlClient 模式时需要引入的命名空间有 System.Data 和 System.Data.SqlClient。(i) 连接数据库(SQL Server 的连接)SqlClient 模式是 ADO.NET 中对 SQL Server 数据库推荐使用的访问模式,是第二章 .NET 框架 9专门针对 SQL Server 而设计的访问接口,能提供高效、稳定的数据库访问服务。在设定数据库连接时需指定 SQL Server 服务器、具有所需数据库访问权限的用户名及密码、所要访问的数据库名称等参数。常见连接数据库的格式为:SqlConnection myC
32、onnection=new SqlConnection( server=服务器;uid=用户名;pwd=密码 ;database=数据库 );(ii) 使用 Command 执行数据库操作使用 Command 执行数据库操作一般需要三个步骤:建立数据库连接,使用 Connection 对象的 Open()方法。执行数据库操作,使用 ExecuteReader()或 ExecuteNonQuery()执行数据库命令。关闭数据库连接,使用 Connection 对象的 Close()方法。 1011第三章 系统总体设计软件系统的设计大约要经历可行性分析,项目开发计划,需求分析总体设计,详细设计,编
33、码,测试以及维护等七个阶段。可行性分析和项目开发计划在前面已经叙述,下面所要做的是进行软件需求分析,概要设计和详细设计。编码过程将在下一节论述,而测试和维护过程不在本文叙及。3.1 系统需求分析校园旧货交易系统主要面向管理员、卖方和买方三个角色。角色是与系统交互的人或事,可以向系统发送消息,从系统中接受消息,或是在系统中交换信息。在这三个角色中,系统管理员对系统具有最高权限,可以进行除信息发布、查询、删除、更改等一般操作外,还可以对系统功能单元、页面布局、成员资料进行合理修改。卖方和买方在某种程度上属权限受限用户。在经过前一阶段的角色分化之后,本课题主要研究校园旧货交易系统中“卖方角色”模块的
34、设计与开发。现在所要做的是要准确定义卖方角色在系统中的工作以及系统必须具备的功能。使用用例图分析校园旧货交易系统中卖方角色要实现的功能。用例代表的是一个完整的功能。UML 中的用例是动作步骤的集合。动作是系统的一次执行。用例所代表的功能必须由角色激活,而后才能执行。用例必须为角色提供实在的值,虽然这个值并不总是重要的,但是能被角色识别。UML 中的用例用椭圆表示,用例的名字写在椭圆的内部或下方。用例位于系统边界的内部。角色与用例之间的关联关系用一条直线表示。如图 3.1,可知卖方角色在系统中的功能主要包括四个校 园 旧 货 交 易 系 统 ( 卖 方 ) 系 统卖方商品信息浏览商品信息发布注册
35、用户信息回复买方留言图 3.1 校园旧货交易系统(卖方)用例图校园旧货交易系统中卖方角色的设计与开发12方面:浏览商品信息、注册用户、发布商品信息以及回复买方关于商品信息咨询的留言。 12为了使系统运行时更符合实际情况,我们还必须考虑卖方角色在交易系统中的行为变化。我们使用状态图来描述这一过程。状态图主要用来描述对象、系统、子系统的生命周期。通过状态图可以了解到一个对象所能到达的所有状态以及对象收到的事件对对象状态的影响,而改变对象状态的事情称为事件。一个状态图可以有一个起点和多个终点。起点用一个黑圆点表示,终点用一个黑圆点外加一个圆表示。状态图中的状态用一个圆角四边形表示。状态之间的状态转移
36、,用一条带箭头的线表示。如图 3.2。发布商品信息 合法身份商品信息发布商品信息发布商品信息发布不合法身份注册用户注册用户注册用户发布商品信息留言留言留言留言离开系统离开系统联系管理员联系管理员联系管理员联系管理员离开系统商品信息浏览商品信息浏览商品信息浏览图 3.2 校园旧货交易系统(卖方)状态图卖方用户进入交易系统后,首先是进入商品信息浏览页面。这将碰到多种情况:一是用户没有新的商品信息要发布(这种情况下,用户被默认为合法的卖方用户) ,只是查看买方对以前商品的评论并回复留言,然后退出系统;二是仅仅需要联系管理员,咨询相关问题或发出请求,然后退出系统;最典型的一种情况是,卖方用户有新的商品
37、需要销售,准备发布新的商品销售信息。当用户具有合法身份时,可以进入商品信息发布区直接发布商品信息。若为非合法用户,需先注册用户信息获得一个合法的身份 ID 号,然后再进入商品信息发布区发布商品信息。完成后退出系统。 13图 3.2 只是简要描述一下卖方角色在系统中的行为流程,而没有考虑用户可能因为某种原因而在两个状态间往复的情况。例如用户在注册身份信息时,可能第一次注册失败,需要重新注册的情况;或是在成功发布商品信息后,并不愿退出系统,而是希望继续查看商品信息的情况。简洁化状态图,可以使卖方在系统中所要完成的功能更加明晰,更利于划分系统的功能模块。第三章 系统总体设计 133.2 系统功能模块
38、分析根据前面的设计思想进行分析,按照系统开发的基本观点对网站进行分解,从内容上可对网站作如下划分:1. 商品信息浏览 按照商品的类别实现对商品信息的查询,同时可以查阅特定商品的细节信息。2. 商品信息发布 合法卖方可发布所售商品的信息,包括商品的类别、名称、价钱以及其它一些相关信息。3. 商品信息讨论 卖方、买方对商品交易进行讨论,包括是否满意价格、商品信息咨询与回答以及买卖双方具体的联系方式。4. 用户信息填写 主要针对于卖方用户。要求卖方用户填写具体的身份信息,包括姓名、住址、电话等。注册成功后,系统分配卖方用户一个合法的用户 ID,用户可通过此 ID 进行商品信息的发布。这一模块主要防止
39、非法用户发放虚假的、带有欺骗性的信息。3.3 系统数据库设计在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进入数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。3.3.1 ER 图设计在系统设计的开始,首先考虑的是如何用数
40、据模型来定义数据库的结构与语义,以对现实世界进行抽象。目前广泛使用的数据模型可分为两种类型,一种是独立于计算机系统的“ 概念数据模型 ”,如“实体联系模型”;另一种是直接面向数据库逻辑结构的“ 结构数据模型 ”。在本系统中我采用 “实体联系模型”(ER 模型)来描述数据库的结构与语义,以对现实世界进行第一次抽象。ER 模型直接从现实世界抽象出实体类型及实体间联系,然后用 ER 图来表示数据模型。它有两个明显的优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。但校园旧货交易系统中卖方角色的设计与开发14ER 模型只能说明实体间语义的联系,不能进一步说明详细的数据结构,它只是数据库设计的
41、第一步。ER 图是直观表示概念模型的工具,它有四个基本成分: 矩形框,表示实体类型(考虑问题的对象)。 菱形框,表示联系类型(实体间的联系)。 椭圆形框,表示实体类型和联系类型的属性。对于关键码的属性,在属性名下划一横线。直线,联系类型与其涉及的实体类型之间以直线连接。图 3.3 即为系统中卖方角色的 ER 图。i n c l u d eh a v e s e l li n c l u d ew r i t eP r o d u c tp r o d u c t N a m e p r o d u c t S t a t eU s e rF o r u m C a t a l o gg u e
42、 s t M s g G u e s tp r o d u c t I Dp r o d u c t N o t ep r o d u c t D a t ep r o d u c t P r i c e 1 : 1 1 : 1 1 : 1 1 : 1 1 : 1 1 : 1 n1n11 1 1 : 1 1n 1 : 1 1 : 1 f o r u m D a t en 1 1 : 1 1 : 1 g u e s t N a m eu s e r I Du s e r N a m eu s e r T e l 1 : 1 1 : 1 1 : n 1 : 1 1 : n c a t a l o
43、g I Dc a t a l o g N a m eg u e s t I Df o r u m I Dm s g I D图 3.3 校园旧货交易系统中卖方角色 ER 图3.3.2 系统数据库设计第三章 系统总体设计 15采用的数据库是 Microsoft SQL Server 2005,拟建立 SchoolTrade.mdf 库文件,包含以下几个表文件:Forum 留言信息表。Forum 表用来存储卖方和买方的交流信息。其中的forumID 字段,设为主键,对应一个讨论的板块。在本系统中,将 forumID 在数值上设为与一个特定商品的商品 ID 号,即 productID 号相等,即一个商
44、品对应一个讨论区。在 Forum 中,需要记录访客的相关信息。guestName、 guestTel、guestMsg 分别存储访客的名称、电话号码和留言内容。表 3.1 Forum 表列名 数据类型 允许空 备注forumID int 论坛区 ID(主键)productID int 商品 IDforumDate datetime 留言日期guestName varchar(20) 访客姓名guestTel varchar(20) 访客电话号码guestMsg varchar(MAX) 访客留言内容msgID int 留言 IDProduct 商品信息表。在商品信息表中,商品的 ID 号设为主
45、键。productName、catalogID、productState、productNote、productData、productPrice分别代表商品的名称、所属类别、卖方的 ID 号、商品待售状态(是否已被销售) 、关于商品的详细描述、商品信息发布日期以及商品的价格。表 3.2 Product 表列名 数据类型 允许空 备注productID int 商品 ID(主键)productName varchar(20) 商品名称catalogID int 商品分类 IDuserID int 用户 IDproductState bit 商品状态productNote varchar(20)
46、 商品信息备注productDate datetime 信息发布日期productPrice money 商品价格ProductCatalog 商品分类信息表。仅仅包括 catalogID 和 catalogName 两个字段,分别表示商品类的 ID 号和商品类的名称。表 3.3 ProductCatalog 表列名 数据类型 允许空 备注catalogID int 商品分类 IDcatalogName Varchar(20) 商品分类名称校园旧货交易系统中卖方角色的设计与开发16UserInfo 用户信息表。用户信息存储卖方的相关信息。UserID 表示用户的ID 号,作为主键。userNa
47、me、userTel 分别表示用户的名称和电话号码。外键为商品的 ID 号。表 3.4 UserInfo 表列名 数据类型 允许空 备注userID int 用户 ID(主键)userName varchar(20) 用户名字productID int 商品 IDuserTel varchar(20) 用户电话号码第四章 应用程序设计4.1 网页页面设计4.1.1 网页页面设计网站主页采用静、动相结合的方式,即静态的主页面和动态的交互模块相结合。静态主页主要包含系统的名称,即网站的名称:“西电 JOY”;网站的口号:“有交易,就有 JOY”;还包括一些链接条,具体包括:“首页” ,链接到管理员
48、所实现的校园旧货交易系统的最终首页上。“系统简介” ,介绍系统总体架构、布局以及模块分化和角色承担。“团队介绍” ,主要介绍系统开发和维护者的详细信息,分管理员角色、卖方角色和买方角色三个部分。“技术支持” ,介绍系统构建所使用到的技术知识,包括.NET 环境,以及.NET 环境下 C#、ASP.NET 2.0、ADO.NET 的相关应用。“站点新闻” ,通知用户系统近期发生的更改和变化,或是发布关于系统团队成员信息的更新情况。“常见问题” ,提示系统使用者在使用系统的过程中可能遇到的困难或出现的错误,以及相应的解决方案。“联系我们” ,用户向系统团队成员提出建议和意见,或是咨询其它信息。在创
49、建 HTML 页面时,使用到 CSS(cascading stylesheet,级联样式表)技术。CSS 如同 HTML 的和 标记一样,也是 HTML 的一部分。在页面中加入样式表的一些信息,只是加入一些特殊的代码,并不需要做其它的事情。通过将样式表信息插入到页面中,就可以设置 HTML 页面的外观。例如,用样式表可以说明“在文本中所有文本字体为 16 点粗体 Arial”或者“有一文字为banner的层,它被设置距浏览器边界 60 个像素,距浏览器窗口顶端 90 个像素处” 。甚至可说明为“当文中用到标记时,就使文本以粗体和斜体显示” 。例如在下面的一段代码中:TDFONT-SIZE: 11px;Color: #000000;校园旧货交易系统中卖方角色的设计与开发18font-family: “Arial”, Helvetica, sans-serif这段代码指定了在 TD 中字体大小为 11px,颜色为#000000(黑色) ,使用的字体:Arial。Arial 上加了引号,但这并不是必须的,这样做只是