admin 管理员组文章数量: 1184232
2024年1月16日发(作者:java作业提交源代码文件)
郑州大学(软件学院)实习报告
学生姓名 王 鑫
院(系) 软件学院
专 业 软件工程
指导教师 韩 梦 薇
2014年 12月
目 录
1 绪论 ........................................................................................................................... 1
1.1 课题的研究意义 ................................................................................................ 1
1.2 本论文的目的、内容及开发环境和工具 ........................................................ 1
2 研究现状及设计目标 ............................................................................................... 1
2.1 相近研究课题的特点及优缺点分析 ................................................................ 1
2.2 现行研究存在的问题及解决办法 .................................................................... 1
3 要解决的几个关键问题 ........................................................................................... 2
3.1 研究设计中要解决的问题 ................................................................................ 2
3.2 具体实现复杂性分析 ........................................................................................ 3
4 系统设计及结构 ....................................................................................................... 4
4.1 数据库设计 ........................................................................................................ 4
4.2 系统结构图 ........................................................................................................ 6
5 系统实现技术 ........................................................................................................... 7
5.1 分模块详述系统各部分的实现方法 ................................................................ 7
5.2 程序流程 .......................................................................................................... 13
6 性能测试与分析 ..................................................................................................... 13
6.1 测试实例(测试集)的研究与选择 .............................................................. 13
6.2 测试环境 .......................................................................................................... 14
6.3 性能分析 .......................................................................................................... 14
7 结束语 ..................................................................................................................... 14
参考文献 ..................................................................................................................... 15
1 绪论
1.1 课题的研究意义
近年来,网络技术迅猛发展,人类已经进入了信息化社会。随着人们消费观念和生活方式的改变,网上购物凭借其简单、快捷的特点逐渐融入了人们的生活中适应了当今社会快节奏地生活,使人们足不出户便可以方便快捷轻松地选购自己喜欢的商品。
1.2 本论文的目的、内容及开发环境和工具
1.论文的目的、内容
网上购物系统,是在网络上建立一个虚拟的购物商场,避免了挑选商品的烦琐过程,使您的购物过程变得轻松、快捷、方便,很适合现代人快节奏的生活;同时又能有效的控制“商场”运营的成本,开辟了一个新的销售渠道。本系统是一个中小型的电子商务系统,可以为各类用户提供方便的在线购物环境,符合目前国内流行的电子商务模式。用户可以再系统中实现注册、登录、修改个人信息、分类查询商品信息、购物、管理购物车、结账和查看各种服务条款等功能。通过后台管理模块可以实现后台管理员对会员、商品、物流、订单和系统管理。
2.开发环境和工具
开发系统:Windows7旗舰版
开发工具:MyEclipse2014+Tomcat7.0+IE浏览器+MySQL
开发技术:Java+数据库+Jsp+Html
2 研究现状及设计目标
2.1 相近研究课题的特点及优缺点分析
相比于传统购物模式少了言语交流而有了更多的填单与确认过程,让人稍感不便外。总的来说,不受时间、地域限制、便捷、安全、省时省力等优点还是为买卖双方带来了不少好处。
2.2 现行研究存在的问题及解决办法
网上购物系统是比较常见而求被广泛应用的系统,本系统的开发主要是购物车功能、订单功能和支付的实现,传统的购物模式,最令人烦恼的问题就是——商品的进货、出货、交易以及顾客对其所购商品不满而引发的退货问题等等。现在市场上类似流行的网站或平台有很多。
1
3 要解决的几个关键问题
3.1 研究设计中要解决的问题
1.界面设计
界面布局设计是本系统中的一个重要的环节,本系统采用B/S结构,即浏览器/服务器模式。
2.功能需求
网上购物系统的功能模块有很多,大体可被简单地划分为两部分:前台模块和后台模块。
(1)前台模块:该模块主要供顾客使用,包括登录模块、注册模块、搜索模块、前台模块前台模块登登录录模模块块注注册册模模块块搜搜索索模模块块购购物物车车模模块块支支付付模模块块购物车模块、支付模块等。前台模块功能结构图如图3.1所示。
图3.1 前台模块结构图
① 登录模块
本系统的登录模块提供网站用户的登录功能,包括用户名和密码的输入,此模块连接数据库,点击登录按钮,验证核实之后进入系统主界面。
② 注册模块
本系统的注册模块提供网站游客的注册功能,输入个人资料,注册成为网站会员。包括用户名、密码、确认密码、性别、年龄、电子邮箱、验证码、地址和联系方式。
③ 搜索模块
本模块提供了两种搜索功能。包括模糊搜索和条件搜索。模糊搜索即关键字搜索,用户输入自己想要商品的关键字,点击搜索按钮,进行搜索。
④ 购物车模块
购物车模块相当于现实中的购物车,用于暂时存放用户挑选的商品。可以显示所
2
选商品的价格、数量、小计和总计。模块功能包括单件商品的增减及删除,小计表示同类商品的价格,总计表示所选商品的总计价格。确认无误后,点击结算,便可生成订单。
⑤ 支付模块
本模块提供了网上购物系统的支付功能。用户接收商品,确认试用后,点击支付,给予评价,完成此次交易的最后一步。
(2)后台模块:该模块主要供管理员使用,包括商品管理模块、会员管理模块、订单管理模块、公告模块等。后台模块功能结构图如图3.2所示。
后台模块后台模块商商品品管管理理模模块块会会员员管管理理模模块块订订单单管管理理模模块块公公告告模模块块图3.2 后台模块结构图
① 商品管理模块
网上购物系统的商品管理模块主要为管理员提供商品管理功能。管理员可修改商品信息,包括价格、库存、上架以及下架。
② 会员管理模块
会员管理模块为管理员提供了管理网站会员的功能。可以分配网站会员一定权限,也可删除会员。
③ 订单管理模块
此模块的功能主要为订单处理功能。管理员查看订单信息,给用户派送商品,等用户支付之后,修改订单状态,完成此次交易。
④ 公告模块
公告模块用来显示网站的一些活动、奖励、上架新品、特价商品以及下架通知等信息。
3.数据库的设计
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
User_name
Password
Real_name
Age
Gender
Address
Is_Admin
Phone
类型
Int
Varchar
Varchar
Varchar
Int
Varchar
Varchar
Varchar
Varchar
Varchar
键标识
Primarykey
Default
(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
商品名称
种类id
商品单价
字段
Product_id
Name
Kind_id
Price
4
类型
Int
Varchar
Int
Double
键标识
Primarykey
Foreignkey
上架时间
下架时间
库存量
月销量
商品图片
商品描述
Uptime
Downtime
Count
Month_sell
Pro_picture
Describe
Date
Date
Int
Int
Varchar
Varchar
(3)商品种类表(Kind_id,Father_id,Kind_name,Kind_grade),其中Kind_id为主键。该表用来存储种类id、父种类id、种类名称和种类等级。表的结构如表4-3所示。
表4-3 商品种类表
含义
种类id
父种类id
种类名称
种类等级
字段
Kind_id
Father_id
Kind_name
Kind_grade
类型
Int
Int
Varchar
Int
键标识
Primarykey
(4)订单项表(Item_id,Order_id,Product_id,Product_count,User_id),其中Item_id为主键。该表存储订单项id、订单id、商品id、商品数量、用户id。表的结构如表4-4所示。
表4-4 订单项表
含义
订单项id
订单id
商品id
商品数量
用户id
字段
Item_id
Order_id
Kind_id
Product_id
User_id
类型
Int
Int
Int
Int
Int
键标识
Primarykey
(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 订单表
含义
字段
5
类型 键标识
订单id
支付方式
送货方式
送货地址
收货人姓名
收货人联系方式
邮政编码
用户id
订单状态
是否付款
Order_id
Pay_way
Deliver_way
Address
Receive_name
Receive_phone
Postcode
User_id
State
isPaid
Int
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
Int
Varchar
Varcahr
Primarykey
Foreignkey
Default
Default
2.数据库表的关系图
根据需求分析和上述的数据库设计,我们得出数据库表的E-R图,如下图4.1所示。
图4.1 数据库表的关系图
4.2 系统结构图
结构图以模块的关系为线索,用自上而下的连线表示调用关系并注明参数传递的方向和内容。根据第三章节的功能分析,可以得出本系统总体结构图。如图4.2所示。
6
网上购物系统网上购物系统前台模块前台模块后台模块后台模块登登录录模模块块注注册册模模块块搜搜索索模模块块购购物物车车模模块块支支付付模模块块商商品品管管理理模模块块会会员员管管理理模模块块订订单单管管理理模模块块公公告告模模块块图4.2 网上购物系统总体模块结构图
5 系统实现技术
5.1 分模块详述系统各部分的实现方法
1.登录
经过上述的各项步骤之后,基本上完成了一个网上购物系统的开发。本系统的登录界面如下图所示。输入用户名和密码,单击登录按钮,与数据库的用户信息表进行验证,核实身份后进入系统主界面。登录界面如图5.1所示。
图5.1 登录界面
对应的部分程序代码为:
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
7
throws ServletException, IOException {
racterEncoding("utf-8");
tentType("text/html;charset=utf-8");
String username = ameter("username");
String password = ameter("password");
PrintWriter out=ter();
try {
User u = r(username);
if(u != null){
if(r_password().equals(password))
{
sion().setAttribute("user", u);
direct("/dog_heaven/jsp/");
}else{
n("");
}
}else{
n("");
}
2.注册
}
}catch (SQLException e) {
tackTrace();
}
8
如果用户还不是本网站会员,就只能浏览商品,没有购物车功能,也不购买商品。这时就需要注册会员。本系统注册界面如下图所示。本界面采用Ajax验证,即时更新验证输入的信息。完成个人信息的填写后,单击立即注册按钮,即可成为本网站会员。注册界面如图5.2所示。
图5.2 注册界面
3.搜索
本系统搜索功能如下图所示,大体提供了两种搜索功能。第一种:关键字查找(模糊查找),会员输入关键字,单击搜索按钮进行搜索;第二种:条件查找,具体可
为价格区间查找和商品类别查找。
对应的部分程序代码为:
@Override
private void keywords(HttpServletRequest request, HttpServletResponse response)
throws SQLException, IOException {
String key = ameter("keywords");
ArrayList
PrintWriter out = ter();
n("");
n("
9
n("
");n("
n("
| "); n("
| "); ||||
| 图片 | ");价格 | ");数量 | ");小计 | ");操作 | ");
|---|
return items;
5.2 程序流程
12
根据需求分析和详细设计描述,能够得出本系统的运行流程,如图5.5所示。
开始开始购物网站购物网站登录登录N前台前台注册注册填写信息填写信息管理员管理员Y后台后台查看商品查看商品会会员员管管理理订订单单管管理理商商品品管管理理公公告告管管理理加入购物车加入购物车Y支付支付结束结束N
图5.5 系统程序流程图
6 性能测试与分析
6.1 测试实例(测试集)的研究与选择
该测试案例是以一个B/S的功能点为被测对象, 该测试用例为黑盒测试用例。所谓黑盒测试就是在程序接口进行测试,它是检查功能是否按要求实现各个功能,程序是否能适当地接收输入数据并产生正确的输出信息。白盒测试与黑盒测试相反,测试根据被测程序的内部结构设计测试用例,测试者需事先了解程序的结构。
本系统的测试功能描述如下:
1.用户登录界面输入密码,进入购物网站主界面。
2.选择一件商品,放入购物车。
3.更改购物车中商品数量、种类,点击结算按钮,进入订单生成界面。
13
4.填写订单信息,点击确定,完成订单,等待卖家发货。
6.2 测试环境
1.硬件环境
硬件配置主要包括硬件的选择。网上购物系统的硬件配置要根据用户对系统的稳定性要求、系统的容量来确定。
2.软件环境
网上购物系统的软件配置要根据用户对系统的稳定性要求以及用户的维护水平来确定。当然,一般情况下,对微软Windows界面比较熟悉,因此都使用Windows XP操作系统。
6.3 性能分析
1.对系统用户进行管理。
2.为了加强数据保密性,为用户设置权限。
3.系统最大限度地实现了易安装性、易维护性和易操作性。
4.系统运行稳定、安全可靠。
7 结束语
本系统是的设计与研发基于软件工程学,用来对网上商品等信息进行有效的管理。大体可分为两大功能模块,前台模块和后台模块。往下又可分为许多子模块。前台模块提供了商品展示功能和用户购物功能。后台模块提供了管理用户信息,管理商品信息,以及处理订单信息等功能。本系统至上而下功能层次分明,为用户和管理员的使用提供了便利。
本次毕业设计中,也体现出了自身的不足。首先,在开发网上购物系统的前期,由于对开发工具的掌握还不够全面,浪费了不少时间。其次,前期研发时缺少对本系统的总体设计,考虑的不够全面,导致在底层功能扩充时,遇到了不少困难。再次,网站制作方面的知识比较缺乏,开发软件的能力还有待提高。
14
参考文献:
[1] 程雯.我国网络购物现状浅析[J].价格月刊,2009(09):18-26.
[2] 管晶晶.足不出户购物是怎样实现的?[J].今日科苑,2007(21):20-42.
[3] 来学伟.基于JSP的学生信息管理系统的设计[J].济源职业技术学院学报,2010(11):1-160.
[4] 崔巍陈国青.数据库应用与设计[M].北京:清华大学出版社,2009.
[5] 梁小晓.基于B/S结构学生信息管理系统的设计与实现[D].成都.电子科技大学:2009.
[6] 陈晓鹏. JavaWeb应用技术开发
15
版权声明:本文标题:(完整版)基于Java的网上购物系统的设计与实现 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1705395879a483247.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
更多相关文章
初学者必看:树莓派+USB无线网卡,一招教你轻松连接WiFi
插上USB网卡,打开树莓派,进入终端机。写上: lsusb 如果有 RTL8188CUS 802.11N WLAN Adapter 之类的名字,就是说已探测你的USB网卡。 没有就拔出
EasyBCD:轻松修复双系统引导故障,操作简单到爆!
目录一、前言:当电脑启动变成“玄学问题” 你是否经历过这样的崩溃瞬间:重装系统后黑屏只剩光标闪烁?双系统切换突然提示“找不到操作系统”?或者给电脑装了个Linux练手,结果开机直接进Windows,连选择界面都消
NTBootAutofix双系统启动修复秘籍,让你的电脑重获新生
简介:NTBootAutofix是一款能够解决双系统引导问题的工具,如Windows XP和Windows 7共存时的启动菜单损坏、引导项丢失等。该工具提供了自动修复、备份恢复、手动修复、清理优化和广泛兼容性等功能。用户需要选择合适的
双系统启动出问题?EasyBCD来帮你搞定!
目录一、前言:当电脑启动变成“玄学问题” 你是否经历过这样的崩溃瞬间:重装系统后黑屏只剩光标闪烁?双系统切换突然提示“找不到操作系统”?或者给电脑装了个Linux练手,结果开机直接进Windows,连选择界面都消
QQ浏览器自动更新不想受?三步操作,让升级由你掌握!
如何关闭QQ浏览器自动更新功能:详细步骤与常见问题解析在日常使用电脑的过程中,许多用户都曾遇到过软件自动更新的困扰。以QQ浏览器为例,其自动更新功能虽然旨在为用户提供最新版本的功能和安全补丁,但部分用户反馈新版本可能存在
Ubuntu系统下的QQ问题大汇总:一键解决自动关闭!
每次开机启动电脑,Ubuntu 10 linux qq 老是自动退出,QQ登陆了还没几分钟呢,刚想聊几句天的,悄无声息的QQ自动关闭了。 只要修改一下qq配置文件(usrbinqq)就可以了。 具体如下。
Ubuntu 9.10中,摆脱QQ频繁自动关闭的困扰
[align=center][img]转载:作者:tianwanjun8680.blog.163.comQQ每次打开聊天 窗口,和别人聊天时,点击历史或者传输文件和图片时,或者正和别人聊天QQ就自动关闭了,搞得老
网络优化新方案:探索TPLink与Netcore路由器的桥接模式
朋友的无线到我家就很微弱,天气状况好的时候,还是可以接受的,糟的时候网络质量就非常的差。 于是果断入手了TPLink,通过桥接的方式 扩展他的信号,让wifi覆盖无死角。 基本配置如下(参考网络上的资料,但是不同的路由
一文详解:轻松进入192.168.1.1路由器控制台
快速体验打开 输入框输入如下内容 帮我开发一个路由器登录页面模拟系统,用于展示常见路由器的管理界面登录流程。系统交互细节:1.输入正确IP地址跳转登录页 2.输入错误地址提示更正 3.忘记密码时显示重置指
192.168.1.1的秘密通道:探索家庭网络的入口
虽然前面小编也发布过关于的相关信息,但是都是解释相关的问题的,没有好好介绍关于的信息,今天小编星期八就给大家介绍一下的详细信息! 是什么? 192.168.0.1属于IP地址的
192.168.0.1设备探索:零基础入门
有不少的用户在反馈,说在的时候,登录入口打不开找不到,从而无法对进行设置,问我应该怎么办? 根据鸿哥的经验来看,出现无法打开的登录入口问题,绝大数情况下是用户自己操作有误引起的,极少数情况
告别重装系统,用DISM轻松解决电脑问题
介绍了解: DISM(部署映像服务和管理)是三种 Windows 诊断工具中最强大的。当遇到频繁的崩溃、冻结和错误,或者 SFC 要么无法修复您的系统文件,或者根本无法运行时,可以使用该工具。 相连文章: 修复
从0到1:Dism++教你快速完成系统安装,新手必备技能!
系统安装是一个简单而又复杂的活。有的仅仅为了安装系统,先把ESD转为ISO。 有的因为安装器不支持ESD,而转换为WIM。还有的在解压ISO……反正各种心烦 本文将通过一些实例,帮助大家驾驭Dism 。 目录
揭秘Dism日志:解锁Windows系统维护的终极武器
使用DISM命令修复系统注意:DISM命令只会修复系统自带的文件,第三方软件、驱动问题使用此命令修复是无效的,修复过程是比较漫长的,但是修复期间不会影响你系统正常使用、也不会卡什么的,占用资源比较低。 一、检查映像
一文解密Dism++:卸载驱动的超高效方法
资源说明 Dism++(系统精简利器)是一款功能全面的Windows系统精简工具,在某种程度上可以说是以前的Dism管理器的升级版(最开始的名字叫Windows更新清理工具),Dism++(系统精简利器)全新的构建,更小的体积
一招搞定电脑卡顿?Dism++优化技巧大公开
1.系统文件清理 虽然dism的文件清理比较弱,但相对于其他清理工具来说,清理系统垃圾文件功能比较丰富,选择软件的空间回收栏目,勾选所有的清理功能,点击扫描,稍等片刻,即可扫描出不需要的文件,点击清理即可。 其中需要注
一文读懂Dism命令行,Adobe Flash Player安装不再难!
相关文章推荐:Windows ADK 下载地址: 命令示例:Gimagex图形化演示:以下命令由DISMGUI生成,原汁原味1.首次备份镜像【Captu
Dism命令新探索:深入理解与实践Windows映像文件维护
Dism是什么? dism 命令(Deployment Image Servicing and Management)是Windows操作系统中的一个命令行工具,用于管理和维护映像文件(如Windows安装映像或修复映像)。d
Dism++:你的日常维护与系统优化好帮手
简介:Dism++是一款先进的系统维护工具,专注于清理电脑垃圾、释放内存,提供全面的系统优化解决方案。最新版本Dism++10.1.1000.100_2d2bf466baca088c4b35248f5a7316f4e00cac0b特别
当Windows系统出问题时,如何借助DISM挂载映像进行修复,让电脑焕然一新?
如何使用DISM对Windows系统映像进行修复在前些天我更新电脑驱动的时候,更新程序报错了。我检查后发现是系统映像完整性的问题。在我解决完问题后,我决定把这个解决的过程记录下来,希望能帮到别人。 那么正文开始
发表评论