校园二手交易网站毕业设计论文.docx
《校园二手交易网站毕业设计论文.docx》由会员分享,可在线阅读,更多相关《校园二手交易网站毕业设计论文.docx(30页珍藏版)》请在冰豆网上搜索。
校园二手交易网站毕业设计论文
校园二手交易网站毕业设计论文
基于web赶集网的设计与实现
计算机科学与技术专业指导老师
[摘要]随着科技的不断进步,计算机技术已应用到社会的各个领域。
随着计算机技术和通信技术的不断发展,网络的规模也逐渐增大,网络的元素也随之不断增加,有的利用其通信,有的利用其商业用途,在网络上进行出售、收购、宣传等操作,从而使得网络越来越成为现今社会上必不可少的元素,而网站就是这个网络里的重要元素之一。
通过校园二手物品交易网这个平台,可以使用户足不出户就可以了解丰富的商品信息,极大的方便了用户,系统的主要功能包括:
商品类别管理、商品信息管理、订单管理、会员管理、系统公告管理等。
分为管理员用户、卖家用户、买家用户这三种用户平台。
本系统前台主要使用JSP作为开发语言,后台使用MySql作为数据库管理系统,开发环境是MyEclipse,服务器采用tomcat,开发出的一个基于Web技术的B/S结构的校园二手物品交易网。
[关键词]交易网;JSP;B/S结构
1.绪论
1.1课题背景
互联网的兴起从本质上改变了整个社会的商品交易方式,国内各大企业从上个世纪90年代互联网兴起之时,就产生了通过网络进行销售经营商品的想法。
但是由于在互联网上企业的信誉难以认证、网络的法规政策不健全、物流不发达等一系列的原因,限制了网上交易发展的步伐。
进入21世纪以后,随着整个社会的发展、进步,制约网上交易的各个瓶颈问题逐一被击破,各企业也纷纷的加入到电子商务的洪潮之中。
根据会员企业艾瑞咨询集团的预测,2008年我国网络购物交易将同比增长125.1%,交易总量将达1263亿,形成了中国网络购物的快速增长浪潮
据CNNIC,2012年中国网络购物市场研究发现,近50%的中国网购用户每周至少网购一次,网购频率领先于全球平均水平。
业界领先的网络效果营销公司爱点击iClick今年8月重磅发布了《2013中国网络购物市场分析报告》,该报告指出2012年中国网购用户人均年消费金额达人民币5,203元,同比增长25%,不仅与美国的差距正逐年缩小,并预计于2015年超过美国成为全球第一。
对任何品牌商和零售商而言,谁先了解中国网购用户需求,率先在中国网购市场下手,谁就拥有了胜算。
中国互联网协会网络营销工作委员会调查显示,随着国内产业环境和消费市场的成熟,网络购物将在今年实现更大发展。
根据以上的各种数据可以看出,网购已经渐渐成为人们的一种生活习惯,甚至已经发展成人们生活中不可或缺的一部分。
网络购物这一消费方式给人们生活带来的变化,除了购物场所的改变以外,更重要的是大大改变了传统的消费行为习惯,无论是否在网上购物,上网查看产品的相关信息,已经成为购物决策环节的重要组成部分,这一环节对购物行为的实际发生起到了至关重要的指导作用。
1.2目的和意义
随着经济的不断发展,随着人们生活水平的不断提高,每天都产生大量的旧的、闲置的生活用品、学习用品、数码产品以及各种户外用品等。
此校园二手交易网站,就是为了让这些闲置物品得到更有效的利用,为欲售商品者节省了摆摊所需要的时间,为欲售商品而填小广告者扩展了信息量,为拥有小量商品用户提供了平台。
同时,也响应了党的十八大提出的“低碳节能”生活。
与传统方式销售相比在线销售有很多的优点如:
(1).检索便捷
在线销售提供了便捷的检索途径,只要输入相关的信息进行检索,便可查询出与之相关的所以物品,快捷准确。
(2).信息量大
与传统销售方式相比,在线销售能够提供海量产品信息。
(3).成本低,风险小,无时间、地域限制
网络销售最突出的优点是:
不再限制消费者的购买时段,扩大和巩固了客户群,节省实际开店时需要投入的时间和费用。
1.3开发工具及技术
1.3.1开发工具
此次设计主要采用MyEclipse、mysql数据库以及Tomcat后台服务器进行,设计过程中页面主要使用JSP技术完成,下面对MyEclipse、Tomcat和MySql数据库进行简要介绍。
1.3.1.1MyEclipse
MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。
1.3.1.2Tomcat
Tomcat是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
可以这样认为,当在一台机器上配置好Apahce服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
1.3.1.3MySql
MySql是一个关系型数据库管理系统,使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性;支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统;为多种编程语言提供了API;支持多线程,充分利用CPU资源;提供TCP/IP、ODBC和JDBC等多种数据库连接途径;可以处理拥有上千万条记录的大型数据库。
对于一般的个人使用者和中小型企业来说,MySql提供的功能已经绰绰有余,而且由于MySql是开放源码软件,因此可以大大降低总体拥有成本。
1.3.2JSP
JSP全名为JavaServerPages,其根本是一个简化的Servlet设计,他实现了Html语法中的java扩张(以<%,%>形式)。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Servlet一样,是在服务器端执行的,通常返回给客户端就是一个HTML文本,因此客户端只要有浏览器能浏览。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
JSP技术的优点:
(1)一次编写,到处运行。
除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/.net的局限性是显而易见的。
(3)强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。
Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下
(5)支持服务器端组件。
web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。
JSP可以使用成熟的JAVABEANS组件来实现复杂商务功能。
内部对象说明:
request客户端请求,此请求会包含来自GET/POST请求的参数;response 网页传回客户端的响应;pageContext网页的属性是在这里管理;session与请求有关的会话;applicationservlet正在执行的内容;out用来传送响应的输出流;config 代码片段配置对象;page JSP网页本身;exception 针对错误网页,未捕捉的例外。
1.3.3JavaScript
JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。
同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。
JavaScript的一个重要功能就是面向对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。
在HTML基础上,使用Javascript可以开发交互式Web网页。
Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。
在本系统中很多地方使用了javascript技术,比如说,检验用户输入数据的有效性,是否重复,是否为空等。
1.4软硬件需求
硬件需求:
CPU:
Pentium以上计算机
内存:
512M以上
软件需求:
操作系统版本:
WindowsXP/vista/Win7
开发工具:
MyEclipse8.5
后台服务器:
ApacheTomcat6.0
开发语言:
Java
浏览器:
IE6.0
2.需求分析
2.1可行性分析
开发任何一个系统,都会受到时间和资源上的限制。
因此,在每一个项目开发之前,都要进行可行性分析,可以减少项目的开发风险,避免人力、物力和财力的浪费。
下面就技术、经济、操作和法律四个方面来介绍。
2.1.1技术的可行性
本系统开发工具是MyEclipse和MySql数据库,开发语言是Java,主要使用了J2EE的技术,java是一种面向对象编程语言,简单易学而且灵活方便。
大二时就学习了java课程,大三期间也系统的了解了J2EE的知识,本系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心。
在大学期间学习过数据结构,数据库,软件工程,c、c++、php、java等语言课程,每个学期也会完成对应的课程设计,具备一定的系统分析、设计和测试能力。
因此,完成系统实现在技术上完全具有可行性。
2.1.2经济的可行性
本系统所用的软件都是开源的,为开发软件节省了大量的金钱和时间,达到降低成本,提高开发效率的目的,本系统对计算机配置的要求不高,甚至网吧更换下来的低配置电脑都可以完全满足需要,所以在经济上具有完全的可行性。
2.1.3操作可行性
本系统操作简单,输入信息页面大多数都是下拉框的选择形式,在某些页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操作简便,对操作人员的要求很低,只需对WINDOWS操作熟练,加之对本系统的操作稍加培训即可工作,而且本系统可视性非常好,所以在技术上不会有很大难度。
2.1.4法律的可行性
本校园二手物品交易网是自行开发的管理系统,是很有实际意义的系统,开发环境软件和使用的数据库都是开源代码,开发这个系统不同于开发普通的系统软件,不存在侵权等问题,即法律上是可行的。
2.2系统用户用例图
2.2.1买家用户用例图
买家用户是本网站的一个普通用户,出于安全性的考虑,普通用户只有浏览商品和商品查询、商品购买等功能,其他的删除修改功能都没有设计,因为普通用户最主要关心的就是商品信息的更新和查询等功能,普通用户用例图如图2.1所示:
图2-1普通用户用例图
2.2.2卖家用户用例图
卖家用户是交易网站的桥梁,是一切物品的来源,可是说是此网站中的一个特殊用户,其主要功能是:
商品管理和销售管理。
图2-2特殊用户用例图
2.2.3管理员用例图
管理员是系统的核心用户,涉及到七大功能模块,管理员对系统的所有信息有着操作的权限,能够及时动态的更新系统的各项信息。
图2-3管理员用例图
2.3功能模块需求分析
本系统最大的特点是使用操作简单、友好的提示信息。
本系统将实现以下基本功能:
(1)系统具有简洁大方的页面,使用简便,友好的错误操作提示
(2)管理员用户具有商品类别管理、商品信息管理、商品信息更新管理、订单管理、会员信息管理、店铺管理、系统管理功能
(3)普通用户用户具有浏览商品、商品查询、购买商品、修改个人信息等功能
(4)具有较强的安全性,避免用户的恶意操作
系统的功能结构图,分普通用户平台,特殊用户平台,管理员平台。
2-4普通用户用户功能模块图
2-5特殊用户用户功能模块图
图2-6管理员用户功能模块图
2.4设计的基本思想
设计思想遵循以下几点:
(1).采用B/S模式进行开发,其优点是后台与前台处理层次分明,而且符合众多已经习惯网页搜索方式的用户。
(2).采用面向对象的开发与设计理念。
运用面向对象技术的前提是对整体系统的高度和准确抽象,通过它可以保证系统良好的框架,进而带来产品较强的稳定性和运行效率。
(3).采用模块化设计。
模块化设计要求将整个系统划分成基于小的模块,有利于代码的重载,简化设计和实现过程。
(4).简单方便的系统界面。
设计简单友好的系统界面,方便用户较快的适应系统的操作。
(5).速度优先原则。
由于此工具最重要的评测标准就是速度,因此在设计过程中,具体过程尽量做到资源占用少,速度快。
(6).设计既要突出重点,又要细致周到。
要符合设计需求,在有可能改进的地方进行扩充,使系统更适应用户的需要。
2.5性能需求
2.5.1系统的安全性
本校园二手物品交易网在管理权限上要严格进行控制,具体要求如下:
(1).要想管理本系统的商品信息,必须先要凭用户名和密码登陆到系统中,没有权限的用户不能通过任何方式登录系统查看系统的任何信息和数据,以确保系统的严密性和安全性。
(2).在具体实现中设定不同权限,不同权限用户登录到系统后,不能越级操作,管理员可以使使用所有模块;普通用户用户只能在线浏览信息,比如,查询商品信息、在线购买、下订单等功能。
2.5.2数据的完整性
(1).各种记录信息的完整性,信息记录内容不能为空
(2).各种数据间相互联系的正确性
(3).相同数据在不同记录中的一致性
2.6界面需求
界面设计目前已经成为评价软件质量的一条重要指标,一个好的用户界面可以增加用户使用系统的信心和兴趣,提高工作效率,JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。
创建动态页面非常方便。
用户界面是指软件系统与用户交互的接口,通常包括输出、输入、人-机对话的界面格式等。
(1).输出设计
输出是由计算机对输入的原始信息进行加工处理,形成高质量的有效信息,并使之具有一定的格式,提供管理者使用,这是输出设计的主要职责和目标。
系统设计的过程正好和实施过程相反,并不是从输入设计到输出设计,而是从输出设计到输入设计,这是因为输出表格直接与使用者相联系,设计的出发点应当是保证输出表格方便地为使用者服务,正确及时反映和组成用于各部门的有用信息。
输出设计的原则是考虑既要全面反映不同管理层的各项需要,又要言简意赅,不要将用户需要和不需要的都提供给用户。
(2).输入设计
输入数据的收集和录入是比较费事的,需要大量的人力和一定设备,并且容易出错。
如果输入系统的数据有错误,则处理后的输出将扩大这些错误,因此输入数据的正确性对于整个系统质量的好坏是具有决定性意义的。
输入设计的原则有如下几点:
1)输入量应保持在能满足处理要求的最低限度。
设计中可采用设置字段初值,下拉式数据窗口等方式尽量减少用户键盘输入量。
输入量越少,错误率就越少,数据准备时间也减少。
2)输入的准备及输入过程应尽量容易进行,从而减少错误的发生。
3)应尽量早对输入数据进行检查(尽量接近原数据发生点),以便使错误及时得到更正。
4)输入数据尽早地用其处理所需的形式被记录,以避免数据由一种介质转移到另一种介质时需要转录而可能发生的错误
3.系统分析与设计
3.1数据库的分析与设计
计算机信息系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。
数据库已经成为现在信息系统等计算机系统的基础与核心部分。
数据库设计的好坏直接影响到整个系统的质量和效率。
数据库的设计一般经过规划、需求分析、概念设计、逻辑设计、物理设计5个步骤。
3.1.1数据库的概念结构设计
概念设计是指在数据分析的基础上自底向上的建立整个系统的数据库概念结构,从用户的角度进行视图设计,然后将视图集成,最后对集成的结构分析优化得到最后结果。
数据库的概念结构设计采用实体—联系(E-R)模型设计方法。
E-R模型法的组成元素有:
实体、属性、联系,E-R模型用E-R图表示,是提示用户工作环境中所涉及的事物,属性则是对实体特性的描述。
概念设计的目标是产生反映企业组织信息要求的数据库概念结构,即概念模式。
概念模式是独立于数据库逻辑结构,独立于支持数据库的DBMS,不依赖于计算机系统的,
根据以上对数据库的需求分析,并结合系统概念模型的特点及建立方法,建立E-R模型图。
(1)普通用户实体E-R图如图3-1所示:
图3-1普通用户E-R图
(2)商品类别实体E-R图:
图3-2商品类别信息实体E-R图
(3)商品信息E-R图:
图3-3商品信息实体E-R图
(4)管理员信息E-R图
图3-4管理员信息实体E-R图
(5)订单信息E-R图:
图3-5订单信息实体E-R图
3.1.2数据库的逻辑结构设计
我们知道,数据库概念模型独立于任何特定的数据库管理系统,因此,需要根据具体使用的数据库管理系统的特点进行转换。
即转化为按计算机观点处理的逻辑关系模型,E-R模型向关系数据库模型转换应遵循下列原则:
*每一个实体要转换成一个关系
*所有的主键必须定义非空(NOTNULL)
*对于二元联系应按照一对多、弱对实、一对一、多对多等联系来定义外键。
根据E-R模型,普通用户公寓管理系统建立了以下逻辑数据结构,下面是各数据表的详细说明。
(1)普通用户表主要是记录了普通用户基本信息。
表结构如表3.1所示。
表3-1普通用户表(t_user)
列名
数据类型
长度
允许空
是否主键
说明
user_id
int
4
否
是
用户ID
user_name
varchar
50
否
否
用户名
user_pw
varchar
50
否
否
用户密码
user_realname
varchar
50
否
否
姓名
user_sex
varchar
50
否
否
性别
user_tel
varchar
20
否
否
联系方式
user_address
varchar
20
否
否
住址
(2)商品类别信息表主要是记录了商品类别的基本信息,表结构如表3.2所示。
表3-2商品类别信息表(t_catelog)
列名
数据类型
长度
允许空
是否主键
说明
catelog_id
int
4
否
是
类别ID
catelog_name
varchar
50
否
否
类别名称
catelog_miaoshu
varchar
50
否
否
类别介绍
(3)商品信息表主要是商品的相关信息,其中ID是主键,表结构如图3.3所示。
表3-3商品信息表(t_goods)
列名
数据类型
长度
允许空
是否主键
说明
goods_id
Int
4
否
是
商品ID
catelog_id
Int
4
否
否
类别ID
goods_name
varchar
50
否
否
名称
goods_miaoshu
varchar
50
否
否
介绍
goods_pic
varchar
50
否
否
商品封皮
shichangjia
Date
50
否
否
商品价格
goods_tejia
varchar
50
否
否
商品特价
(5)管理员信息表主要记录了管理员的账号信息,包括用户名和密码,表结构如表3.7所示。
表3-4管理员信息表(t_admin)
列名
数据类型
长度
允许空
是否主键
说明
userId
int
4
否
是
编号
userName
varchar
50
否
否
用户名
userPw
varchar
50
否
否
密码
(6)订单信息表主要记录的会员的订单的信息,包括订单编号、下单时间等,表结构如表3.7所示。
表3-5订单信息表(t_order)
列名
数据类型
长度
允许空
是否主键
说明
order_id
int
4
否
是
编号
order_date
varchar
50
否
否
下单时间
order_zhuangtai
varchar
50
否
否
订单状态
songhuodizhi
varchar
50
否
否
送货地址
fukuanfangshi
varchar
50
否
否
付款方式
jine
varchar
50
否
否
总金额
user_id
int
4
否
否
会员ID
3.1.3数据库的连接原理
采用JDBC连接数据库的方式,只需在工程中导入对应数据库的jar包,就可以方便的对数据库进行连接,在程序中,用Class.forName()方法来加载驱动程序,在用DriverManager的getConnection()方法就可以创建一个数据库连接。
程序采用的是DAO模式来操作数据库,DAO(DataAccessObject,数据访问对象),是Java编程中的一种经典模式,已被广泛应用,也是J2EE架构中持久层框架的基础知识,基于分层次式的软件架构来实现对数据库的访问操作。
DAO模式的主要思想就是从抽象数据源获取与操纵数据的方法。
抽象数据的含义就是编写应用程序的程序员不必关心数据库的物理位置,已经是何种数据库,只需使用封装数据库中表示记录的数据对象即可。
其思想如图3.10所示:
图3-6DAO模式类图
图中BussinessObject是业务对象,是使用DAO模式的客户端;DataTransferObject数据传输对象,在应用程序不同层次之间传输对象,在一个分布式应用程序中,通常可以提高整理的性能;DataObjectAcces数据输入/输出对象封装了对数据源的一些基本操作;DataSource指的是数据源。
可以从图中看出,DAO模式分离了业务逻辑和数据罗即将,是的编写的软件具有良好的层次式体系结构。
本系统为