1、V校园二手交易平台的设计与实现摘 要本系统采用JSP/J2EE技术,使用Java编程语言编写的一套校园网二手交易平台软件。本系统采用的是最近几年流行的B/S开发模式,是以互联网方式运行的。服务器端只需要安装本系统,而客户端用户只要可以上网,就可以非常方便快捷的通过浏览器访问系统,浏览和发布二手交易信息,免去了传统的C/S模式下复杂的安装、配置、维护等操作。同时由于使用面向对象的Java语言,所以本系统也具有Java语言的面向对象、与平台无关、安全性高、稳定性高、多线程等特性,以及Java语言对网络编程技术的支持。使得本系统具有很高的使用价值。本系统主要功能有用户管理,商品信息查询及管理,留言信
2、息的查询及管理,还有后台管理员相应的管理功能等。系统的主要设计思路是先确定好系统所需要的数据字典并在数据库中设计好相应的数据库,然后根据MVC的思想,依次设计好基础类,业务类,实现控制的servlet和实现显示的jsp。系统开发主要分为三个部分,使用JavaBeans处理业务逻辑,JSP+HTML+JavaScript进行界面处理,并且配置了Servlet,以及通过JDBC处理对SQL Server 2008数据库的访问。关键词: 校园,二手,交易平台,JSP, SQL SERVER 2008数据库The Design and Realization of Campus Network Sec
3、ondhand Merchandise SystemABSTRACTThis system is a set of platform software of the campus-wide system secondhand transaction. It adopts the JSP/J2EE technique, and programmed with Java programming language. It also adopts the B/S development mode, which is based on Web and popularize in recent years
4、. It runs in internet ways. Only when the server install this system and the client can visit it, browse and release some secondhand conveniently and speedily when they go on-line. And so it dispenses with such operation as the complicated installing, installment and support in traditional C/S mode.
5、 At the same time the use of object-oriented Java language, so the system also has a Java object-oriented language, and platform-independent, high security, high stability, multi-threading features,the Java languages support to the network programming technique makes the system have high practical v
6、alue.The main functions of the system user management, product information inquiry and management, query and manage voice messages, as well as the background corresponding management functions administrators. Systems main design idea is to determine a good system needs data dictionary and database d
7、esign is the appropriate database, and then the idea MVC, followed by a good basis for the design class, business class, to achieve control of the servlet and implementation of display jsp.The system development is divided into three parts. That is using JavaBeans to process business logic; using JS
8、P+HTML+JavaScript and Servlet to process interface; and visiting the SQL Server 2008 database through JDBC.Key words : campus, secondhand ,merchandise system, JSP, SQL SERVER 2008 DataBase目 录摘 要IABSTRACTII1 绪论11.1 课题背景11.2 目的意义11.3 研究内容12 系统主要技术及简介32.1 服务器tomcat介绍32.2 Servlet/JSP简介32.3 数据库SQL Server
9、 2008 简介53 软件需求分析73.1 软件的设计目标73.1.1 设计目标73.1.2 基本要求73.1.3 预期结果84 系统设计94.1 开发工具和运行环境选择94.2 系统功能分析94.2.1 会员注册功能94.2.2 会员登录功能94.2.3 会员个人资料管理94.2.4 发布商品出售信息104.2.5 发布出售商品信息104.2.6 对个人发布的商品信息进行管理104.2.7 对所有出售商品信息进行浏览104.2.8 对所有求购商品信息进行浏览104.2.9 商品留言功114.2.10 网站留言功能114.2.11 管理员登录功能114.2.12 管理员信息管理功能114.2.
10、13 管理员添加功能114.2.14 管理出售商品信息功能124.2.15 管理求购商品信息功能124.2.16 管理网站留言功能124.2.17 注销功能124.3 系统功能模块设计125 数据库设计135.1 数据库需求分析135.2 数据库概念结构设计145.3 数据库逻辑结构设计175.4 数据库的实现205.5 建立数据库205.6 创建数据表235.6.1 创建系统会员表235.6.2 创建管理员基本信息表245.6.3 创建商品类别信息表245.6.4 创建商品信息表255.6.5 创建网站留言信息表265.6.6 创建网站留言信息表266 系统详细设计276.1 会员注册功能的
11、实现276.2 会员登录功能的实现276.3 会员个人资料管理的实现296.4 发布商品出售信息296.5 发布商品求购信息306.6 对个人发布的商品信息进行管理306.7 对所有出售商品信息进行浏览326.8 对所有求购商品信息进行浏览336.9 商品留言功能336.10 网站留言功能346.11 管理员登录功能356.12 管理员信息管理功能356.13 管理员添加功能366.14 管理出售商品信息功能376.15 管理求购商品信息功能386.16 管理网站留言功能386.17 注销功能397 总结40致 谢41参 考 文 献42附 录4355校园二手交易平台的设计与实现1 绪论1.1
12、课题背景随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。随着电子计算机和通信技术的发展,人类已经逐渐地进入信息化社会。信息已经成为一种社会的基本生产资料,在人类的社会生产活动中发挥着重要的作用。因此,开发相关的二手交易网站已经成为各行各业的必要和必需了,电子商务作为一门边缘学科,集管理科学、信息科学、系统科学、现代通信技术于一体,可以解决校园二手交易中所遇到的各种问题,对内来看,可以提高工作效率;对外来看,获得竞争优势。设计本系统的目的在于结合对二手交易市场的需求分析,利用校园网搭建一个诚信、自由和优质服务的网络交易
13、平台。首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。因此,开发这样一套管理软件成为很有必要的事情。1.2 目的意义目的:设计一套同学们能自由发布和浏览求购或卖出商品信息的校园二手交易平台系统,解决信息的不流通以及传统二手商品信息交流方式的笨拙等问题。意义:第一:在大学校园里,存在着很多的二手商品,但是由于信息资源的不流通以及传统二手商品信息交流方式的笨拙,导致了很多仍然具有一定价值或者具有非常价值的二手商品的囤积,乃至被当作废弃物处理。现在通过校园网进入到本系统,可以方便快捷的发布和交流任何二手商品的信息,并且可以通过留言方式进行
14、深一步的交流。由于每个大学的校园网都基本遍布校园的每一个地方,因此,只要宣传得当,理论上来说,每一个人都可以让他所发布的信息让全校所了解,争取到了信息资源的最大化利用。不仅可以将一些同学们平时不用的东西变废为宝,而且在整个交易的过程中对同学们交流沟通能力也会有一定的提高,同时买东西的同学也得到了一定的经济收入,买东西的同学也可以买到物美价廉的东西。第二:通过对本系统的开发,学习到了软件的流程,了解到了文档在开发中的重要性以及怎样更好的做好需求分析。1.3 研究内容本设计的核心模块或算法的研究:一用户信息管理,其中用户基本信息是对用户的资料进行填写。二商品信息管理,包括商品信息发布、信息查看和信
15、息留言等。商品信息按类别分类。发布人可以管理自己发布的信息,发布人有权对自己已发布信息进行修改、删除等操作。三系统管理模块,提供多级权限管理。如游客只能进行商品信息的浏览,而发表评论必须是注册用户。主要的算法是分页的实现以及级联操作的实现。主要研究的是Java1在JSP2方面的应用,包扩JAVABEAN3,JDBC4等,以及对现在流行框架的学习。2 系统主要技术及简介2.1 服务器tomcat介绍Tomcat5是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有
16、了Sun的参与和支持,最新的Servlet6和JSP规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet2.4和JSP2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普
17、遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的
18、默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为7.0.12 Released 。Apache Tomcat 7.x 是目前的开发焦点。它在汲取了Tomcat 6.0.x优点的基础上,实现了对于Servlet 3.0、JSP 2.2和EL 2.2等特性的支持。除此以外的改进列表如下:1, Web应用内存溢出侦测和预防 2, 增强了管理程序和服务器管理程序的安全性3,一般 CSRF保护4.支持web应用中的外部内容的直接引用5,重构 (connectors, lifecycle)及很多核心代码的全面梳理2.2 Servlet/JSP简介Serv
19、let是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。Servlet是在服务器上运行的小程序。这个词是在Java applet的环境中创造的,Java applet是一种当作单独文件跟网页一起发送的小程序,它通常用于在客户端运行,结果得
20、到为用户进行运算或者根据用户互作用定位图形等服务。在通信量大的服务器上,Java servlet的优点在于它们的执行速度更快于CGI程序。各个用户请求被激活成单个程序中的一个线程,而无需创建单独的进程,这意味着服务器端处理请求的系统开销将明显降低。最早支持Servlet技术的是JavaSoft的Java Web Server。此后,一些其它的基于Java的WebServer开始支持标准的ServletAPI。Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。这个过程为:客户端发送请求至服务器端;服务器将请求信息发送至Servlet,Servlet生成响应内容并将其传给Se
21、rver。响应内容动态生成,通常取决于客户端的请求,服务器将响应返回给客户端。Servlet看起来像是通常的Java程序。Servlet导入特定的属于Java ServletAPI的包。因为是对象字节码,可动态地从网络加载,可以说Servlet对Server就如同Applet对Client一样,但是,由于Servlet运行于Server中,它们并不需要一个图形用户界面。从这个角度讲,Servlet也被称为FacelessObject。一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然servlet可以对
22、任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags7和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML8代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与Java Servlet
23、一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业
24、应用的服务器端语言。JSP技术的强势(1)一次编写,到处运行。除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/.net的局限性是显而易见的。(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许
25、多已经可以顺利的运行于多种平台之下。(5)支持服务器端组件。web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。JSP可以使用成熟的JAVA BEANS 组件来实现复杂商务功能。2.3 数据库SQL Server 2008 简介SQL Server 20089提供了公司可依靠的技术和能力来接受不断发展的对于管理数据和给用户发送全面的洞察的挑战。具有在关键领域方面的显著的优势,SQL Server 2008是一个可信任的、高效的、智能的数据平台。SQL Server 2008是微软数据平台愿景中的一个主要部分,旨在满足目前和将来
26、管理和使用数据的需求。SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。这个平台有以下特点:可信任的使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。高效的使得公司可以降低开发和管理他们的数据基础设施的时间和成本。智能的提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。SQL Server 2008可以对整个数据库、数据文件和日志文件进行加密,而不需要改动应用程序。进行加密使公司可以满足遵守规范和及其关注数据隐私的要求。简单的数据加密的好处包括使用任何范围
27、或模糊查询搜索加密的数据、加强数据安全性以防止未授权的用户访问、还有数据加密。这些可以在不改变已有的应用程序的情况下进行。SQL Server 2008为加密和密钥管理提供了一个全面的解决方案。为了满足不断发展的对数据中心的信息的更强安全性的需求,公司投资给供应商来管理公司内的安全密钥。SQL Server 2008通过支持第三方密钥管理和硬件安全模块(HSM)产品为这个需求提供了很好的支持。SQL Server 2008使你可以审查你的数据的操作,从而提高了遵从性和安全性。审查不只包括对数据修改的所有信息,还包括关于什么时候对数据进行读取的信息。SQL Server 2008具有像服务器中加
28、强的审查的配置和管理这样的功能,这使得公司可以满足各种规范需求。SQL Server 2008还可以定义每一个数据库的审查规范,所以审查配置可以为每一个数据库作单独的制定。为指定对象作审查配置使审查的执行性能更好,配置的灵活性也更高。SQL Server 2008通过提供了一个新的制定查询计划的功能,从而提供了更好的查询执行稳定性和可预测性,使公司可以在硬件服务器更换、服务器升级和产品部署中提供稳定的查询计划。3 软件需求分析需求是用户对系统提出的要求,这组要求可能是原始的、笼统的,也可能是抽象的、细节化的。但一个软件系统的开发必须以一组需求化为出发点。软件需求分析10工作是在软件计划阶段完成
29、之后开始的,其主要目的是:在综合分析用户对系统提出的一组需求(功能、性能、数据等方面)的基础上,构造一个从抽象到具体的逻辑模型表达软件将要实现的需求,并以“软件需求规格说明书”的形式作为本阶段工作的结果,为下一阶段的软件设计提供设计基础。软件需求分析阶段,结合着我所用的开发工具:Myeclipse9.0,SQL Server 2008对问题的识别和理解和对需求信息的分析与综合等进行了深入的了解,建立了实现目标软件的物理模型11,也就是确定了构成软件系统的系统元素,并将功能和信息结构分配到这些系统元素中。3.1 软件的设计目标3.1.1 设计目标(a)系统应建立友好的界面,即要操作简单、直观、灵
30、活,又要易于学习掌握。(b)系统在用户输入用户名,密码时,就具有自动识别的功能,以帮助用户更正错误。(c)系统在确定用户名和密码后,应具有自动连接数据库的功能。(d)在正确连接数据库,查询到用户相应的信息后,应在界面显示相关的信息。(e)系统具有良好的安全性。系统应遵循有关信息安全标准,具有切实可行的安全保护和保密措施。3.1.2 基本要求(a)用户信息:用户分为网站用户、管理员两类。用户信息包括会员账号、密码、联系方式、会员注册邮箱、会员姓名、密码提示问题、密码提示答案、注册时间、上一次登录时间等;管理员信息包括管理员号、密码、登录次数、上一次登录时间、生效时间等。(b)商品信息:包括商品信
31、息发布、信息查看和信息留言等。商品信息按类别分类。发布人可以管理自己发布的信息,发布人有权对自己已发布信息进行修改、删除等操作。(c)系统管理模块:提供多级权限管理,如为登录的用户只能进行信息的浏览,其他功能的实现则只有登录用户才能实现。用户可以对自己的个人信息,个人发布信息等进行管理。管理员可以添加管理员,管理用户发布的商品信息,留言等信息。(d)技术性:系统开发采用了实现MVC13模式的思想和设计放式,用JSP+HTML+JavaScript12进行界面处理,并用JDBC进行数据库访问:1、软件开发工具MyEclipse;2、使用SQL Server 2008作为后台数据库;3、在Wind
32、ows xp操作系统平台上使用3.1.3 预期结果设计一套同学们能自由发布和浏览求购或卖出商品信息的校园二手交易平台系统,解决资源的不流通以及传统二手商品信息交流方式的笨拙等问题。实现的主要功能是:用户登录,商品信息的浏览,查询,发布,还有管理员的管理等。4 系统设计4.1 开发工具和运行环境选择在操作系统方面,虽然现在Linux的发展速度非常的快,但是对于大多数的使用者来说,操作显然没有微软的WINDOWS那么的流行和傻瓜化。而且现在计算机的运算速度已经不能和以前相提并论了,而且硬件的价格也一天天的在下降了,所以也不用为了节省整体的造价而改用硬件要求很低的DOS系统了。所以我们决定该档案管理
33、系统将运行在WINDOWS XP系统下,利用SQL-server 2008的强大的工具来协助管理人员轻松地进行与数据库的连接和管理。作为JSP的容器,选择了目前非常流行的Tomcat 7.0。而IDE工具则选择了MyEclipse9.0,由于Myeclipse高度的集成性及配置的简单性大大降低了系统开发的额外工作量及开发时间。4.2 系统功能分析系统开发的总体任务是设计一套同学们能自由发布和浏览求购或卖出商品信息的校园二手交易平台系统。4.2.1 会员注册功能(a)会员信息: 会员账号、密码、联系方式、会员注册邮箱、会员姓名、密码提示问题、密码提示答案、注册时间、上一次登录时间等;(b)操作设
34、计:对会员信息的添加,向数据库中的会员表中插入一条信息,其中的注册时间和上一次登录时间默认为系统的当前时间。4.2.2 会员登录功能(a)需要填入信息: 会员账号、密码;(b)操作设计: 通过用户填入的会员账号和密码对数据库进行查询操作,若查询得到结果不为空,则判断用户登录成功,否则登录失败。4.2.3 会员个人资料管理(a)会员信息: 会员账号、密码、联系方式、会员注册邮箱、会员姓名、密码提示问题、密码提示答案、注册时间、上一次登录时间等;(b)操作设计:对会员信息的进行修改,可以对密码、联系方式、会员注册邮箱、会员姓名、密码提示问题、密码提示答案等信息进行修改,在数据库中对该会员的对应信息
35、进行更新操作。4.2.4 发布商品出售信息(a)商品信息:包括商品编号、商品名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布时间、出售或求购、是否已交易、是否屏蔽等。(b)操作设计:用户填入要添加的商品的信息(其中的商品编号在数据库中设置为自增长,不用填写),然后判断所填信息是否符合规范,若符合则向数据库中的商品表中添加一条商品信息,若不符合则要求用户重新填写相关信息。4.2.5 发布出售商品信息(a)商品信息:包括商品编号、商品名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布时间、出售或求购、是否已交易、是否屏蔽等。(b)操作设计:用户填入要添加的商品的信息(
36、其中的商品编号在数据库中设置为自增长,不用填写),然后判断所填信息是否符合规范,若符合则向数据库中的商品表中添加一条商品信息,若不符合则要求用户重新填写相关信息。4.2.6 对个人发布的商品信息进行管理(a)商品信息:包括商品编号、商品名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布时间、出售或求购、是否已交易、是否屏蔽等。(b)操作设计:用户首先查询出自己发布的商品信息,然后选中需要修改的某一条商品信息,然后对商品信息进行修改,若所填的信息都符合规范则在数据库的商品信息表的此商品信息进行修改,否则提醒用户重新填写修改信息。4.2.7 对所有出售商品信息进行浏览(a)商品信息:
37、包括商品编号、商品名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布时间、出售或求购、是否已交易、是否屏蔽等。(b)操作设计:对数据库中的商品信息表进行查询操作并将查询条件设为出售或求购为出售,若信息过多则进行分页显示。4.2.8 对所有求购商品信息进行浏览(a)商品信息:包括商品编号、商品名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布时间、出售或求购、是否已交易、是否屏蔽等。(b)操作设计:对数据库中的商品信息表进行查询操作并将查询条件设为出售或求购为求购,若信息过多则进行分页显示。4.2.9 商品留言功(a)商品留言信息:评价编号、会员账号、商品编号、评价内
38、容、发表时间(b)操作设计:对某商品进行详细信息查看后可以添加商品留言,若符合留言规范则在数据库中的商品留言信息表中插入一条商品留言信息4.2.10 网站留言功能(a)网站留言信息:评价编号、会员账号、评价内容、发表时间(b)操作设计:该留言可以不针对某条商品信息,主要是给网络管理员留言,进入网站留言界面进行留言操作,若符合留言规范则在数据库中的网站留言信息表中插入一条网站留言信息4.2.11 管理员登录功能(a)管理员信息:管理员账号、管理员密码、上一次登录时间、登录次数、注册时间等(b)操作设计:由于设置的管理员不能进行注册只能由现有的管理员进行添加,所以直接在数据库中初始插入一条管理员信
39、息。当管理员输入正确的初始管理员账号和密码后,在数据库中进行查找匹配,若正确则登录成功,进入管理员页面进行管理员的其他操作。4.2.12 管理员信息管理功能(a)管理员信息:管理员账号、管理员密码、上一次登录时间、登录次数、注册时间等(b)操作设计:当管理员登录成功后,进入管理员页面,进行管理员信息的修改操作,主要是对管理员的密码进行修改,若所填信息符合规范,则在数据库中的管理员信息表中进行管理员信息的更新操作。 4.2.13 管理员添加功能(a)管理员信息:管理员账号、管理员密码、上一次登录时间、登录次数、注册时间等(b)操作设计:当管理员登录成功后,进入管理员页面,进行管理员的添加操作,输
40、入正确的新管理员信息后进行提交,则在数据库中的管理员信息表中进行管理员信息的插入操作。4.2.14 管理出售商品信息功能(a)商品信息:包括商品编号、商品名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布时间、出售或求购、是否已交易、是否屏蔽等。(b)操作设计:对数据库中的商品信息表进行查询操作并将查询条件设为出售或求购为出售,若信息过多则进行分页显示,查看商品的详细信息时可以选择是否屏蔽该信息并提交,若操作成功则对数据库中的商品信息表进行更新操作。4.2.15 管理求购商品信息功能(a)商品信息:包括商品编号、商品名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布
41、时间、出售或求购、是否已交易、是否屏蔽等。(b)操作设计:对数据库中的商品信息表进行查询操作并将查询条件设为出售或求购为求购,若信息过多则进行分页显示,查看商品的详细信息时可以选择是否屏蔽该信息并提交,若操作成功则对数据库中的商品信息表进行更新操作。4.2.16 管理网站留言功能(a)网站留言信息:评价编号、会员账号、评价内容、发表时间(b)操作设计:主要是对网站的留言信息进行查看和删除操作,管理员进入网站留言管理页面查看所有网站留言,对看过的信息可以进行删除操作。4.2.17 注销功能(a)对登录成功的用户(包括管理员和网站会员)信息进行保存。(b)操作设计:当用户完成在本网站的操作后点击注
42、销,则将登录成功后保存的用户信息进行销毁。4.3 系统功能模块设计根据需求分析,系统功能模块可分为:1.会员管理模块2.商品信息管理模块3.商品留言管理模块4.网站留言管理模块5.管理员信息管理模块6.管理员管理商品信息模块7.网站留言信息管理模块 8.用户注销登录模块5 数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括如下几个步骤:(1)数据库需求分析
43、。(2)数据库概念结构设计。(3)数据库逻辑结构设计。(4)数据库逻辑结构实现。5.1 数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。针对一般校园二手交易平台的需求,通过对本平台工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:(1)会员基本信息:会员账号、密码、联系方式、会员注册邮箱、会员姓名、密码提示问题、密码提示答案、注册时间、上一次登录时间等,操作:输入、删除、查询、修改。(2)商品基本信息:包括商品编号、商品
44、名称、商品分类、会员账号、商品说明、商品价格、商品图片路径、发布时间、出售或求购、是否已交易、是否屏蔽等。操作:输入、删除、查询、修改。(3)商品留言信息:评价编号、会员账号、商品编号、评价内容、发表时间。操作:输入、删除、查询、修改。(4)网站留言信息:评价编号、会员账号、评价内容、发表时间。操作:输入、删除、查询、修改。(5)管理员基本信息:管理员账号、管理员密码、上一次登录时间、登录次数、注册时间等。操作:输入、删除、查询、修改。有了上面的数据结构、数据项我们就能进行下面的数据库设计。如图5-1所示。图5-1 校园二手交易平台系统 5.2 数据库概念结构设计有了上面的具体信息管理需求以后
45、,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的操作及其变化的流程。本实例根据上面的设计规划出的实体有:用户基本信息实体7、商品基本信息实体、商品类别实体、商品留言信息实体、网站留言信息实体、管理员基本信息实体。各个实体具体的描述E-R图如图5-2所示。图5-2 用户基本信息实体E-R图商品基本信息实体E-R图如图5-3所示。图5-3 商品基本信息实体E-R图商品类别实体E-R图如图5-4所示。图5-4 商品类别信息实体E-R图商品留言信息实体E-R图如图5-5所示。图5-5 商品留言信息实体E-
46、R图网站留言信息实体E-R图如图5-6所示。图5-6 网站留言信息实体E-R图管理员基本信息实体E-R图如图5-7所示。图5-7 管理员信息实体E-R图会员、商品、商品留言、网站留言、商品类别、管理员之间的关系得出实体之间关系的E-R图如图5-8所示。图5-8 实体之间关系的E-R图5.3 数据库逻辑结构设计经过上面的需求分析和概念设计,再根据关系数据库理论及其设计方法与技术,就可以将上面的数据库概念结构转化为SQL Server 2008数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。学生信息查询系统数据库中各个表格的设计结果如下面表格所示。每个表格表示在数据库中的一个表。(1)会员
47、信息表包括1.会员账号、会员密码、联系方式、会员注册邮箱、会员姓名、密码提示问题、密码提示答案类型设置为Nvarchar。2.注册时间、上一次登录时间类型设置为datetime。得出如下表5-1会员基本信息表。表5-1 memberInfo 会员基本信息表列 名数据类型可否为空说 明muidnvarcharnot null会员帐号mpwdnvarcharnot null会员密码mcontactnvarcharnot null联系方式memailnvarcharnull会员注册邮箱mnamenvarcharnull会员姓名mquestionnvarcharnull密码提示问题manswernvarcharnull密码提示答案mregisterdatetimenot null注册时间mlastLoginTimedatetimenull上次登录时间(2)管理员信息表包括1.管理员账号、管理员密码类型设置为nvarchar。2.注册时间、上一次登录时间类型设置为datetime。3.登录次数类型设置为int。得出如下表5-2管理员基本状况信息表格