毕业设计论文-团购网站 - 图文

更新时间:2024-05-26 19:51:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

毕业设计报告(论文)

报告(论文)题目: TELLGO团购网的设计与实现 作者所在系部: 计算机科学与工程系 作者所在专业: 计算机科学与技术 作者所在班级: B09512 作 者 姓 名 : 王景龙 作 者 学 号 : 20094051203 指导教师姓名: 刘洁 完 成 时 间 : 2013年3月

北华航天工业学院教务处制

北华航天工业学院

本科生毕业设计(论文)原创性及知识产权声明

本人郑重声明:所呈交的毕业设计(论文)

TELLGO团购网的设计与实现

是本人在指导教师的指导下,独立进行研究工作取得的成果。除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品或成果。对本设计(论文)的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。因本毕业设计(论文)引起的法律结果完全由本人承担。

本毕业设计(论文)成果归北华航天工业学院所有。本人遵循北华航天工业学院有关毕业设计(论文)的相关规定,提交毕业设计(论文)的印刷本和电子版本。本人同意北华航天工业学院有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;可以采用影印、缩印、数字化或其它复制手段保存论文;在不以营利为目的的前提下,可以公布非涉密毕业设计(论文)的部分或全部内容。

特此声明

毕业设计(论文)作者:

年 月 日 年 月 日

指导教师:

北华航天工业学院毕业论文

摘 要

艾瑞咨询的研究表明,我国团购会员主要集中在白领和学生中间。形成了强大、稳定的消费人群,从消费水平、消费对象、交流渠道三方面进行分析,认为团购将倍受欢迎。团购网站应该关注与学习、生活、娱乐相关的商品,并尽可能提供更多的品种。

TELLGO团购网系统是一个B/S结构的信息系统,以MySql作为后台数据库,Tomcat作为Web服务器,采用MyEclipse作为开发环境。实现了商品查询、会员中心、会员资料修改、订单信息、留言板、管理员登录、商品信息管理、会员管理、订单信息管理、查询会员信息等功能。

系统完全按照软件工程的生命周期进行开发。首先是项目开发前的准备工作,包括大量的技术研究和需求调研。在此基础上,项目组提出了系统的架构,完成了总体设计、详细设计和编码、测试阶段的工作。

关键词:团购 B/S 设计 网站推广

北华航天工业学院毕业论文

Abstract

The iResearch's research shows that our buy members are mainly concentrated in the white-collar workers and students in the middle. The formation of a strong, stable consumer groups, from the analysis of the level of consumption, consumer objects, communication channels that buy popular. Buy site should focus on learning, living, entertainment-related merchandise, and provide more variety as far as possible.

TELLGO buy Network system is a B / S structure of the information system, Mysql as a backend database, Tomcat as a Web server, using Myeclipse as a development environment. Function of commodity query, Member Profile to modify the order information, message boards, administrator login, commodity information management, membership management, order information management, query membership information.

The system is fully developed in accordance with the software engineering life cycle. The first is the preparatory work before the project development, including a large number of technical research and demand research. On this basis, the project team, the architecture of the system, the completion of the overall design, detailed design, coding, testing stage.

Keywords: Group purchase; B/S; Design; Website promotion

II

北华航天工业学院毕业论文

目 录

摘 要 .................................................................................................................................... I Abstract ................................................................................................................................ II 第1章 绪 论 ................................................................................................................... 1

1.1 课题研究现状分析 ............................................................................................... 1 1.2 选题的目的及意义 ............................................................................................... 2 1.3 课题研究的主要内容 ........................................................................................... 2 第2章 系统需求分析 ....................................................................................................... 3

2.1整体组织架构 ........................................................................................................ 3 2.2管理员功能模块 .................................................................................................... 4 2.3用户功能模块 ........................................................................................................ 4 2.4商户户功能模块 .................................................................................................... 5 2.5软件环境 ................................................................................................................ 5 2.6系统业务描述 ........................................................................................................ 6 第3章 总体设计 ............................................................................................................... 7

3.1 JSP技术与MVC模式以及系统的基本框架 ........................................................ 7 3.2 SSH框架的优点 .................................................................................................... 7 3.3关键技术 .............................................................................................................. 10

3.3.1分页技术的实现 ...................................................................................... 10 3.3.2密码加密技术 .......................................................................................... 11

第4章 系统详细设计与实现 ......................................................................................... 12

4.1系统和数据库的配置 .......................................................................................... 12 4.2数据库逻辑模型 .................................................................................................. 12 4.3概念模型设计 ...................................................................................................... 12 4.4数据库表结构 ...................................................................................................... 13 4.5平台数据表的设计 .............................................................................................. 15 第5章 系统功能实现 ..................................................................................................... 20

5.1程序的类图 .......................................................................................................... 20

5.1.1订单Order类图 ...................................................................................... 20 5.1.2类型Leixing类图 .................................................................................. 20 5.1.3团购信息Tuangou类图 .......................................................................... 21 5.1.4用户User类图 ........................................................................................ 22 5.1.5留言Liuyan类图 .................................................................................... 22

北华航天工业学院毕业论文

5.1.6评价Pingjia类图 .................................................................................. 23 5.2程序的流程图 ...................................................................................................... 24

5.2.1 订单模块程序流程图 ............................................................................. 24 5.3系统功能实现的主要框架 .................................................................................. 25

5.3.1 SSH框架的使用以及各自的配置 .......................................................... 25 5.3.2 hibernate配置文件 .............................................................................. 25 5.3.3 struts配置文件 .................................................................................... 26 5.3.4spring配置文件 ...................................................................................... 26 5.4系统功能实现的主要模块 .................................................................................. 27

5.4.1 登陆页面 ................................................................................................. 27 5.4.2 用户注册页面 ......................................................................................... 28 5.4.3 网站主页面 ............................................................................................. 30 5.4.4 类型管理主页面 ..................................................................................... 33 5.4.5 团购列表管理 ......................................................................................... 34 5.4.6 团购订单管理 ......................................................................................... 36 5.4.7 注册用户管理 ......................................................................................... 38

第6章 系统实现与测试 ................................................................................................. 40

6.1软件测试的目的 .................................................................................................. 40 6.2软件测试的任务 .................................................................................................. 40 6.3测试环境 .............................................................................................................. 40 6.4测试环境的配置 .................................................................................................. 41

6.4.1创建安装项目 .......................................................................................... 41 6.4.2添加项目输出 .......................................................................................... 42 6.4.3运行项目 .................................................................................................. 43

总 结 ................................................................................................................................. 44 致 谢 ................................................................................................................................. 45 参考文献 ............................................................................................................................. 46

北华航天工业学院毕业论文

第1章 绪 论

团购是从美国兴起的,它的鼻祖是Group on(兴起于2008年11月)。他们的模式是每天一团,就是每天只出一款团购。Group on花了8个月的时间就达成盈利,并且吸引了风投。国内很多人注意到了这个行业,由于门槛低,投入小,所以就一窝蜂的开展团购业务了。于是一场互联网引发的消费革命网络团购在国际上称为B2T(Business To Team)由此展开了。随着中国电子商务的繁荣发展,近两年多时间,网络团购在中国网民中流行起来。 团购(group purchase)就是团体购物,指认识或不认识的消费者联合起来,加大与商家的谈判能力,以求得最优价格的一种购物方式。它可以让每一个人都能找到更优惠的团购商品,让不相识的消费者共同享受物美价廉的服务。 团购形式有四种:第一种是自发行为的团购;第二种是职业团购行为,目前已经出现了不少不同类型的团购性质的公司、网站和个人;第三种就是销售商自己组织的团购;第四种就是通过组建“消费者联盟”建立持续、稳定、从复团购渠道来创业的“个人特许加盟型团购”。四种形式的共同点就是参与者能够在保证正品的情况下让自己的消费资产获得增值。 团购作为一种新兴的电子商务模式,通过消费者自行组团、专业团购网站、商家组织团购等形式,提升用户与商家的议价能力,并极大程度地获得商品让利,引起消费者及业内厂商、甚至是资本市场关注。其中所谓的团购的商业模式又可大致分为三种:第一种是“网站—用户”,团购网站提供有吸引力的商品/服务,超级优惠折扣,吸引用户购买,并通过奖励用户推广等方式推广用户;用户通过社交化的网络传播,带来规模效应。第二种是“网站—商家”,团购网站寻找有合作意向的商家,约定达成团购的有效人数,没有达到人数则相当于媒体广告,达到不同人数规模可分享或提成部分收益;第三种是“商家—用户”,用户去商家进行消费,成为实际用户;商家积累用户后,进一步了解需求,再次开拓用户的价值。

但是团购仍会表现出它的滞后性。其中便出现了一些反对的声音,当然这些反对的声音来自专业人士。他们认为团购是一种促销手段,不是商业模式。他是一个聚拢人气的方式,最终的经营会导向传统的销售方式。团购网站的发展最终不是被 B2C(Business-to-Consumer(商家对客户))网站收购,就是自己建网上商城搞B2C电子商务。小型的地区性团购网站依然会继续存在,但不会有股票上市的那一天。 我们大家现在所熟知的团购网站基本都是在2010年兴起。

1.1 课题研究现状分析

中国网络团购市场仍呈现快速发展的良好势头,企业数量仍急速攀升。自2010年1月,中国第一家团购网站满座网上线之后,美团网、拉手网、糯米网等团购网站相继上线,一时间,形成了团购网站遍地开花的局面。据CNNIC的数据不完全统计,截至2011年3

1

北华航天工业学院毕业论文

月,中国团购网站已经多达3600余家,月增长速度接近30%。随着市场竞争的不断加剧,部分中小型团购网站将面临被淘汰,部分区域型团购网站将可能被并购。

目前,中国团购企业主要形成五种竞争力量,分别是独立团购网站、社交网络商家、传统电子商务企业、生活信息类服务企业及传统互联网企业五类模式。这五种团购模式各具千秋,优势互补,如果可以利用自有优势探寻差异化的产品或服务,短期内将市场共存。

1.2 选题的目的及意义

对于开发团购网其意义在于可以实现商品生产商和用户之间的双赢,对于商家来说既节省了广告的开资又节约了运输和销售的用度可以是资金更高效的利用起来比如开发更好的产品等等;对于用户来说可以直接从厂商订货价格便宜而且团购还可以打折更加的实惠;就双方来说省掉了中间销售商这一个环节大大的节约了开支。所以团购网就以双赢为目的来开发。

1.3 课题研究的主要内容

本系统包括前台的界面模块,后台的管理员登陆商品管理。 本课题的主要功能有:

(1) 当日团购产品信息展示(最好有特色、有创意)。 (2) 会员和商户的登陆、注册功能。

(3) 会员信息管理:信息修改、密码修改、订单查看、评价提交等。

(4) 管理员信息管理:用户管理、订单管理、商品管理、商户管理、建议管理等。 (5) 商户信息管理:商户登录与团购券查询。

(6)根据现行的团购系统的不足之处,扩充新的功能。 本课题的主要要求:

(1) 系统基于B/S(浏览器/服务器)模式; (2) 数据库设计严谨,模块划分合理; (3) 界面设计友好,用户操作简便;

(4) 增加的辅助功能要适度,并与主要功能搭配合理。

2

北华航天工业学院毕业论文 管理员第2章 系统需求分析 商户用户需求分析是介于系统分析和软件设计阶段之间重要桥梁。良好的分析活动有助于避免或尽早剔除错误,清除用户需求的模糊性,歧义性和不一致性,排除不合理的部分,挖掘潜在的用户需求,最终达到准确、一致,完全地刻画用户需求的目标。软件需求规格说明书是需求分析活动的再现,它将是软件设计,实现,测试直至维护的主要基础。对需求分析活动的准确再现将有利于用户和开发人员交流,有利于开发人员的后期开发工作。团注团团团团团购团册购购购 购注团购2.1整体组织架构订购用 类类类信册购订单管户型型型息登功单网站的使用者主要是管理员、商户和用户。总功能图如下图管理管管管管管录能2-1所示。管 理理理理理团购网站理理 管理员商户用户 团注团团团 购团册购查购注团购订购用类登看 信册购订单管户型陆团登功单 管理管管购息录能管理理理券管理理 图2-1团购设计与实现的组织架构

3

北华航天工业学院毕业论文

2.2管理员功能模块

管理员:团购订单管理,团购管理,注册用户管理和团购类型管理。管理员的功能图如图2-2所示。

管理员注册商户管理团购订单管理团购管理 注册用户管理团购类型管理建议管理图2-2 管理员功能图

2.3用户功能模块

用户:团购信息管理,注册登录,团购登录,团购功能和团购订单管理。用户的功能图如图2-3所示。

用户团购信息管理注册登录 团购功 能团购订单管理图2-3 用户的功能图

4

北华航天工业学院毕业论文

2.4商户户功能模块

商户:登陆、查询团购券。商户的功能图如图2-4所示。

商户登订商录单品注管管册理理 图2-4 商户的功能图

2.5软件环境

本次毕业设计的使用的软件环境如表2-1所示。

表2-1毕业设计使用的软件环境

名称 版本 语种 操作系统 Windows7 旗舰版 简体中文

数据库平台 MySql 5.0.45 简体中文 服务器 Tomcat 6.0 英文 邮件系统 IE 6.0 简体中文

开发工具 MyEclipse 8.5 英文

5

北华航天工业学院毕业论文

2.6系统业务描述

本程序主要分系统管理员和用户两个权限。管理员:团购订单管理,团购管理,注册用户管理和团购类型管理。用户:团购信息管理,注册登录,团购登录,团购功能和团购订单管理,商户:商户登陆、查询团购券,用例图如图2-5所示。

图2-5 系统总体用例图

6

北华航天工业学院毕业论文

第3章 总体设计

本系统地主要功能是实现网络团购的主要功能,包括管理员、用户、商户的登陆、商品分类的添加、商品的添加、用户的注册、商品的搜索等主要功能。

3.1 JSP技术与MVC模式以及系统的基本框架

本系统采用Jsp技术,基于MVC模式开发,使用SSH框架(Struts2、Spring、Hibernate)来增加系统的开发速度。所谓的MVC模式是“Model-View-Controller”的缩写,中文翻译为“模式-视图-控制器”。程序就是用Struts2和Hibernate这两个框架来实现模型层和控制器这两层,Jsp实现视图这一层。一般来说程序就是在数据库和页面之间起桥梁作用的,Jsp页面请求先到Action,再到Dao,再回到Action,回到Jsp页面,Action主要处理来自页面的请求,Dao主要是和数据库的交互,Struts2主要用在Action,处理来自页面的请求,处理完请求后跳转回页面。Hibernate主要用在Dao,包括对数据库的增、删、改、查的操作,Spring控制程序的流程。MVC其原理图如图3-1所示。

图3- 1 MVC模式结构

3.2 SSH框架的优点

SSH框架是J2EE应用中Struts2+Spring+Hibernate三大免费开源框架的结合使用, 它可以看成工具,也是中间件。他是用来提高我们的开发效率,提高我们软件产品的可维护性、可扩展性乃至敏捷性的。他们里面有很多优秀的设计理念及模式应用。比如,Struts属于

7

北华航天工业学院毕业论文

MVC框架,关键是要了解MVC的概念及大致原理;而Hibernate属于ORM系统,属于持久层的解决方案,同样需要对ORM的概念及原理有一个总体的了解。而Spring属于应用程序框架,其核心是IOC容器以及AOP,Spring中还集成了很多适用东西,比如对JDBC的封装、自己的MVC、对动态语言的简洁访问等,它由以下3个框架构成:

1.Struts2框架

Struts2是Apache组织的一个开放源码项目。Struts2是一个比较好的MVC框架,提供了对开发MVC系统的底层支持,它采用的主要技术是Servlet,JSP和Custom tag library。其基本构成如图3-2所示。

图3- 2 Struts2框架工作流程

2. Spring框架

Spring 的核心是个轻量级(Lightweight)的容器(Container),它是实现IoC(Inversion of Control)容器、非侵入性(No intrusive)的框架,并提供AOP(Aspect-oriented programming)概念的实现方式,提供对持久层(Persistence)、事务(Transaction)的支持,提供MVC Web 框架的实现,并对一些常用的企业服务API(Application Interface)提供一致的模型封装,是一个全方位的应用程序框架(Application framework),除此之外,对于现存的各种框架(Struts、JSF、Hibernate 等),Spring 也提供了与它们相整合的方案。Spring框架由以下7个部分组成,Spring框架构成图如图3-3所示。

8

北华航天工业学院毕业论文

图3-3 Spring框架构成

3.Hibernate框架

Hibernate 是一个开放源码的 ORM 持久层框架。作为优秀的持久层框架实现,Hibernate 框架提供了强大、高性能的对象到关系型数据库的持久化服务,开发人员可以使用面向对象的设计进行持久层开发。简单的说,Hibernate 只是一个将持久化类与数据库表相映射的工具,每个持久化类实例均对应于数据库表中的一个数据行而已。用户只需直接使用面向对象的方法操作此持久化类实例,即可完成对数据库表数据的插入、删除、修改、读取等操作。Hibernate构成框架图如图3-4所示。

图3- 4 Hibernate框架

9

北华航天工业学院毕业论文

3.3关键技术

3.3.1分页技术的实现

对于分页通过定义适合自己使用的分页类,然后通过更新数据库来对实际的数据进行分页操作,可以设置每页显示的数量当小于或等于每页显示数量时分页不会显示。

public class Pager {

//标准列表分页,用于后台

public static String getPagerNormal(int total, int pagesize, int pagenum,String pageurl,String info) { int count = total / pagesize; if (total % pagesize > 0) {

count++;}

if(pageurl.indexOf(\

pageurl = pageurl + \

}else{

pageurl = pageurl + \

StringBuffer buf = new StringBuffer(); buf.append(info+\

buf.append(pagenum+\

if (pagenum == 1) {

buf.append(\【首页】【上一页】  \

} else {

buf.append(\【】【】\

}

int bound1 = ((pagenum - 2) <= 0) ? 1 : (pagenum - 2); int bound2 = ((pagenum + 2) >= count) ? count : (pagenum + 2); for (int i = bound1; i <= bound2; i++) {

if (i == pagenum) {

buf.append(\ } else { buf.append(\

+ \

}}

10

北华航天工业学院毕业论文

if (bound2 < count) { }

if (pagenum == count||count==0) {

buf.append(\【下一页】【尾页】\

} else { }

return buf.toString();

}}

buf.append(\【

+ \下一页】【】\

buf.append(\

3.3.2密码加密技术

通过Md5加密方式将注册时的密码进行加密,登录时将输入的密码再进行加密比较通过则登陆成功,主要代码如下。

public class Md5Code {

public static String createMd5(String code) throws Exception {

}

MessageDigest messageDigest = MessageDigest.getInstance(\byte[] b=messageDigest.digest(code.getBytes()); BASE64Encoder encoder= new BASE64Encoder(); return encoder.encode(b);

public static void main(String[] args) throws Exception {

}

}

System.out.println(Md5Code.createMd5(\

11

北华航天工业学院毕业论文

第4章 系统详细设计与实现

4.1系统和数据库的配置

系统按通用的B/S(浏览器、服务器)模式进行设计,B/S结构如图4-1所示。

图4-1 B/S结构图

数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。

4.2数据库逻辑模型

订单表(主键、下订单时间、是否删除标志、关联的团购ID、关联的用户ID) 类型表(主键、是否删标志、类型名字)

团购表(主键、添加时间、到期时间、点击人数、价格、简介、图片路径、标题、是否删除标志、团购人数、关联的类型ID)

用户表(主键、地址、添加时间、邮箱、密码、联系电话、QQ、用户权限、真实姓名、是否删除标志、用户名)

4.3概念模型设计

概念模型设计的典型方法是用E-R图方法,即用实体-联系模型表示。E-R方法是用E-R图来描述显示世界,E-R图包含三个基本成分:实体、联系、属性。它直观易懂,能够比较准确地反映现实世界的信息联系,从概念上表示一个数据库的信息组织情况。

本系统E-R图如图4-2所示。

12

北华航天工业学院毕业论文

商品评论n评论内容用户名E-Mail1添加生产厂家图片数量到期时间上架时间商家名称联系方式公司地址密码用户联系方式1地址生成1nnn购买n商品n管理1商户n密码1公司别名管理管理11订单添加登录名商品信息用户信息收货信息管理员1密码查看管nnn建议内容

图4-2本系统的E-R图

4.4数据库表结构

(1)t_order(订单表)的表单结构如表4-1所示。

表4-1订单表(t_order) 名称 id createtime orderlock tuangtouid userid flagonly 类型 bigint(20) datetime int(11) bigint(20) bigint(20) Varchar2 no yes no yes yes no 空 主键 下订单时间 是否删除标志 关联的团购ID 关联的用户ID 订单编号 (2) t_leixing(类型表)的表单结构如表4-2所示。

表4-2类型表(t_leixing)

13

添加理备注 北华航天工业学院毕业论文

名称 类型 空 备注 id bigint(20) no 主键 leixinglock int(11) no 是否删除标志 name varchar(255) yes 类型名字 (3)t_tuangou(团购表)的表单结构如表4-3所示。

表4-3团购表(t_tuangou)

名称 类型 空 备注 id bigint(20) no 主键 createtime datetime yes 添加时间 daoqishijian varchar(255) yes 到期时间 dianjirenshu int(11) no 点击人数 jiage varchar(255) yes 价格 jianjie varchar(255) yes 简介 path varchar(255) yes 图片路径 title varchar(255) yes 标题 tuangoulock int(11) no 是否删除标志 tuangourenshu int(11) no 团购人数 leixingid bigint(20) yes 关联的类型ID (4) t_user(用户表)的表单结构如表4-4所示。

表4-4类型表(t_user)

名称 类型 空 备注 id bigint(20) no 主键 address varchar(255) yes 地址 createtime datetime yes 添加时间 email varchar(255) yes 邮箱 password varchar(255) yes 密码 phone varchar(255) yes 联系电话 qq varchar(255) yes QQ 14

北华航天工业学院毕业论文

role truename userlock username int(11) varchar(255) int(11) varchar(255) no yes no yes 用户权限 真实姓名 是否删除标志 用户名 (5) t_liuyan(留言表)的表单结构如表4-4所示。

表4-5留言表(t_user)

名称 id title liuyantime content userid bigint(20) 类型 no yes yes yes yes 空 主键 留言标题 添加时间 留言内容 用户编号 备注 varchar(255) datetime varchar(255) varchar(255) (6) t_pingjia(评价表)的表单结构如表4-4所示。

表4-5评价表(t_user)

名称 id orderid pingjiaflag pingjiacontent bigint(20) bigint(20) datetime 类型 no yes yes yes 空 主键 备注 订单编号(外键) 评价标志 评价内容 varchar(255) 4.5平台数据表的设计

根据平台的需求分析和功能模块的划分,所涉及的实体有用户,订单,类型,团购。因此系统的定义数据库主要包含4张表:订单表t_order, 类型表t_leixing, 团购表t_tuangou, 用户表t_user。这几张表的平台数据表的设计如下。

订单表t_order如图4-3所示。

15

北华航天工业学院毕业论文

图4-3订单表t_order

创建该表的sql语句如下。

CREATE TABLE `t_order` (

`id` bigint(20) NOT NULL auto_increment, `createtime` datetime default NULL, `orderlock` int(11) NOT NULL, `tuangouid` bigint(20) default NULL, `userid` bigint(20) default NULL,

flagonly varchar2 not null,

PRIMARY KEY (`id`),

KEY `FK9EFDD3A387F9F00F` (`tuangouid`), KEY `FK9EFDD3A3A3C379BB` (`userid`),

CONSTRAINT `FK9EFDD3A3A3C379BB` FOREIGN KEY (`userid`) REFERENCES `t_user`

(`id`),

CONSTRAINT `FK9EFDD3A387F9F00F` FOREIGN KEY (`tuangouid`) REFERENCES `t_tuangou` (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

类型表t_leixing的平台设计如图4-4所示。

图4-4订单表t_ leixing

类型表的表单创建语句如下。

CREATE TABLE `t_leixing` (

`id` bigint(20) NOT NULL auto_increment, `leixinglock` int(11) NOT NULL, `name` varchar(255) default NULL, PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

16

北华航天工业学院毕业论文

团购表t_tuangou的平台数据表设计如图4-5所示。

图4-5订单表t_tuangou

团购表的创建表的sql语句如下。

CREATE TABLE `t_tuangou` (

`id` bigint(20) NOT NULL auto_increment, `createtime` datetime default NULL, `daoqishijian` varchar(255) default NULL, `dianjirenshu` int(11) NOT NULL, `jiage` varchar(255) default NULL, `jianjie` varchar(255) default NULL, `path` varchar(255) default NULL, `title` varchar(255) default NULL, `tuangoulock` int(11) NOT NULL, `tuangourenshu` int(11) NOT NULL, `leixingid` bigint(20) default NULL, PRIMARY KEY (`id`),

KEY `FKE44EDE745E176B85` (`leixingid`),

CONSTRAINT `FKE44EDE745E176B85` FOREIGN KEY (`leixingid`) REFERENCES `t_leixing` (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

用户表t_user 的平台数据库表的设计如图4-6所示。

图4-6订单表t_user

用户表的创建表的语句如下。

17

北华航天工业学院毕业论文

CREATE TABLE `t_user` (

`id` bigint(20) NOT NULL auto_increment, `address` varchar(255) default NULL, `createtime` datetime default NULL, `email` varchar(255) default NULL, `password` varchar(255) default NULL, `phone` varchar(255) default NULL, `qq` varchar(255) default NULL, `role` int(11) NOT NULL,

`truename` varchar(255) default NULL, `userlock` int(11) NOT NULL, `username` varchar(255) default NULL, PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

用户表t_liuyan 的平台数据库表的设计如图4-7所示。

图4-7订单表t_liuyan

留言表的创建表的语句如下。

CREATE TABLE `t_liuyan` (

`id` bigint(20) NOT NULL auto_increment, `title` varchar(30) default NULL, `content` text,

`liuyantime` datetime default NULL, `userid` bigint(20) default NULL, PRIMARY KEY (`id`), KEY `userid` (`userid`),

CONSTRAINT `t_liuyn_fk` FOREIGN KEY (`userid`) REFERENCES `t_user` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8;

用户表t_pingjia 的平台数据库表的设计如图4-8所示。

18

北华航天工业学院毕业论文

图4-8评价表t_pingjia

评价表的创建表的语句如下。

CREATE TABLE `t_pingjia` (

`id` int(11) NOT NULL auto_increment, `orderid` bigint(20) default NULL, `pingjiaflag` int(11) default '0', `pingjiacontent` text, PRIMARY KEY (`id`), KEY `orderid` (`orderid`),

CONSTRAINT `t_pingjia_fk` FOREIGN KEY (`orderid`) REFERENCES `t_order` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;

19

北华航天工业学院毕业论文

第5章 系统功能实现

5.1程序的类图

根据程序的需求的需要,特设计类图便于查看类型,同时可以使用类图直接生成实体类,以下是本系统涉及到的类的类图。

5.1.1订单Order类图

订单的类图如图5-1所示。

图5-1订单Order类图

对应的实体类的程序代码如下。

public class Order implements Serializable{ private long id;

private int orderlock;

private Tuangou tuangou;

private User user; private Date createtime; private String flagonly;

}

5.1.2类型Leixing类图

类型的类图如图5-2所示。

图5-2类型Leixing类图

类型的实体类对应的程序代码如下。

20

北华航天工业学院毕业论文

public class Leixing implements Serializable{ private static final long serialVersionUID = -7141419035239709511L; private long id;

private String name;

private int leixinglock;

}

5.1.3团购信息Tuangou类图

团购信息的类图如图5-3所示。

图5-3团购信息Tuangou类图

团购信息的实体类对应的程序代码如下。

public class Tuangou implements Serializable{ private long id;

private int tuangoulock; private Leixing leixing; private String title; private String jianjie;

private String path; private String jiage;

private String daoqishijian;//到期时间 private Date createtime;

private int tuangourenshu;//团购人数 private int dianjirenshu;//点击人数

}

21

北华航天工业学院毕业论文

5.1.4用户User类图

用户信息的类图如图5-4所示。

图5-4用户User类图

用户信息的实体类对应的代码如下。

public class User implements Serializable{ private long id; private String username; private String password; private Date createtime; private String truename;

private int role;//1表示管理员,0表示用户 private int userlock;

private String address; private String phone; private String email;

private String qq;

}

5.1.5留言Liuyan类图

用户信息的类图如图5-4所示。

22

北华航天工业学院毕业论文 图5-5留言Liuyan类图

用户信息的实体类对应的代码如下。

public class Liuyan implements Serializable{ private static final long serialVersionUID = -7141419035239709511L; private long id;

private String title; private Date liuyantime; private String content; private User user;

}

5.1.6评价Pingjia类图

用户信息的类图如图5-4所示。

图5-6评价Pingjia类图

用户信息的实体类对应的代码如下。

public class Pingjia implements Serializable{ private static final long serialVersionUID = -7141419035239709511L; private int id;

private String pingjiacontent; private int pingjiaflag; private Order order;

}

23

北华航天工业学院毕业论文

5.2程序的流程图

根据程序的需要,特设计流程图便于了解整个抽象行为的具体过程,以下是个主要模块的流程图的设计。

5.2.1 订单模块程序流程图

订单模块的程序的流程图如图5-5所示。

图5-5订单模块程序流程图

24

北华航天工业学院毕业论文

5.3系统功能实现的主要框架

5.3.1 SSH框架的使用以及各自的配置

SSH框架就是struts2,spring,hibernate的简称,运用3个框架的集成协作使用,可以有效的提高代码编写的效率,从而有效的降低程序开发的周期。

5.3.2 hibernate配置文件

jdbc:mysql://localhost:3306/tellgo?autoReconnect=true&useUnicode=true&ch aracterEncoding=utf-8

这是Hibernate的配置文件,在该文件中

首先加载了连接池的一个配置,就是加载了数据库的连接信息,

25

北华航天工业学院毕业论文

表示控制台打印SQL语句,并格式化SQL语句

都表示当前数据库建立起来的表和类之间的映射关系,比如

表示User类和t_user表之间的建立起来的对应关系,其他也都类似

5.3.3 struts配置文件

这是struts的配置文件,该文件的作用主要起到来自JSP的请求的跳转分配的作用。该struts配置文件是总的配置文件。

5.3.4spring配置文件

Spring 在本项目中主要用到了IOC的功能,就是把对象实例化

26

北华航天工业学院毕业论文

本段代码是把DAO实例化的代码,通过spring的IOC模式

本段代码是把ManageAction实例化的代码,原理也是spring的IOC模式。

5.4系统功能实现的主要模块

5.4.1 登陆页面

本系统用户登录的实现界面如图5-6所示。

图5-6 登陆页面

27

北华航天工业学院毕业论文

登陆界面实现的主要代码如下。

//用户登录操作

public void login2() throws IOException{

HttpServletRequest request = ServletActionContext.getRequest();//获取request对象 HttpServletResponse response = ServletActionContext.getResponse();//获取response对象 String username = request.getParameter(\String password = request.getParameter(\

User u = userDao.selectBean(\

and userlock=0\根据用户名和密码去数据库中查找对象

if(u==null){ //验证用户是否存在

response.setCharacterEncoding(\response.getWriter().print(

\用户名或者密码错误!'); window.location.href='login.jsp';\

}else{

HttpSession session = request.getSession(); session.setAttribute(\response.setCharacterEncoding(\response.getWriter().print(

\登录成功!');

window.location.href='index';\);

}}

本段代码是程序的登陆代码,首先从获取从页面输入的用户名和密码,然后调用userDao.selectBean方法,从数据库里取出该条记录进行判断,如果该条记录存在,则说明用户登陆成功,同时把用户信息存在session里面方便调用,如果记录为空,则跳转到登陆页面,同时提醒用户错误信息。

5.4.2 用户注册页面

本系统的用户注册页面如图5-7所示。

28

北华航天工业学院毕业论文

图5-7 注册页面

本系统用户注册代码如下。

//用户注册操作

public void register() throws Exception{ HttpServletRequest request = ServletActionContext.getRequest(); HttpServletResponse response = ServletActionContext.getResponse();

User user = new User();

user.setUsername(java.net.URLDecoder.decode(request.getParameter(\ \

user.setPassword(request.getParameter(\

user.setTruename(java.net.URLDecoder.decode(request.getParameter(\ user.setAddress(java.net.URLDecoder.decode(request.getParameter(\

user.setPhone(java.net.URLDecoder.decode(request.getParameter(\ user.setEmail(java.net.URLDecoder.decode(request.getParameter(\

user.setQq(java.net.URLDecoder.decode(request.getParameter(\

user.setCreatetime(new Date());

//以上代码使用request获取注册信息

User u = userDao.selectBean(\ if(u==null){

//如果注册的用户名数据库中不存在则注册成功

userDao.insertBean(user);

response.setCharacterEncoding(\

response.getWriter().write(\注册新用户成功!您的用户名\

user.getUsername()+\请妥善保管!\

29

北华航天工业学院毕业论文

}

}else{ }

response.setCharacterEncoding(\

response.getWriter().write(\该用户名已经存在,请重新注册!\

本段代码是程序的注册代码,首先从获取从页面获取注册的信息,同时新建一个User对象,把从页面获取的信息都写在USER对象里面。同时在插入到数据库之前先调用userDao.selectBean(\方法,验证下该用户名在数据库中是否存在,如果不存在,则调用userDao.insertBean(bean);方法,把该条记录写入数据库,如果该条记录存在,则返回到注册页面,同时提醒用户该用户已经注册,请重新注册!

5.4.3 网站主页面

本系统的网站主页面如图5-8所示。

图5-8 网站主页面

本系统主页面主要代码如下:

//程序登入界面

public String index() {

HttpServletRequest request = ServletActionContext.getRequest(); if (request.getSession().getAttribute(\

//是否有用户已经登录显示的导航

//栏不同

return \

30

北华航天工业学院毕业论文

}

} else { }

return \

//首页

public String index() {

HttpServletRequest request = ServletActionContext.getRequest(); //获取类型列表

request.setAttribute(\ leixinglock=0\ String leixing = request.getParameter(\

//获取类型用于类型查询

//获得关键字查询商品信息

String keyword = request.getParameter(\ StringBuffer sb = new StringBuffer(); sb.append(\ \

if(leixing!=null&&!\ }

sb.append(\sb.append(\

//按类型查询商品信息

if(keyword!=null&&!\ }

sb.append(\sb.append(\

//按关键字搜索商品

sb.append(\ \

String paixu = request.getParameter(\if(\

//获得排序方法

sb.append(\

}else{ }

sb.append(\

//以下代码用于商品的分页显示 String where = sb.toString(); int currentpage = 1; int pagesize = 9;

if(request.getParameter(\

currentpage= Integer.parseInt(request.getParameter(\

31

北华航天工业学院毕业论文

}

int total = tuangouDao.selectBeanCount(\

List list = tuangouDao.selectBeanList((currentpage - 1) //页面商品展示

* pagesize, pagesize, where);

//以下代码让主页面显示8条商品数据

if(list.size()>0)

request.setAttribute(\

if(list.size()>1)

request.setAttribute(\

if(list.size()>2)

request.setAttribute(\

if(list.size()>3)

request.setAttribute(\

if(list.size()>4)

request.setAttribute(\

if(list.size()>5)

request.setAttribute(\

if(list.size()>6)

request.setAttribute(\

if(list.size()>7)

request.setAttribute(\

if(list.size()>8)

request.setAttribute(\

//将商品的计数信息用request传给页面

request.setAttribute(\

request.setAttribute(\共

有\条记录\

}

this.setUrl(\return SUCCESS;

//商品分页显示

本段代码是网站主页面的代码,首先通过

String leixing = request.getParameter(\ String keyword = request.getParameter(\

这两句代码从页面获取查询的选项,,然后通过

if(leixing!=null&&!\, if(keyword!=null&&!\

32

北华航天工业学院毕业论文

这两句条件语句分别判断下这个值是否为空,当不为空时则通过StingBuffer 来叠加组装查询的sql语句,最后当sql语句组装好了之后,通过tuangouDao.selectBeanList方法来调用数据库的查询方法来查到符合条件的记录,在通过request.setAttribute方法把查询到的记录传到显示的页面。同时通过this.setUrl(\方法指定传回到具体指定的是哪个JSP页面。

5.4.4 类型管理主页面

本系统的类型管理主页面如图5-9所示。

图5-9 类型管理主页面

本系统类型管理主页面主要代码如下:

//类型列表

public String leixinglist() {

HttpServletRequest request = ServletActionContext.getRequest(); String name = request.getParameter(\StringBuffer sb = new StringBuffer(); sb.append(\

StringBuffer sb2 = new StringBuffer(); sb2.append(\

if(name!=null&&!\ }

sb.append(\

33

sb.append(\sb.append(\

sb2.append(\sb2.append(\

request.setAttribute(\

北华航天工业学院毕业论文

where));

}

request.setAttribute(\

currentpage, \共有\条记录\

String where = sb.toString(); sb2.append(\String where2 = sb2.toString(); int currentpage = 1; int pagesize =10;

if(request.getParameter(\ }

int total = leixingDao.selectBeanCount(where2);

request.setAttribute(\

currentpage = Integer.parseInt(request.getParameter(\

this.setUrl(\return SUCCESS;

首先通过

String name = request.getParameter(\

这句代码从页面获取查询的选项,,然后通过if(name!=null&&!\这句条件语句分别判断下这个值是否为空,当不为空时则通过StingBuffer 来叠加组装查询的sql语句,最后当sql语句组装好了之后,通过leixingDao.selectBeanList方法来调用数据库的查询方法来查到符合条件的记录,在通过request.setAttribute方法把查询到的记录传到显示的页面。同时通过this.setUrl(\方法指定传回到具体指定的是哪个JSP页面。通过这样实现对数据查询功能的实现,同时在该类型列表页面定义了对类型信息的增加,修改,删除等操作。

5.4.5 团购列表管理

本系统的团购列表管理主页面如图5-10所示。

34

本文来源:https://www.bwwdw.com/article/nnp7.html

Top