基于Java的网上购物系统的设计与实现.docx
- 文档编号:10706590
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:18
- 大小:134.19KB
基于Java的网上购物系统的设计与实现.docx
《基于Java的网上购物系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于Java的网上购物系统的设计与实现.docx(18页珍藏版)》请在冰豆网上搜索。
基于Java的网上购物系统的设计与实现
郑州大学(软件学院)实习报告
学生姓名王鑫
院(系)软件学院
专业软件工程
指导教师韩梦薇
2014年12月
1绪论0
1.1课题的研究意义0
1.2本论文的目的、内容及开发环境和工具0
2研究现状及设计目标0
2.1相近研究课题的特点及优缺点分析0
2.2现行研究存在的问题及解决办法0
3要解决的几个关键问题0
3.1研究设计中要解决的问题0
4系统设计及结构3
4.1数据库设计3
4.2系统结构图5
5系统实现技术6
5.1分模块详述系统各部分的实现方法6
5.2程序流程11
6性能测试与分析12
6.1测试实例(测试集)的研究与选择12
6.2测试环境13
6.3性能分析13
7结束语13
参考文献:
14
1绪论
1.1课题的研究意义
近年来,网络技术迅猛发展,人类已经进入了信息化社会。
随着人们消费观念和生活方式的改变,网上购物凭借其简单、快捷的特点逐渐融入了人们的生活中适应了当今社会快节奏地生活,使人们足不出户便可以方便快捷轻松地选购自己喜欢的商品。
1.2本论文的目的、内容及开发环境和工具
1.论文的目的、内容
网上购物系统,是在网络上建立一个虚拟的购物商场,避免了挑选商品的烦琐过程,使您的购物过程变得轻松、快捷、方便,很适合现代人快节奏的生活;同时又能有效的控制“商场”运营的成本,开辟了一个新的销售渠道。
本系统是一个中小型的电子商务系统,可以为各类用户提供方便的在线购物环境,符合目前国内流行的电子商务模式。
用户可以再系统中实现注册、登录、修改个人信息、分类查询商品信息、购物、管理购物车、结账和查看各种服务条款等功能。
通过后台管理模块可以实现后台管理员对会员、商品、物流、订单和系统管理。
2.开发环境和工具
开发系统:
Windows7旗舰版
开发工具:
MyEclipse2014+Tomcat7.0+IE浏览器+MySQL
开发技术:
Java+数据库+Jsp+Html
2研究现状及设计目标
2.1相近研究课题的特点及优缺点分析
相比于传统购物模式少了言语交流而有了更多的填单与确认过程,让人稍感不便外。
总的来说,不受时间、地域限制、便捷、安全、省时省力等优点还是为买卖双方带来了不少好处。
2.2现行研究存在的问题及解决办法
网上购物系统是比较常见而求被广泛应用的系统,本系统的开发主要是购物车功能、订单功能和支付的实现,传统的购物模式,最令人烦恼的问题就是——商品的进货、出货、交易以及顾客对其所购商品不满而引发的退货问题等等。
现在市场上类似流行的网站或平台有很多。
3要解决的几个关键问题
3.1研究设计中要解决的问题
1.界面设计
界面布局设计是本系统中的一个重要的环节,本系统采用B/S结构,即浏览器/服务器模式。
2.功能需求
网上购物系统的功能模块有很多,大体可被简单地划分为两部分:
前台模块和后台模块。
(1)前台模块:
该模块主要供顾客使用,包括登录模块、注册模块、搜索模块、
购物车模块、支付模块等。
前台模块功能结构图如图3.1所示。
图3.1前台模块结构图
①登录模块
本系统的登录模块提供网站用户的登录功能,包括用户名和密码的输入,此模块连接数据库,点击登录按钮,验证核实之后进入系统主界面。
②注册模块
本系统的注册模块提供网站游客的注册功能,输入个人资料,注册成为网站会员。
包括用户名、密码、确认密码、性别、年龄、电子邮箱、验证码、地址和联系方式。
③搜索模块
本模块提供了两种搜索功能。
包括模糊搜索和条件搜索。
模糊搜索即关键字搜索,用户输入自己想要商品的关键字,点击搜索按钮,进行搜索。
④购物车模块
购物车模块相当于现实中的购物车,用于暂时存放用户挑选的商品。
可以显示所选商品的价格、数量、小计和总计。
模块功能包括单件商品的增减及删除,小计表示同类商品的价格,总计表示所选商品的总计价格。
确认无误后,点击结算,便可生成订单。
⑤支付模块
本模块提供了网上购物系统的支付功能。
用户接收商品,确认试用后,点击支付,给予评价,完成此次交易的最后一步。
(2)后台模块:
该模块主要供管理员使用,包括商品管理模块、会员管理模块、订单管理模块、公告模块等。
后台模块功能结构图如图3.2所示。
图3.2后台模块结构图
①商品管理模块
网上购物系统的商品管理模块主要为管理员提供商品管理功能。
管理员可修改商品信息,包括价格、库存、上架以及下架。
②会员管理模块
会员管理模块为管理员提供了管理网站会员的功能。
可以分配网站会员一定权限,也可删除会员。
③订单管理模块
此模块的功能主要为订单处理功能。
管理员查看订单信息,给用户派送商品,等用户支付之后,修改订单状态,完成此次交易。
④公告模块
公告模块用来显示网站的一些活动、奖励、上架新品、特价商品以及下架通知等信息。
3.数据库的设计
数据库是所有信息类系统的基础核心,它把系统中出现的大量数据按照一定的规则存储起来,提供检索数据的功能。
4系统设计及结构
4.1数据库设计
1.数据库表的设计
(1)用户信息表(User_id,User_name,Password,Real_name,Age,Gender,Address,Email,Is_Admin,Phone),其中User_id为关键字。
该表用来存储用户id、用户名、密码、真实姓名、年龄、性别、地址、电子邮箱、是否为管理员和联系方式。
表的结构如表4-1所示。
表4-1用户信息表
含义
字段
类型
键标识
用户id
User_id
Int
Primarykey
用户名
User_name
Varchar
密码
Password
Varchar
真实姓名
Real_name
Varchar
年龄
Age
Int
性别
Gender
Varchar
地址
Address
Varchar
邮箱
Varchar
是否管理员
Is_Admin
Varchar
Default
联系方式
Phone
Varchar
(2)商品表(Product_id,Name,Kind_id,Price,Uptime,Downtime,Count,Month_sell,Pro_picture,Describe),其中Product_id为主键,Kind_id为外键。
该表用来存储商品id、商品名称、种类id、商品单价、上架时间、下架时间、库存量、月销量、商品图片和商品描述。
表的结构如下表4-2所示。
表4-2商品信息表
含义
字段
类型
键标识
商品id
Product_id
Int
Primarykey
商品名称
Name
Varchar
种类id
Kind_id
Int
Foreignkey
商品单价
Price
Double
上架时间
Uptime
Date
下架时间
Downtime
Date
库存量
Count
Int
月销量
Month_sell
Int
商品图片
Pro_picture
Varchar
商品描述
Describe
Varchar
(3)商品种类表(Kind_id,Father_id,Kind_name,Kind_grade),其中Kind_id为主键。
该表用来存储种类id、父种类id、种类名称和种类等级。
表的结构如表4-3所示。
表4-3商品种类表
含义
字段
类型
键标识
种类id
Kind_id
Int
Primarykey
父种类id
Father_id
Int
种类名称
Kind_name
Varchar
种类等级
Kind_grade
Int
(4)订单项表(Item_id,Order_id,Product_id,Product_count,User_id),其中Item_id为主键。
该表存储订单项id、订单id、商品id、商品数量、用户id。
表的结构如表4-4所示。
表4-4订单项表
含义
字段
类型
键标识
订单项id
Item_id
Int
Primarykey
订单id
Order_id
Int
商品id
Kind_id
Int
商品数量
Product_id
Int
用户id
User_id
Int
(5)订单表(Order_id,Pay_way,Deliver_way,Address,Receive_name,Postcode,Receive_phone,User_id,State,isPaid),其中Order_id是主键,User_id为外键。
该表用来存储订单id、支付方式、送货方式、送货地址、收货人姓名、收货人联系方式、邮政编码、用户id、订单状态、是否付款。
表结构如表4-5所示。
表4-5订单表
含义
字段
类型
键标识
订单id
Order_id
Int
Primarykey
支付方式
Pay_way
Varchar
送货方式
Deliver_way
Varchar
送货地址
Address
Varchar
收货人姓名
Receive_name
Varchar
收货人联系方式
Receive_phone
Varchar
邮政编码
Postcode
Varchar
用户id
User_id
Int
Foreignkey
订单状态
State
Varchar
Default
是否付款
isPaid
Varcahr
Default
2.数据库表的关系图
根据需求分析和上述的数据库设计,我们得出数据库表的E-R图,如下图4.1所示。
图4.1数据库表的关系图
4.2系统结构图
结构图以模块的关系为线索,用自上而下的连线表示调用关系并注明参数传递的方向和内容。
根据第三章节的功能分析,可以得出本系统总体结构图。
如图4.2所示。
图4.2网上购物系统总体模块结构图
5系统实现技术
5.1分模块详述系统各部分的实现方法
1.登录
经过上述的各项步骤之后,基本上完成了一个网上购物系统的开发。
本系统的登录界面如下图所示。
输入用户名和密码,单击登录按钮,与数据库的用户信息表进行验证,核实身份后进入系统主界面。
登录界面如图5.1所示。
图5.1登录界面
对应的部分程序代码为:
@Override
protectedvoidservice(HttpServletRequestrequest,HttpServletResponseresponse)
throwsServletException,IOException{
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
Stringusername=request.getParameter("username");
Stringpassword=request.getParameter("password");
PrintWriterout=response.getWriter();
try{
Useru=Userdao.getUser(username);
if(u!
=null){
if(u.getUser_password().equals(password))
{
request.getSession().setAttribute("user",u);
response.sendRedirect("/dog_heaven/jsp/main.jsp");
}else{
out.println("");
}
}else{
out.println("");
}
}catch(SQLExceptione){
e.printStackTrace();
}
}
2.注册
如果用户还不是本网站会员,就只能浏览商品,没有购物车功能,也不购买商品。
这时就需要注册会员。
本系统注册界面如下图所示。
本界面采用Ajax验证,即时更
新验证输入的信息。
完成个人信息的填写后,单击立即注册按钮,即可成为本网站会员。
注册界面如图5.2所示。
图5.2注册界面
3.搜索
本系统搜索功能如下图所示,大体提供了两种搜索功能。
第一种:
关键字查找(模糊查找),会员输入关键字,单击搜索按钮进行搜索;第二种:
条件查找,具体可
为价格区间查找和商品类别查找。
对应的部分程序代码为:
@Override
privatevoidkeywords(HttpServletRequestrequest,HttpServletResponseresponse)throwsSQLException,IOException{
Stringkey=request.getParameter("keywords");
ArrayList
PrintWriterout=response.getWriter();
out.println("");
out.println("
out.println("
");out.println(" url('image/main/memu.jpg');height: 600px;\">"); out.println(" if(dogs.size()==0){ out.println("没有符合条件的商品
");
out.println("
");
return;
}else{
out.println("商品如下
");
out.println("
");
for(inti=0;i Dogd=dogs.get(i); if(i==0){ out.println(" } if(i%4==0&&i! =0){ out.println(""); ");
}
out.println("
out.println("
out.println("
id="+d.getDog_id()+"\">
out.println("
out.println("
out.println("
out.println("");
}
out.println("