资源描述
本科生毕业设计
基于WEB的大学跳蚤市场的设计与实现
DESIGN AND IMPLEMENTATION OF UNIVERSITIES’ FLEA MARKET BASED ON WEB
目 录
摘 要: 1
关 键 词: 1
1 前言 2
1.1 研究背景及意义 2
1.2 国内外研究现状 2
1.3 可行性分析 3
1.3.1 经济可行性 3
1.4 本设计所用技术的简介 3
1.4.1 MVC设计模式概述 3
1.4.2 常见web开发语言mvc框架 6
1.4.3 本设计实现mvc的技术 6
2 系统需求分析 6
2.1 需求调研 6
2.2 业务流程分析 7
2.3 系统数据流图 7
2.4 系统功能需求分析 8
2.4.1 功能划分 8
2.4.2 功能描述 9
3 系统设计 10
3.1 系统总体结构设计 10
3.2 数据库表的设计 10
3.3 系统开发与运行环境确定 12
3.3.1 系统开发环境 12
3.3.2 系统运行环境 12
3.4 系统实现的若干关键技术 13
3.4.1 jsp与tomcat技术 13
3.4.2 JDBC简介 13
4 详细设计 14
4.1 系统登录模块模块简介 14
4.2 模块体系结构 15
4.3 运行图 15
4.4 设计说明 16
4.4.1 新用户注册子模块 17
4.4.2 用户登录子模块 18
4.4.3 商品发布模块 19
4.4.4 商品搜索模块 20
4.4.5 查看商品详细信息模块 22
4.4.6 管理员管理模块 24
5 测试 29
6 总结 29
参考文献 29
致 谢 31
基于web的大学跳蚤市场的设计与实现
学 生:樊子彬
指导老师:周小云
(湖南农业大学信息科学技术学院,长沙 410128)
摘 要:随着Internet的使用越来越广泛,网络跳蚤市场已成为很多大学生进行物品交易的一个平台。它为供需双方提供了极为便利的二手物品信息交流,特别是对于广大青年学生,这种经济型消费模式更是受到推崇。本设计遵循了模块化设计的原则,将一个完整的大学生购物网站分解为各个模块,然后逐一实现各个模块的功能,最后把各个模块组装到一起构成了一个完整的二手购物网站。本系统采用MVC的设计模式进行设计,用jsp+servlet+JavaBean的开发方式来实现此模式, 以MyEclipse作为主要的开发工具,很好的实现了一个购物网站基本的功能,很好地体现了MVC设计模式的思想。
关 键 词:购物网站;MVC;MyEclipse
DESIGN AND IMPLEMENTATION OF UNIVERSITIES’ FLEA MARKET BASED ON WEB
Student: Fan Zibin
Tutor: Zhou Xiaoyun
(College of Information Science and Technology, Hunan Agricultural University, Changsha 410128,China)
Abstract: As the Internet used more widely,the network flea market has become a platform of trading goods for many college student. It provides a very convenient platform for both supply and demand to exchange of information, especially for the young students, this economic model is admired.This design follows the principles of modular design. The shopping site break down into various modules and then one by one to achieve the functions of each module, and finally to assemble the modules together constitute a complete second-hand shopping site.The system uses the MVC designing pattern to design.The jsp + servlet + JavaBean are developed to implement this model by MyEclipse as a major development tool.This system is a good shopping site implementing the basic functions of a shopping site, embodies the principles of MVC design pattern idea.
Keywords:shopping site;MVC;MyEclipse
1 前言
1.1 研究背景及意义
随着Internet的使用越来越广泛,网络跳蚤市场已成为很多大学生进行交易的一个平台。它为供需双方提供了极为便利的二手物品信息交流,特别是对于广大青年学生,这种经济型消费模式更是受到推崇。
随着大学生的毕业,他们手中有很多有价值的东西,但对于他们来说已经失去了利用价值,但直接丢掉有很可惜,所以又很大一部分人将之出售,以得到资金;而一些在校大学生有相当一部分人,经济能力相对较差,但他们也要购买一些物品,所以二手货就成了他们的首选。所以二手商品交易对出售者和购买者都有积极的意义。
随着网路的发展,上网的人越来越多,上网的条件也越来越方便,学生就是一个上网的主要群体。网络作为信息交换的媒介,越来越多的人已经能够接受并且习惯从网上搜索信息,因为网络有其足不出户,却可以方便的得知大量信息的优点。在现在这个推崇时间和效益的社会里,它的优点越来越得到体现,坐在电脑前点击鼠标、敲击键盘,就能获得自己所想要的信息资源。所以在网络上进行二手交易是提高信息资源利用率和交易效率的有力途径。基于这个目的而做的二手商品交易网站,就是给网络上的二手商品交易提供一个载体,使之有规则、有条理地集中在一起,方便交易双方的信息发布和信息查看。所以二手商品交易网站对网络二手交易有积极的影响。
网站的设计和规划现在国内外已经作为进行宣传和交易的主流方式。发展情况一日千里。而且不同的网站有各自不同的特色和功能。尤其在页面设置上正在简单化、条理化,实现的功能不断增加。
随着网络的普及和电子银行服务的完善。使人们不用出门就能以低廉的价格买到需要的物品。给现代忙碌的人节省时间和金钱。随着网络技术的发展,用户可以在成千上万的商品中通过收索功能轻松的找到自己想要的商品,并且能货比三家。开发此系统的目的和意义就在于花费很少的时间和金钱就能买到需要的,质量好的商品。
1.2 国内外研究现状
近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并进入传统的流通领域.于是电子商务开始流行起来,一种全新的购物理念开始形成并逐步发展.网上购物是一种具有交互功能的商业信息系统.它向用户提供静态和动态两类信息资源.
自2003年上半年以来,沉寂了多年的中国互联网产业正以强劲的势头复苏并发展起来,除了传统的浏览,资料搜索,电子邮件等基本应用外,国内网民已经开始习惯通过网络接受商务,旅游,购物,通讯,娱乐等服务,根据中国互联网信息中心最近提供的《中国互联网络发展状况统计报告》调查显示,网上购物已经由以前的尝试性购买向日常的生活习惯发展,其中以书籍,计算机产品,音像制品及器材等为网上购物的主要对象,服装,体育用品,生活家居用品等消费额也开始大幅度提高。
1.3 可行性分析
本系统主要从经济可行性和技术可行性两个角度对其可行性进行分析:
1.3.1 经济可行性
由于本设计是针对当前在校大学生这种消费群体的,当前大学生经济能力有限,而又对时尚、前沿的东西感兴趣,而这些东西更新换代的速度很快,而大学生的消费观念还不很成熟,这样就有可能造成买到的东西过一段时间之后就失去了兴趣,而这自己不用了的东西如果可以出售给需要的人,这就是一种节约型的消费观念。
本设计无需再经济上购买居额设备就可实现,所以在经济上是可行的。
1.3.2 技术可行性
本系统使用jsp作为开发技术,使用目前大多数web应用程序开发的mvc的设计模式,而选用Apache tomcat作为服务器和选用mysql数据库,这都是当前首选的开发web应用程序的最常用的环境。所以在技术上是完全可以胜任这个大学生跳蚤购物网站的。
按上述两方面进行可行性分析、研究后,我们认为该项目在技术上是可行的,
经济上是可合理的,可以进行开发。
1.4 本设计所用技术的简介
1.4.1 MVC设计模式概述
传统web设计模式与mvc设计模式的比较[1]
传统web开发模式基本上分为视图,业务逻辑2层,是水平方向的划分。
MVC模式是物理性的划分为3层,是垂直方向的划分。
图1 传统web开发模式 图2 MVC开发模式
Fig1 The traditional web development model Fig1 MVC development model
MVC架构是"Model-View-Controller"的缩写,中文翻译为"模型-视图-控制器"。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。MVC架构最早是smalltalk语言研究团提出的,应用于用户交互应用程序中[2]。
图3 MVC组件类型的关系和功能
Fig3 The relations and functions of MVC components’type
MVC结构提供了一种按功能对各种对象进行分割的方法,其目的是为了将各对象间的耦合程度减至最小。MVC结构本来是为了将传统的输入(input)、处理(processing)、输出(output)任务运用到图形化用户交互模型中而设计的。但是,将这些概念运用于基于Web的企业级多层应用领域也是很适合的。
在MVC结构中,模型(Model)代表应用程序的数据(data)和用于控制访问和修改这些数据的业务逻辑(business rule)。
当模型发生改变时,它会通知视图(View),并且为视图提供查询模型相关状态的能力。同时,它也为控制器(Controller)提供访问封装在模型内部的应用程序功能的能力。
一个视图(View)用来组织模型的内容。它从模型那里获得数据并指定这些数据如何表现。当模型变化时,视负责维持数据表现的一致性。视图同时将用户要求告知控制器(Controller)。
控制器(Controller)定义了应用程序的行为;它负责对来自视图的用户要求进行解释,并把这些要求映射成相应的行为,这些行为由模型负责实现。在独立运行的GUI客户端,用户要求可能是一些鼠标单击或是菜单选择操作。在一个Web应用程序中,它们的表现形式可能是一些来自客户端的GET或POST的HTTP请求。模型所实现的行为包括处理业务和修改模型的状态。根据用户要求和模型行为的结果,控制器选择一个视作为对用户请求的应答。通常一组相关功能集对应一个控制器。
视图
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XML、WML和Excel。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务逻辑的处理。业务逻辑的处理由模型(Model)完成。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
控制器
控制器(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
模型
模型(Model):就是业务流程/状态的处理以及数据模型的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。模型的设计可以说是MVC最主要的核心。
1.4.2 常见web开发语言mvc框架
• PHP:FleaPHP,CakePHP ,Joomla
• JAVA:Struts ,Spring
• Python:Django ,Quixote
• Ruby:Ruby On Rails[3]
1.4.3 本设计实现mvc的技术
• JSP作为视图,只用于显示
• Servlet作为控制器,所有的请求,跳转都由servlet完成
• 业务逻辑部分由javabean完成
图4 MVC 设计模式
Fig4 MVC Design Pattern
2 系统需求分析
根据上面所定义的课题研究方向及目标,本章将对系统功能进行具体的需求分析,具体分析跳蚤购物网站所要实现的功能及欲达到的效果。
2.1 需求调研
首先从主流的购物网站上面如淘宝网、当当网去看他们的版面设计及功能,同时也在校内同学之间去调查同学们对跳蚤网站的一些所要实现的功能和版面设计。同时也到网上去找一些做得比较适合我做的一些大学生购物网站来学习,并且自己去注册一个帐号,亲自体会他们网站的强大功能然后记录下来。
2.2 业务流程分析
本系统工作流程是:用户用浏览器登录到网站主页,可以查看各个用户所要出售的各种商品,同时可以查看商品的详细信息包括发布商品的人的信息和商品数量和商品状态。同时访问网站的人也可以搜索自己感兴趣的商品。但是只有注册了,才有可能去买商品。同时注册者也可以通过管理员对自己账户充值,类似于支付宝功能。同时管理员可以查询注册用户的详细信息。
具体目标如下:
(1)操作简单、界面友好:用户可以发布、查询商品的各种相关信息,同时可以根据商品的状态来是否购买商品。
(2)即时可见:登录用户可以随时查看自己所购买的商品的数量、价格等方面的信息。
2.3 系统数据流图
本系统主要完成跳蚤网站的浏览与管理的功能,因此,在逻辑上可以将系统分为网站浏览系统和网站管理系统两部分,同时,系统的所有数据都需通过一个数据库系统来实现查询、更新和输入,所以在总体上可将总系统分为网站浏览系统、网站管理系统和数据库系统三个系统,对本系统操作的数据源有普通浏览者、注册用户和管理员三种[4]。
浏览者
网站浏览系统
注册用户
数据库系统
商品管理系统
用户信息
商品信息
站点信息
新用户注册信息
管理员信息
系统信息
用户信息
修改信息
商品信息
管理员
登陆信息
登陆后的管理员
管理员信息
修改用户信息
商品信息
新用户注册信息
登陆信息
图5 系统数据流图
Fig5 System data flow diagram
图6 用户登录数据流
Fig6 The data flow diagram of user login
2.4 系统功能需求分析
2.4.1 功能划分
根据上一节的流程图,把系统划分成两个大的模块来完成:前台模块和后台管理模块。模块划分如表所示。
表1 模块及功能
Table1 Modules and function
序号
功能模块类别
功能模块
备注
1
前台模块
查看物品功能块
物品分类列表功能块
物品搜索模块
物品发布模块
注册功能块
登陆功能块
公共模块
显示所有物品信息
2
用户管理模块
用户信息管理功能块
用户金额管理功能块
3
系统管理模块
用户管理模块
2.4.2 功能描述
表2前台功能列表
Table2 The function list of front modules
序号
功能列表
功能明细
1
首页
用户登录功能块
用户注册功能块
商品搜索功能块
商品发布功能块
商品分类目录块
2
用户登录功能块
登录用户
3
用户注册功能块
用户注册
4
商品搜索功能块
可以按商品类别搜索商品
5
商品发布功能块
登录的用户可以发布自己想要出售的商品
6
商品分类目录块
可以查看所有用户的商品的详细信息,并且可以分类查看
表3用户管理模块
Table3 The user management modules
序号
功能列表
功能明细
1
用户信息管理功能块
管理员可以查看各个用户的详细信息,并且可以删除用户
2
用户金额管理功能块
管理员可以为每个用户充值
3 系统设计
3.1 系统总体结构设计
本系统主要包括三大模块组成:网站访问者模块、用户模块、系统管理员模块[5]。
整个系统的结构框架如下图所示
图7 结构框架
Table7 Structural framework
3.2 数据库表的设计
数据库设计是项目开发中的系统设计中非常重要的另一个关键环节,在这里之所以特别强调数据库设计的重要性,是因为数据库设计就像在建设高楼大厦的根基一样,如果设计不好,在后来的系统维护、变更和功能扩充时,甚至在系统开发过程中,将会引起比较大的问题,会遇到非常大的困难,大量的工作将会重新进行[6]。
(1) 数据库表及表之间的相互关系
本系统需要设计的数据库表如下
表4数据库表
Table4 Database table
序 号
数据库表
数据库表存储内容
1
tb_member
存储用户基本信息
2
tb_manager
存储管理员账号和密码
3
tb_goods
存储商品的基本信息
4
tb_order
存储订单信息
(2) 数据库表结构的详细设计
下面开始对上一节列出的数据表逐一做出详细说明。
表5 用户基本信息表tb_member
Table5 User basic information table tb_member
序号
字段名
字段类型
说明
备注
1
userID
int
用户编码
主键
2
userName
Varchar
登录名
惟一
3
truename
Varchar
真实名称
4
password
Varchar
用户密码
5
address
Varchar
住址
6
mobileTel
Varchar
联系电话
不为空
7
qq
Varchar
qq号码
8
email
Varchar
邮箱地址
9
schoolName
Varchar
学校名称
10
xuehao
Varchar
学号
11
idCard
Varchar
身份证号码
12
description
Varchar
个人描述
13
money
int
账户余额
表6 管理员基本信息表tb_manager
Table6 Administrator basic information table tb_member
序号
字段名
字段类型
说明
备注
1
manager
Varchar
管理员账号
主键
2
PWD
Varchar
密码
表7 商品信息表tb_goods
Table7 Goods information table tb_goods
序号
字段名
字段类型
说明
备注
1
userID
int
发布者账号
2
goods_id
int
商品编号
主键(自动生成)
3
product_type_id
Varchar
商品类别编号
4
goods_name
Varchar
商品名称
5
introduce
Varchar
商品介绍
6
price
Varchar
价格
7
exchangeaddress
Varchar
交换地点
8
number
Varchar
数量
9
method
Varchar
支付方法
10
state
Varchar
物品状态
11
goodshownew
Varchar
商品新旧
表8 商品订单表tb_order
Table8 Goods order table tb_order
序号
字段名
字段类型
说明
备注
1
orderID
int
订单编号
主键
2
buyerID
Varchar
购买者账号
3
goods_id
Varchar
商品编号
3.3 系统开发与运行环境确定
3.3.1 系统开发环境
开发工具对一个系统的成败具有决定性作用。由于本系统是应用于网络的,因此,我们选择了jsp技术进行开发,用MVC的设计模式,用jsp+servlet+JavaBean来实现MVC设计模式;同时,选用mysql作为系统后台数据库,开发中将用到以下主要几款开发工具[7]:
表9 开发工具及用途
Table9 Tools and application
开发工具名称
软件用途
Microsoft visio 2003
画图
Mysql
建立系统的后台数据库
MyEclipse
主要的代码开发工具
3.3.2 系统运行环境
硬件环境:
服务器端: 推荐配置为512M内存,CPU为Intel Pentium Ⅳ 1700MHZ,硬盘容量为80G的微机[8]。
通信网络: Internet网
软件环境:
服务器端:
(1) 操作系统: Windows 2000 Server /NT/2003 Server/XP
(2) 数据库: mysql5.1
(3) Web服务器:Apache tomcat5.5
客户端:
(1) 操作系统: Windows 2000/XP/2003/Vista/7
(2) 浏览器: Internet Explore 6.0或以上版本
(3) 推荐分辨率:1024*768或以上
3.4 系统实现的若干关键技术
3.4.1 jsp与tomcat技术
Tomcat简介
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。目前最新版本是6.0。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选[9]。
Tomcat与JSP的结合
在过去,客户机/服务器结构的设计与Web的相关技术几乎处于平行线上,两者相互独立并无法作出集成性的设计。现在我们利用tomcat+JSP构成三层式Web结构的中间一层,将客户机/服务器结构与Web密切结合,完成前后端两者的集成输出功能,使得Web站点的开发更方便,实现的功能更强大。
利用tomcat+JSP技术来集成Web前后端所带来的强大效益可归结为以下几个方面:
减少构建和维护成本
加快联机过程
应用软件集中在服务器端开发管理
前端可使用任何浏览器(IE、Netscape…..)
后端可存取任何数据库 (SQL、Access、mysql、Oracle…..)
可使用任何脚本语言开发 (VBScript、JavaScript、PERL…..)
3.4.2 JDBC简介
JDBC(Java DataBase Connectivity,Java数据库连接):是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成[10]。
(1) 支持基本的SQL语句,在 Java程序中实现数据库操作功能并简化操作过程。
(2) 提供多样化的数据库连接方法。
(3) 为各种不同的数据库提供统一的操作界面。
用JDBC连接数据库的步骤
(1) 注册驱动
Class.forName(“com..mysql.jdbc.Driver”);(注册mysql数据库的驱动)
(2) 建立连接
Connection conn=DriverManager.getConnection(url,user,password);
(3) 创建执行的sql语句
Statement st=conn.createStatement();
(4) 执行语句
ResultSet rs=st.executeQuery(“sql语句”);
(5) 处理结果
(6) 释放资源
对于数据库来说,每一次连接数据库都要耗费大量资源,所以当我们用完的时候要调用close方法及时释放资源[11]。
4 详细设计
4.1 系统登录模块模块简介
该模块是本系统的重要模块,当浏览器访问该购物网站的时候,用户可以通过登录模块来登录系统服务器,可以查看自己的购物记录、发布商品信息和购买商品。如果登录者没有注册用户,那么可以通过注册一个用户来进行上面的操作。管理员需提交用户名和密码,之后进入管理页面。
4.2 模块体系结构
系统登陆模块
新会员注册
进入用户页面
管理员登陆
登陆成功
注册会员登陆
注册成功
填写注册资料
登陆系统管理页面
图8 系统登陆模块图
Fig8 The system login map
4.3 运行图
4.4 设计说明
在使用servlet时,要在用户web应用程序/WEB-INF/web.xml中配置相关信息。
<servlet>
<servlet-name>servlet名称</servlet-name>
<servlet-class>servlet所生成的java类文件的存储地址</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> servlet名称</servlet-name>
<url-pattern>访问servlet的路径</url-pattern>
</servlet-mapping>
4.4.1 新用户注册子模块
用户注册,首先要检查的就是用户填写的信息,其中包括:
1. 电话号码字段是否空白,若空白则不接受。
2. 输入的E-mail格式是否正确,有没有@和”.”符号。
3. 两次输入的密码是否一致。
这个模块的实现主要是在JavaScript中用document.form来获取form中各个变量的值,然后去判断各个值是否符合要求。同时在form中设置onsubmit属性为真时,则注册,否则注册不成功[12]。
<form name="form1" method="post" action="UserRegistryServlet"
onsubmit="return checkValue();">
在JavaScript中写如下代码:
function checkValue(){
var password1=document.form1.pwd1.value.Trim();
var password2=document.form1.pwd2.value.Trim();
var email=document.form1.email.value.Trim();
if(document.form1.user.value.Trim()==""){
alert("用户名不能为空,请重新输入");
return false;
}else if(document.form1.pwd1.value.Trim()==""){
alert("密码不能为空,请重新输入");
return false;
}else if(document.form1.pwd2.value.Trim()==""){
alert("确认密码不能为空,请重新输入");
return false;
}else if(document.form1.tel.value.Trim()==""){
alert("电话号码不能为空,请重新输入");
return false;
}else if(email!=""&& (email.indexOf("@")==-1 || email.indexOf(".")==-1)){
alert("邮箱格式错误,请重新输入");
return false;
}else if(password1==password2){
return true;
}else if(password1!=password2){
alert("您两次输入的密码不同,请重新输入");
return false;
}
}
</script>
同时在servlet中用request.getParameter(“name”)的值,然后通过JavaBean写入到数据库中。
4.4.2 用户登录子模块
1、登录页面流程图
图10 用户登录图
Fig10 The user login dialog
2登录页面代码程序的实现部分:
用户在前台输入并提交信息,每一个提交程序都会用到Form容器,在这个容器里含有两个输入对象,一个是用户名,一个是用户密码,系统的验证主要依靠这两个对象输入框来完成。
用户在在前台输入信息后,系统在后台要进行验证,以便用户登陆,验证代码见程序文件UserLoginServlet 和 UserLoginbean
这个程序的主要功能就是接受用户输入的参数,对用户输入的参数进行判断,判断通过后向数据库系统提交,返回数据库查询结果,当有相应的合法数据后,系统将把此用户的ID号和用户名赋给系统Session变量,然后系统将直接到达用户页面[13]。
4.4.3 商品发布模块
1、商品发布流程图
图11 商品发布图
Fig11 The goods release map
2、商品发布模块的实现部分
在提交相应的商品信息之后,在servlet中去看session.getAttribute("username")是否为空,如果为空,证明用户没有登录,则在JavaScript中填写alert语句,弹出对话框,提示没有登录,然后返回到商品发布页面;如果session.getAttribute("username")不为空,则把填写的商品信息通过JavaBean写入到数据库表tb_goods中,提示商品发布成功[16]。
if((String)session.getAttribute("username")==null){
try {
this.forward(request, response, "/goodsrelease.jsp?message='forward'");
return;
} catch (ServletException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
goodsbean gb=new goodsbean();
gb.goodsInsert(userID,product_type_id,goods_name,goodshownew, price, method, exchangeaddress, number, introduce);
try {
PrintWriter out=response.getWriter();
out.print("OK");
out.print(goods_name);
} catch (IOException e) {
e.printStackTrace();
}
4.4.4 商品搜索模块
1、商品搜索流程图
图12 商品搜索图
Fig12 The goods research map
2、商品搜索的代码实现
提交相应的信息后,servlet首先从用户选择的商品类别producttype和商品名称goodsname,然后通过JavaBean去查询商品数据库tb_goods,查询时用sql语句的模糊查询来进行,同时将查询结果显示在goodssearchresult.jsp中[17]。
在servlet中的代码:
if(action.equals("search")){
Vector vector=new Vector(); //定义一个向量,用来存放返回的商品信息类
String product_type_id=request.getParameter("producttype");//获取商品类别和商品名称的信息
String goodsname=request.getParameter("goodsname");
goodssearchbean gsb=new goodssearchbean(); //调用相应的JavaBean
vector=(Vector)gsb.getGoodsMessag(product_type_id, //返回相应的查询结果 goodsname);
request.setAttribute("goodssearchresult", vector)
展开阅读全文