基于Javaweb二手商品交易平台的设计与实现
更新时间:2024-05-24 23:09:01 阅读量: 综合文库 文档下载
安徽新华学院2015届本科毕业论文(设计)
本科毕业论文(设计)
题目:安徽新华学院二手商品交易平台的设计与实现
姓 名: 学 号:
专 业:计算机科学与技术 院 系:信息工程学院 指导老师:
职称学位:讲师/硕士 完成时间:2015年5月
教务处制
安徽新华学院本科毕业论文(设计)独创承诺书
本人按照毕业论文(设计)进度计划积极开展实验(调查)研究活动,实事求是地做好实验(调查)记录,所呈交的毕业论文(设计)是我个人在导师指导下进行的研究工作及取得的研究成果。据我所知,除文中特别加以标注引用参考文献资料外,论文(设计)中所有数据均为自己研究成果,不包含其他人已经发表或撰写过的研究成果。与我一同工作的同志对本研究所做的工作已在论文中作了明确说明并表示谢意。
毕业论文(设计)作者签名:
日期:
安徽新华学院2015届本科毕业论文(设计)
安徽新华学院二手商品交易平台的设计与实现
摘 要
伴随着电子商务的飞速发展,网上交易日益发挥出其不可替代的优越性。但由于电子商务在校园的应用起步较晚,以及校园电子商务模式应用的不成熟,使高校校园电子商务的发展缓慢。
二手商品交易网站是一个服务于在校学生的C2C(Custom to Custom)的交易网站,通过本网站用户可自由出售和购买商品,为广大学生提供了平等互利、方便快捷的交易空间。系统的主要功能包括:会员管理、类别管理、用户注册、商品发布、商品审核。
本系统前台主要使用JSP作为开发语言,后台使用MySQL作为数据库管理系统,开发环境是MyEclipse,服务器采用tomcat,开发出的一个基于Web技术的B/S结构的二手电子产品交易系统。
关键词:二手交易网;网上商店;JSP;B/S结构
I
安徽新华学院2015届本科毕业论文(设计)
Design and implementation of second-hand goods trading platform of
Anhui Xinhua University
ABSTRACT
With the rapid development of e-commerce, online trading has to play its irreplaceable advantages. But because of electronic commerce in the campus application starts relatively late, and the campus electronic commerce application is not mature, so that the development of campus e-commerce is slow.
Secondhand goods transactions website is a service to the students of C2C ( Custom to Custom ) transaction website, through the web site, users can freely buy and sell goods, provides students with equality and mutual benefit, convenient and efficient trading spaces. The main functions of the system include: membership management, category management, user registration, product releases, product review.
The front of the system using JSP as a development language, the use of MySQL as a database management system, the development environment is MyEclipse, server using tomcat, developed a Web technology based on B / S structure of second-hand electronic products trading system.
Key words: secondary trading networks;online store;JSP;B / S structure
II
安徽新华学院2015届本科毕业论文(设计)
目 录
1 绪 论 ....................................................... 1 1.1 课题研究背景 ............................................... 1 1.2课题研究的目的和意义 ....................................... 1 1.3课题研究的内容 ............................................. 2 1.4可行性分析 ................................................. 2 1.4.1技术的可行性 ............................................. 2 1.4.2经济的可行性 ............................................. 3 1.4.3操作可行性 ............................................... 3 1.4.4法律的可行性 ............................................. 3 2 系统相关技术介绍 ............................................. 4 2.1.开发工具 ................................................... 4 2.1.1 MyEclipse ................................................ 4 2.1.2 Tomcat ................................................... 5 2.1.3 MySQL .................................................... 5 2.2 JSP ........................................................ 5 3 需求分析 ..................................................... 7 3.1需求调研 ................................................... 7 3.2功能模块需求分析 ........................................... 7 3.3性能需求 ................................................... 8 3.3.1系统的安全性 ............................................. 8
III
安徽新华学院2015届本科毕业论文(设计)
3.3.2数据的完整性 ............................................. 8 3.4界面需求 ................................................... 9 4 系统分析与设计 .............................................. 10 4.1系统设计的基本思想 ........................................ 10 4.2数据库的分析与设计 ........................................ 10 4.2.1数据库的概念结构设计 .................................... 11 4.2.2数据库的逻辑结构设计 .................................... 13 4.2.3数据库的连接原理 ........................................ 14 4.3 开发环境设计 .............................................. 16 5 系统功能实现 ................................................ 17 5.1系统登陆页面实现 .......................................... 17 5.2总体功能模块 .............................................. 18 5.2.1注册会员管理 ............................................ 19 5.2.1类别信息管理 ............................................ 21 5.2.3商品信息管理 ............................................ 23 5.2.4系统信息管理 ............................................ 25 5.2.5修改密码 ................................................ 26 5.2.6退出系统 ................................................ 27 5.3前台网站模块 .............................................. 27 5.3.1网站首面 ................................................ 27 5.3.2用户注册 ................................................ 28
IV
安徽新华学院2015届本科毕业论文(设计)
5.3.3添加商品信息 ............................................ 29 5.3.4交易商品 ................................................ 29 6 系统测试 .................................................... 30 6.1系统测试目的与意义 ........................................ 30 6.2测试过程 .................................................. 30 6.2.1主页面的登录模块测试 .................................... 30 6.2.2中文乱码错误的处理 ...................................... 32 7 结 论 ..................................................... 34 参考文献 ...................................................... 35 致 谢 ....................................................... 36
V
安徽新华学院2015届毕业论文(设计)
1 绪 论
近年来,随着家庭收入的增长,学生购买力也在逐步的增加,于是学生群体产生了许多的二手商品,许多时候由于没有合适的平台,很多没有用的二手商品被学生扔掉或者不用造成了许多不必要的浪费,于是二手交易平台的设计可以给学生们提供一个交易二手商品的平台,避免了一些不必要的浪费。
1.1 课题研究背景
随着Internet 爆炸式的发展,中国自加入WTO以来,电子商务在国内也迅速的发展了起来,现在互联网上各种电子商务网站更是迅速的增长。还在校园的我也深受其中的影响,开发一个对在校学生适用的网站,希望能给大家提供便捷的服务。
作为一名即将毕业的大学生,感同身受,从身上穿的衣服到学习用的书籍、文具以及各类生活用具,使用上一定的时间就会被淘汰,有一部分的同学干脆扔掉,不仅是浪费而且污染了环境。也有一部分同学想到了要卖掉自己的东西,但是因为苦于难寻买家,最后就将其卖给收费品的。这样就造成了物不能尽其用。
为了解决这种资源的浪费,因此才开发了校园二手交易信息网站,借助于交易成本低的Internet。为广大学生提供一个成本的、速度快效率搞的信息发布平台。系统开发的过程中本人严格按照系统开发步的骤进行,在系统调研、分析、设计到系统的实施的全过程中,努力追求其科学性和合理性。
1.2 课题研究的目的和意义
在当前社会上,许多的各种类型的电子商务类网站纷纷建立,可以很大程度上的解决人们信息资源的闭塞以及地域上的限制。在大学校园里,随着学生购买能力的提高以及每年升学和毕业人数的增加,产生了各种类型的二手商品,因为信息交流比较落后,很多二手商品只限于请人代为宣传等这样的方式进行交易。这样的方式存在着许多局限性和不确定性,所以不能符合二手商品通畅交流的需求。因此一种新的二手商品交流信
1
安徽新华学院2015届毕业论文(设计)
息的方式呈现出来了,即基于web的学生二手商品交易的系统。通过此系统,每个学生都可以是这个系统的主人,只要你是校园网用户,学生们可以极其方便的公布自己的二手商品信息,浏览其他人发布的二手信息,并且可以对二手商品信息比较客观地比较。 做出自己满意的选择。这个仅仅系统只是一个沟通交流二手商品信息的平台,和一般的电子商务类网站存在着本质的区别。
设计出这样的一个系统,从本质上解决了以前校园二手信息发布交流方式存在的弊端,让校园各种二手商品信息可以得到了更加有效的整合,方便了广大学生用户。二手商品交易网站真正打破了传统电子商务网站的价格壁垒,使欲购买物件又觉得新的价格过高而承受不起,二手市场的物品又感觉质量价格比不是太高,只有在二手商品交易网站方可购得性价比最好的商品。二手商品交易网站7*24小时服务顾客,你随时可以来这里浏览或购置二手商品,省时省力。
1.3 课题研究的内容
该校园二手交易系统可以注册用户,用户注册完以后可以用相应的用户名和密码进行登陆,用户进入系统后,可以浏览二手商品的一些详细的信息。后台的管理员能够对网站的商品信息进行管理,同时也可以对用户就行管理。没有注册的用户可以一些免费的二手交易信息,但是如果想获得更加详细的信息,用户就必须要进行相应的注册才能够得到更加详细的商品信息以便于购买该二手商品。
1.4 可行性分析
开发任何一个系统,都会受到时间和资源上的限制。因此,在每一个项目开发之前,都要进行可行性分析,这样可以减少项目的开发风险,避免人力、物力和财力的浪费。下面就技术、经济、操作和法律四个方面来介绍。
1.4.1 技术的可行性
本系统开发工具是MyEclipse和MySQL数据库,开发语言是Java,主要使用了J2EE的技术,Java是一种面向对象编程语言,简单易学而且灵活方便。大三时就学习了Java
2
安徽新华学院2015届毕业论文(设计)
课程,大四期间也系统的了解了J2EE的知识,二手电子产品交易系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心。在大学期间学习过软件工程,软件测试,UML统一建模语言等课程,每个学期也会完成对应的课程设计,具备一定的系统分析、设计和测试能力。因此,完成系统实现在技术上完全具有可行性。
1.4.2 经济的可行性
由于选择的开发工具和服务器几乎全部为免费的开源软件,并且由于是开发成本较低的基于Web的B/S模式,而非成本费用相对较高的C/S模式,所以从经济上来讲是可行的。
1.4.3 操作可行性
本系统操作简单,输入信息页面大多数都是下拉框的选择形式,在某些页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操作简便,对操作人员的要求很低,只需对WINDOWS操作熟练,加之对本系统的操作稍加培训即可工作,而且本系统可视性非常好,所以在技术上不会有很大难度。
1.4.4 法律的可行性
本二手电子产品交易系统是自行开发的系统,是很有实际意义的系统,开发环境软件和使用的数据库都是开源代码,开发这个系统不同于开发普通的系统软件,不存在侵权等问题,即法律上是可行的。
综上所述,开发一个二手电子产品交易系统与原有的产品交易方式相比具有速度更快,操作更准确,节省开支等有利之处。因此,建立二手电子产品交易系统是必要可行的。
3
安徽新华学院2015届毕业论文(设计)
2 系统相关技术介绍
工欲善其事必,先利其器 。系统的开发离不开好的工具,下面将给大家详细的介绍系统开发所运用到的相关的技术和软件。
2.1 开发工具
此次设计主要采用MyEclipse加Tomcat后台服务器进行,设计过程中页面主要使用JSP技术完成,下面对MyEclipse、Tomcat和MySQL数据库进行简要介绍。
2.1.1 MyEclipse
本系统的设计主要运用了MyEclipse和Tomcat后台服务器技术,设计时中采用了JSP技术完成了页面设计过程,接下来我们主要对MyEclipse、Tomcat和MYSQL数据库进行说明。
MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及在整和应用服务器方面极大的提高工作效率。它有功能比较丰富的JavaEE集成的开发环境,其中包含了比较完备的编码、调试、测试和发布的功能,支持完整的HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。MyEclipse,是一个比较优秀的用于开发Java, J2EE的Eclipse插件的集合,MyEclipse的功能比较强大,支持也相对广泛,尤其是对各种开元产品的支持相当不错。其中MyEclipse的特征可以被分为7类:
(1)JavaEE模型 (2)WEB开发工具 (3)EJB开发工具
(4)应用程序服务器的连接器 (5)JavaEE项目部署服务 (6)数据库服务
4
安徽新华学院2015届毕业论文(设计)
(7)MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相对应的功能部件,并通过这些插件来实现它们。MyEclipse结构上的模块化,可以使我们在不影响其他模块的情况下,对任一模块进行扩展和升级。
总体而言,MyEclipse是Eclipse的一个插件,也是一款功能比较强大的JavaEE集成开发环境,支持代码的编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。
2.1.2 Tomcat
Tomcat是一种小型的轻量级应用服务器,在中小型的系统和并发访问用户不是很多的情况下被人们普遍使用,是进行开发和调试JSP 程序的首要选择可以这样说,当在一台机器上配置Apahce服务器,可利用它响应对HTML页面进行访问的请求。实际上Tomcat 部分是Apache 服务器的一种扩展,不过它是独立运行的,所以在运行tomcat 时,它实际上会作为一个与Apache 独立的进程进行单独运行的。
2.1.3 MySQL
MySQL使用C和C++编写,并且使用了多种编译器进行测试,保证源代码的可移植性;支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统;为多种编程语言提供了API;支持多线程,充分利用CPU资源;提供TCP/IP、ODBC和JDBC等多种数据库连接途径;可以处理拥有上千万条记录的大型数据库。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
2.2 JSP
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网
页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的
5
安徽新华学院2015届毕业论文(设计)
应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与Servlet一样,是在服务器端执行的,通常返回给客户端就是一个HTML文本,因此客户端只要有浏览器能浏览。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。JSP技术的优点:
(1)一次编写,到处运行。除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/.net的局限性是显而易见的。
(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。Java已存在了非常多优秀的开发工具,而且有多的开发工具可以免费得到,并且在此之中许多工具已经可以非常顺利的运行于多种平台之下。
(5)支持服务器端组的件。web应用需要非常强大的服务器端组件来支持,开发者需要利用其他的一些工具来设计和实现复杂功能及组件以供web页面调用,以增强系统的性能。JSP可以使用很成熟的JAVA BEANS 组件来实现比较复杂的商务功能。
内部对象说明:request 客户端请求,此请求会包含来自GET/POST请求的参数; response网页传回客户端的响应;pageContext网页的属性是在这里管理; session 与请求有关的会话; application servlet正在执行的内容;out用来传送响应的输出流; config代码片段配置对象;page JSP网页本身; exception针对错误网页,未捕捉的例外。
6
安徽新华学院2015届毕业论文(设计)
3 需求分析
通过对学校学生的长期观察,以及对一些学生的调查,了解了学生们对于二手交易平台功能的基本需求,借鉴了一些常用的二手交易平台的整合出了这个满足学生基本要求的校园二手交易平台。
3.1 需求调研
项目的开始是对系统进行需求调研,在大学校园中,由于学生购买能力的提高以及每年有许多的学生升学和毕业,也存在的许多不用的各种类型的二手商品,由于信息交流的比较落后,很多二手商品仅限于校园发传单和请人代为宣传的方式进行二手商品的交易。这种方式存在局限性和不确定性,它不能满足学生对于二手商品畅通交流的要求。根据学生的实际情况及调查结果,发现校园实现二手产品交易的网络化、信息化是非常有必要的,因此设计了校园二手商品交易系统。
3.2 功能模块需求分析
本系统最大的特点是使用操作简单、友好的提示信息。本系统将实现以下基本功能: (1)系统具有简洁大方的页面,使用简便,友好的错误操作提示。
(2)管理员用户具有注册用户管理、类别管理、交易信息管理、系统管理功能。 (3)具有较强的安全性,避免用户的恶意操作。
管理员功能模块图说明:管理员是功能最多的一种用户角色。
(1)系统管理模块:在该模块中完成系统信息管理功能,系统信息管理提供系统管理员的查询,增加和删除等功能操作。管理员信息包括用户名、密码信息。
(2)注册用户管理模块:在该模块中定义了注册用户信息的管理,其功能包括注册用户信息查询、审核、删除等操作。
(3)类别管理模块:在该模块中定义了对产品类别信息的管理,其功能包括类别信息录入、查询、删除等操作。
(4)交易信息管理模块:在该模块中定义了对交易信息的管理,其功能包括交易信
7
安徽新华学院2015届毕业论文(设计)
息查询、审核、删除等操作。管理员用户功能模块图如下:
管理员用户模块修改个人密码系统信息管理注册用户管理类别信息管理交易信息管理3.3 性能需求
性能是对一个系统好坏进行评价的重要指标,下面就是该系统的一些性能。
3.3.1 系统的安全性
二手电子产品交易系统在管理权限上要严格进行控制,具体要求如下:
想登录二手电子产品交易系统进行操作,必须有操作权限,没有权限的用户不能通过任何方式登录系统查看系统的任何信息和数据,以确保系统的严密性和安全性。
3.3.2 数据的完整性
(1)各种记录信息的完整性,信息记录的内容可以为空。 (2)各种信息数据之间相互联系的正确性。 (3)数据在不同记信息录中的一致性。
管理员添加 管理员管理注册用户审核 图3.1 管理员用户功能模块图
注册用户管理类别信息添加 类别信息管理交易信息审核交易信息管理
8
安徽新华学院2015届毕业论文(设计)
3.4 界面需求
界面的设计目前已成为评价一个软件质量的重要指标,好的用户界面可以增加用户对系统的信心和兴趣,提高工作效率,JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序,创建动态页面非常方便。用户界面是指软件系统与用户交互的接口,通常包括输出、输入、人-机对话的界面格式等。
(1)输出设计
输出设计是由于计算机要对输入的原始的信息进行数据信息加工处理,形成相对高质量的有效信息,并使其具有一定的格式,提供给管理者进行使用,这是输出设计的主要职责和目标。
系统设计的过程正好与系统实施的过程相反,它并不是从输入设计到输出设计,而是由输出设计到输入设计,这是由于输出表格直接与使用者进行联系,设计的出发点应当是保证输出表格方便地为使用者服务,正确及时反映和组成用于各部门的有用信息。输出设计的原则是考虑既要全面反映不同管理层的各项需要,又要言简意赅,不要将用户需要和不需要的都提供给用户。
(2)输入设计
对输入数据的收集和录入是一件比较费事的事,需要许多的人力和一定设备,并且比较容易出错。如果输入系统输入的数据有错误,则系统处理后的输出数据将扩大这些错误,因此输入数据的正确对整个系统的质量的好坏具有非常重要的意义。
输入设计的原则有如下的几点:
①输入量应该保持在能满足处理要求的最低的限度。设计中应该可采用设置字段的初值,下拉式的数据窗口等方式应该尽量减少用户的键盘输入量。输入的量越少,错误率就越少,数据准备时间也就减少。
②输入的准备及输入过程应该尽量比较容易进行,从而尽量减少错误的发生。 ③应该尽量早对输入的数据信息进行检查(尽量接近原数据发生的点),以便于错误及时得到更正。
④输入数据应该尽早地用处理所需的形式进行记录,避免数据由一种介质转移到另一种介质需要转录而可能引发的错误。
9
安徽新华学院2015届毕业论文(设计)
4 系统分析与设计
通过上面的需求分析,我们大致的明白了系统能够实现的一些需求,下面将对整个系统进行分析 。
4.1 系统设计的基本思想
设计思想遵循以下几点:
(1)采用B/S模式进行开发,其优点是后台与前台处理层次分明,而且符合众多已经习惯网页方式的用户。
(2)采用面向对象进行开发和设计。运用面向对象技术的前提就是对整体系统的高度和准确抽象,通过它可以保证系统有良好的框架,进而给商品带来比较强的稳定性和它的运行效率。
(3)采用模块化的设计。模块化的设计要求是将整个系统划分为每个小的模块,有利于程序代码的重载,简化程序设计和实现过程。
(4)简单方便的系统界面。设计简单友好的系统界面,方便用户较快的适应系统的操作。
(5)速度优先原则。由于此工具最重要的评测标准就是速度,因此在设计过程中,具体过程尽量做到资源占用少,速度快。
(6)设计既要突出重点,又要细致周到。要符合设计需求,在有可能改进的地方进行扩充,使系统更适应用户的需要。
4.2 数据库的分析与设计
计算机信息系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。数据库已经成为现在信息系统等计算机系统的基础与核心部分。数据库设计的好与坏直接影响到一整个系统的质量和效率 。
10
安徽新华学院2015届毕业论文(设计)
数据库的设计一般要经过规划、需求分析、概念设计、逻辑设计、物理设计这5个步骤。
4.2.1 数据库的概念结构设计
概念设计是指在数据分析的基础上自下向上的建立一整个系统的数据库概念结构,要从用户的角度进行视图的设计,然后再将视图集成,最后要对集成的结构分析优化最终得到一个结果。
数据库的概念结构设计一般采用实体—联系(E-R)模型设计方法。E-R模型法的组成元素有:实体、属性、联系,E-R模型用E-R图表示,主要是提示用户工作环境中所提及的事物,属性就是对实体特性的叙述。
概念设计的目的是产生与企业组织信息要求相适应的数据库概念结构,即概念模式。概念模式则是与数据库逻辑结构独立的,与支持数据库的DBMS独立,并且不依赖于计算机系统的。
按照以上对数据库的需求分析,并且结合系统概念模型的特点及建立方式,建立了E-R模型图。如图4.1所示是实体模型图,如图4.2所示是属性模型图,如图4.3所示是实体间关系模型图。
图4.2 属性模型图图4.1 实体模型图
(1)注册用户信息实体E-R图如图4.4所示:
年龄邮箱图4.3 实体间关系模型图 登录名姓名登录密码注册用户信息 图4.4注册用户信息实体E-R图
11
安徽新华学院2015届毕业论文(设计)
(2)类别信息实体E-R图如图4.5所示:
编号名称类别信息 图4.5 类别信息实体E-R图
(3)商品信息实体E-R图如图4.6所
描述标题图片联系人发布人联系电话商品类别QQ商品信息
图4.6 商品信息实体E-R图
(4)留言信息E-R图如图4.7所示:
内容时间所属商品标题留言用户留言信息 图4.7 留言信息实体E-R图
12
安徽新华学院2015届毕业论文(设计)
(5)管理员信息E-R图如图4.8所示:
登录名密码管理员信息 图4.8 管理员信息实体E-R图
4.2.2 数据库的逻辑结构设计
我们都知道,数据库的概念模型是于任何一个特定的数据库的管理系统,因此,我们需要根据具体使用数据库管理系统的特点来进行转换。即转变为按计算机处理的逻辑性的关系模型,E-R模型向关系数据库的模型转换应该遵循下列原则:
(1)每一个实体都要转换成一个关系 (2)所有的主键一定要定义非空(NOT NULL)
(3)对于二元联系应按照一对多、弱对实、一对一、多对多等联系来定义外键
根据E-R模型,二手电子产品交易系统建立了以下逻辑数据结构,下面是各数据表的详细说明。
(1)会员信息表主要是记录了注册会员基本信息,表结构如表4-1所示:
表4-1会员信息表(t_user)
列名 id xingming age email loginname loginpw zhuangtai 数据类型 int varchar varchar varchar varchar varchar varchar 长度 允许空 是否主键 4 否 是 50 否 否 50 否 否 50 否 否 20 否 否 20 否 否 20 否 否 说明 编号 姓名 年龄 邮箱 登录名 登录密码 审核状态 (2)类别信息表主要记录了产品类别基本信息,表结构如表4-2所示:
表4-2管理员信息表(t_catelog)
列名 数据类型 catalog_id int catalog_name varchar
长度 允许空 是否主键 4 否 是 50 否 否 13
说明 编号 类别名称
安徽新华学院2015届毕业论文(设计)
(3)产品信息表主要是记录了要交易二手产品的基本信息,表结构如表4-3所示。
表4-3产品信息表(t_xinxi)
列名 数据类型 id Int catelog_id Int user_id Int title varchar miaoshu varchar fujian varchar lianxiren varchar lianxidianhua varchar lianxiqq varchar shijian varchar zhuangtai varchar
(4)留言信息表主要是注册用户对产品留言的基本信息,表结构如表4-4所示:
表4-4留言信息表(t_liuyan)
列名 id title content shijian xinxi_id user_id
(5)管理员信息表主要记录的管理员的账号信息,包括用户名和密码,表结构如表4-5所示:
表4-5卖家信息表(t_admin)
列名 userId userName userPw 数据类型 int varchar varchar 长度 允许空 是否主键 4 否 是 50 否 否 50 否 否 说明 编号 用户名 密码 数据类型 Int varchar varchar varchar Int Int 长度 4 50 50 50 4 4 允许空 是否主键 否 是 否 否 否 否 否 否 否 否 否 否 说明 编号 标题 内容 留言时间 所属商品 留言人 长度 允许空 是否主键 4 否 是 4 否 否 4 否 否 50 否 否 50 否 否 50 否 否 50 否 否 50 否 否 50 否 否 50 否 否 50 否 否 说明 编号 产品类别 发布人 标题 描述 图片 联系人 联系电话 QQ 发布时间 审核状态 4.2.3 数据库的连接原理
本系统采用Hibernate对数据库进行管理。Hibernate 是一个开放源代码的对象关
14
安徽新华学院2015届毕业论文(设计)
系映射框架,它对 JDBC 进行了轻量级的对象封装,使 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。它不仅提供了从 Java 类到数据表之间的映射,也提供了数据查询和恢复机制。相对于使用JDBC和SQL来手工操作数据库,Hibernate 能够大大的减少操作中数据库的工作量。 另外Hibernate还可以利用代理模式来进行简化载入一个类的过程,这就可以大大的减少利用Hibernate QL中从数据库提取数据代码的编写量,从而可以节约开发的时间和开发产生的成本Hibernate还可以和多种Web 服务器和应用服务器良好集成,如今已经可以支持几乎所有的流行的数据库的服务器。
Hibernate技术的本质是一个提供数据库服务的一个中间件。它的架构如图4.5所示:
图4.9Hibernatre架构图
图4.9是Hibernate的工作原理,它是利用了数据库以及其他一些配置文件例如 Hibernate .properties,XML Mapping等给应用程序提供数据比较持久化服务的。
Hibernate 拥有很大的灵活性,但同时它的体系结构相对比较的复杂,提供了几种不同的运行的方式。在这个轻型体系中,应用程序可以提供 JDBC 连接,并且能自行管理事务,这种方式使用的是Hibernate的一个最小子集;在全面解决的体系中,对于这个应用程序来说,所有底层的JDBC/JTA API都可以被抽象了,Hibernate会替你照管所有的细节。
15
安徽新华学院2015届毕业论文(设计)
4.3 开发环境设计
硬件环境:
CPU:Pentium以上计算机 内存: 512M以上 软件环境:
操作系统版本:Windows XP /vista/Win7 开发工具:MyEclipse 6.0.1 后台服务器:Apache Tomcat 6.0 开发语言:Java 浏览器:IE6.0
16
安徽新华学院2015届毕业论文(设计)
5 系统功能实现
在管理信息系统的一整个生命周期中,经过需求分析、系统设计等几个阶段之后,便开始了系统实施的阶段。在系统分析与设计阶段,系统开发的主要工作是集中在逻辑、功能与技术设计上,系统实施的阶段需要继承前面的各个阶段的工作成果,需要把技术设计转化为物理实现,因此系统实施的最终成果是系统分析与设计阶段的结晶。
5.1 系统登陆页面实现
(1)描述:为了保证系统的安全性,要先使用本系统必须先登陆到系统中,用户需要正确的账号和密码登录本系统。
(2)程序运行效果图如图5.1所示:
图5.1 系统登陆页面设计
(3)在登陆页面可以输入用户名和密码,可以点击提交按钮,可以跳转到登陆的service中,在该service中能够对用户名,密码,验证通过进入对应的页面,loginservice关键代码:
public String login(String userName,String userPw,int userType) {
String result=\;
String sql=\; Object[] con={userName,userPw};
17
安徽新华学院2015届毕业论文(设计)
List adminList=adminDAO.getHibernateTemplate().find(sql,con); if(adminList.size()==0) { } else {
WebContext ctx = WebContextFactory.get(); HttpSession session=ctx.getSession(); TAdmin admin=(TAdmin)adminList.get(0); session.setAttribute(\, 0); result=\;
session.setAttribute(\, admin); result=\;
}
}
return result;
5.2 总体功能模块
(1)描述:系统主页面:左方页面展示了管理员可操作的四大功能,进入相关的管理页面可以链接到子菜单,并且高亮显示,每个管理模块下面都有相应的子菜单。
(2)程序运行效果图如图5.2所示:
图5.2管理员主页面
在每个jsp页面将会对相关用户进行拦截操作,这样可以提高安全性,防止用户不
18
安徽新华学院2015届毕业论文(设计)
经过登陆页面而进入任何子菜单页面:
if(session.getAttribute(\)==null) {
out.print(\请先登录!
');window.open('../index.jsp','_self')\);
}
5.2.1 注册会员管理
使用该系统要注册会员,注册会员会方便学生们对该系统的使用,下面是注册用户的一些管理。
5.2.1.1 注册用户信息管理
(1)描述:管理员点击左侧的菜单“用户管理”,页面跳转到用户信息管理界面,调用后台的action类查询所有注册用户信息。
(2)程序效果图如下图5.3所示:
图5.3 用户信息管理
用户信息管理关键代码:
public String userMana_daishenhe() { }
public String userShenhe() {
TUser user=userDAO.findById(id); user.setZhuangtai(\); userDAO.attachDirty(user);
Map request=(Map)ServletActionContext.getContext().get(\); request.put(\, \审核完毕\);
19
String sql=\; List userList=userDAO.getHibernateTemplate().find(sql);
Map request=(Map)ServletActionContext.getContext().get(\); request.put(\, userList); return ActionSupport.SUCCESS;
安徽新华学院2015届毕业论文(设计)
}
return \;
public String userMana_yishenhe() { }
public String userDel() { }
TUser user=userDAO.findById(id); user.setDel(\);
userDAO.attachDirty(user);
Map request=(Map)ServletActionContext.getContext().get(\); request.put(\, \删除成功\); return \;
String sql=\; List userList=userDAO.getHibernateTemplate().find(sql);
Map request=(Map)ServletActionContext.getContext().get(\); request.put(\, userList); return ActionSupport.SUCCESS;
5.2.1.2 注册用户审核
(1)描述:先是点击人员审核管理,页面跳转到人员审核管理界面,浏览所有的待审核的注册用户信息,点击要审核的用户信息,完成注册用户审核操作。
(2)程序效果图如下图5.4、图5.5所示:
图5.4 待审核用户浏览
图5.5用户审核
5.2.1.3注册会员信息删除
(1)描述:先是点击用户管理,页面跳转到用户信息管理界面,浏览所有的用户
20
安徽新华学院2015届毕业论文(设计)
信息,点击要删除的用户信息,弹出的确定对话框,即可删除该用户信息。
(2)程序效果图如下图5.6所示:
图5.6 注册用户信息删除
5.2.1 类别信息管理
系统中需要对信息进行一些管理,下面是类别的信息管理。 5.2.2.1 类别信息录入
(1)描述:管理员输入类别相关正确信息后再点击录入按钮,假如没有输入完整的类别信息,都能够给出相应的错误提示,不可以录入成功。输入的数据都可以通过form表单中定义的方法onsubmit=\来检查,checkForm()函数中是各种的校验输入数据的方式。
(2)程序效果图如下图5.7所示:
图5.7类别信息录入
5.2.2.2 类别信息管理
(1)描述:管理员点击左侧的菜单“类别管理”,页面跳转到商品类别管理界面,调用后台的action类查询出所有的商品类别信息,并把这些信息封转到数据集合List中,绑定到request对象,然后页面跳转到相应的jsp,显示出商品类别信息。
(2)程序效果图如下图5.8所示:
21
安徽新华学院2015届毕业论文(设计)
图5.8类别信息管理页面
类别信息管理关键代码:
public String catelogAdd() { }
public String catelogMana() { }
public String catelogDel() {
TCatelog catelog=catelogDAO.findById(catelogId); System.out.println(catelog+\); catelog.setCatelogDel(\); catelogDAO.attachDirty(catelog); this.setMessage(\操作成功\);
this.setPath(\);
String sql=\;
List cateLogList=catelogDAO.getHibernateTemplate().find(sql); Map request=(Map)ServletActionContext.getContext().get(\); request.put(\, cateLogList); return ActionSupport.SUCCESS; TCatelog catelog=new TCatelog(); catelog.setCatelogName(catelogName); catelog.setCatelogDel(\); catelogDAO.save(catelog);
this.setMessage(\操作成功\);
this.setPath(\); return \;
return \; }
5.2.2.3 类别信息删除
(1)描述:先是点击商品类别管理,页面跳转到商品类别管理界面,浏览所有的商
22
安徽新华学院2015届毕业论文(设计)
品类别信息,点击要删除的商品类别,弹出的确定对话框,即可删除该商品类别信息。
(2)程序效果图如下图5.9所示:
图5.9类别信息删除页面
5.2.3 商品信息管理
系统中出现许许多多的二手商品信息,于是,我们对这些商品的信息就行管理。 5.2.3.1 商品信息管理
(1)描述:管理员点击左侧的菜单“商品信息”,页面跳转到商品信息管理界面,调用后台的action类查询出所有的商品信息,并把这些信息封转到数据集合List中,绑定到request对象,然后页面跳转到相应的jsp,显示出商品信息。
(2)程序效果图如下图5.10所示:
23
安徽新华学院2015届毕业论文(设计)
5.3.3 添加商品信息
(1)描述:注册成功并被审核通过的用户,通过该模块实添加二手商品信息。 (2)程序效果图如下图5.18所示:
图5.18 添加商品信息界面
5.3.4 交易商品
(1)描述:该模块事用户商品的交易 (2)程序效果图如下图5.19所示:
图5.19 商品交易界面
29
安徽新华学院2015届毕业论文(设计)
6 系统测试
通过上面的系统功能实现,我们了解了系统的大致功能。测试是制作一个系统很重要的部分。下面我们将会对该系统进行测试。
6.1 系统测试目的与意义
系统的测试是系统开发周期中一个很重要并且很漫长的阶段。他的重要性体主要现在他是可以保证系统的质量与可靠性的最后一个关口,是整个系统开发过程包含系统的分析、系统的设计以及系统实现的最终审查。
系统测试的任务是尽可能彻底的检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统“做得怎样”。这阶段又可以分为三个步骤:模块测试,测试每一个模块的程序正确性;组装测试,测试模块与模块之间的接口是不是正确的;确认测试,测试整个系统软件是否能够满足用户功能对于性能的要求。测试中发现问题之后经过调试找出错误原因以及位置,然后对错误进行改正。是基于系统需求说明书的黑盒测试,应覆盖系统随偶联合的部分部件,系统测试是要对整个产品系统进行全面测试,目的主要是要验证系统是否能够满足需求规格的定义,找出需求规格中不符合以及与之矛盾的地方。
6.2 测试过程
在测试之初,由于将数据库中的数据是随便输入,没有实用性,为了使系统更加完善,在系统测试的过程中,本系统将一开始编程随便输入的数据全部清理后,输入了一些有效的测试数据,这样可以更真实的反映系统的功能实现情况。
这样不断发现问题,经过反复的测试、调试,把问题一个个的解决,最终系统可以正常运行。
6.2.1 主页面的登录模块测试
测试流程:
30
安徽新华学院2015届毕业论文(设计)
(1)打开系统首页,输入错误的登录信息 (2)登录
(3)输入正确的登录信息 (4)登录 (5)测试结果 模块名称 登录模块 登录模块 登录模块 测试用例 密码:null 用户名:m1 密码:null 用户名:m1 密码:1 预期结果 请输入用户名 请输入密码 实际结果 请输入用户名 密码 是否通过 用户名:null 弹出错误提示,登陆失败,提示通过 弹出错误提示,失败,提示输入通过 弹出错误提示,登陆失败,提示通过 用户名或者密用户名或者密码错误 码错误 通过 登陆模块 用户名:ml 密码:123456 弹出登陆成功成功登陆。 提示 用户登陆成功图示如图6.1所示,用户登陆失败如图6.2所示:
图6.1 登陆成功界面 图6.2 登陆失败界面
管理员登陆成功如图6.3所示,用户注册成功如图6.4所示:
图6.3 管理员登陆成功界面 图6.4 用户注册成功界面
31
安徽新华学院2015届毕业论文(设计)
6.2.2 中文乱码错误的处理
在程序中经常会遇到中文乱码的情况,如果手动的在servlet和jsp页面进行设置,相当麻烦。因此,在程序的开始就写了一个过滤SetCharacterEncodingFilter。
在web.xml中配置:
对应的SetCharacterEncodingFilter.java文件中的重要代码,在初始化init()方法中定义:
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
this.encoding = filterConfig.getInitParameter(\); String value = filterConfig.getInitParameter(\); }
在工具包util包中同样定义了DataFormate类来处理字符转换:
public static String toUni(String gbStr){ String uniStr = \; /*把字符串转换成uincode编码*/ if(gbStr == null){ gbStr = \; } try{
byte[] tempByte = gbStr.getBytes(\); uniStr = new String(tempByte,\); }catch(Exception ex){ }
return uniStr; }
/* 把字符串转换成Utf8编码*/
public static String toUtf8String(String s) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < s.length(); i++) {
32
安徽新华学院2015届毕业论文(设计)
char c = s.charAt(i); if (c >= 0 && c <= 255) { sb.append(c); } else {
byte[] b; try {
b = Character.toString(c).getBytes(\); }catch (Exception ex) { System.out.println(ex); b = new byte[0]; }
for (int j = 0; j < b.length; j++) { int k = b[j]; if (k < 0) { k += 256; }
sb.append(\ + Integer.toHexString(k). toUpperCase()); } }
return sb.toString(); }
33
正在阅读:
十三五重点项目-蔓越橘汁项目资金申请报告06-05
全国100所名校单元测试示范卷(高三):物理(全国东部)1-14套 第4单元01-13
XX包装纸业有限公司安全风险评估报告03-29
案例1:L烟草物流配送中心的优化04-11
14-15(1)统计学A卷03-13
《柳树醒了》第一课时08-17
教育技术概念的理解11-09
oracle10G - windows - MSCS - 双机安装05-11
超星慕课大学生爱情兵法考试答案(精修版)01-16
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 交易平台
- 基于
- Javaweb
- 实现
- 商品
- 二手
- 设计