基于java在线商城系统的设计与实现毕业设计

摘    要

动态网页技术的成熟,要求我们建立基于Internet的在线商城系统,提高在线商城管理现代化程度,避免信息共享困难。旨在降低商家开通网店的成本,让商家能自己管理自己网店,避免出现垄断行为。

在线商城主要包含了两个模块,即前台模块和后台模块。前台模块为用户所进行购物一系列行为的模块,包括查询商品、加入购物车、下订单、留言等功能。后台模块为管理员模块,为商家使用的模块。可以对商品、商品类别进行编辑,也可以查看用户的信息、查看订单的状态。

前端界面采用的是HTML+CSS+JS进行编写,通过JSP页面展示,后台则是基于JAVA技术,使用myeclipse和tomcat进行开发,使用了SSM框架对数据进行封装和操作,数据库则是使用MySql进行维护,使用navicat进行可视化编辑。

关 键 词网上商城系统;SSM;JAVA;MySql数据库

ABSTRACT

The maturity of Dynamic web technology, the establishment of online mall system becomes necessary.This establishment is to upgrade the modernization level of students’ training works, and avoid the difficulty of sharing information, The purpose is to reduce the cost of opening online stores, so that businesses can manage their own online stores and avoid monopoly.

Online mall mainly includes two modules, namely the front module and the back module. The foreground module is the module of a series of shopping behaviors for users, including the functions of querying goods, adding shopping cart, placing orders, leaving messages and so on. The background module is the administrator module and the business module. You can edit commodities and commodity categories, view user information, and view the status of orders.

The front-end interface uses HTML + CSS + JS to write, through JSP page display, the background is based on Java technology, using MyEclipse and Tomcat for development, using SSM framework for data encapsulation and operation, the database is maintained using mysql, using Navicat for visual editing.

KEYWORDS: online mall system; SSM; JAVA; MySql Database

  

目    录

1  绪  论

1.1在线管理系统概况

1.1.1动态网页概念

1.1.2动态网页工作原理

1.1.3动态网站国内发展现状

1.1.4 自主研制开发在线商城系统的必要性和意义

1.2课题背景及主要工作

1.2.1课题背景

1.2.2主要工作

1.3研究的内容

1.4论文的主要内容

2  在线商城系统总体分析与设计

2.1引言

2.2设计相关技术

2.3在线商城系统需求分析

2.3.1系统实现总体目标

2.3.2系统功能需求

2.4数据库需求分析

2.5数据库详细设计

2.6结果和讨论

2.7小结

3 SSM框架的介绍及开发环境的搭建

3.1引言

3.2 SSM框架的介绍

3.3开发环境

3.3.1系统开发平台

3.3.2运行环境

3.4结果和讨论

3.5小结

4登录注册模块的设计与实现

4.1 引言

4.2 注册功能的设计与实现

4.3登录功能的设计与实现

4.3.1用户登录

4.3.2管理员登录

4.4结果和讨论

4.5 小结

5用户模块的设计与实现

5.1 引言

5.2查询功能的设计与实现

5.2.1查询一级分类

5.2.2查询二级分类

5.2.3查询商品信息

5.3购物功能的设计与实现

5.3.1添加到购物车

5.3.2从购物车中移除商品

5.3.3清空购物车

5.4订单功能的设计与实现

5.4.1生成订单

5.4.2我的订单

5.5留言模块的设计与实现

5.6结果和讨论

5.7 小结

6管理员模块的设计与实现

6.1 引言

6.2用户管理模块的设计与实现

6.3商品分类管理的设计与实现

6.3.1一级分类管理

6.3.2二级分类管理

6.4商品管理模块的设计与实现

6.4.1添加商品

6.4.2删除商品

6.4.3查询商品信息

6.4.4修改商品信息

6.5留言管理模块的设计与实现

6.6结果和讨论

6.7 小结

7总结与展望

7.1总结

7.2展望

参考文献

致谢

1  绪  论

在线商城系统应用了Browser/Server模式,使用SSM框架开发。系统分为了两个部分,一个是前台部分,是需要网上购物的用户,所进行交互的部分。另一个是后台部分,它是商家兼管理员进行操作的地方。还有最基本的注册和登录功能,登录功能有两个不同的入口。实现的功能分别有商品的分类,包括了一级分类、二级分类效果,用户搜索商品功能,用户把商品加入购物车、用户下订单、用户留言、管理员则能对商品进行一二级分类、对商品进行添加、删除等操作、查看用户的反馈等功能。本章主要包括:研究背景、目的和意义、论文主要内容。

1.1在线管理系统概况

1.1.1动态网页概念

所谓动态网页是指网页文件里包含了程序代码,页面代码不会改变,但显示的内容却是可以随着时间、环境或者数据库操作的结果而发生改变的[]。

1.1.2动态网页工作原理

用户输入请求后,服务器会接收,然后服务器从内存中读取用户需要的文件,执行网页文件的程序代码,将含有程序代码的动态网页转化为标准的静态页面。务器将生成的静态页面代码发送给请求浏览器。

1.1.3动态网站国内发展现状

动态网站的概念是相对于静态网站而言,动态网站能动态更新数据,这是动态网站与静态网站主要区别。动态网站在国内兴起于上世纪末,借助互联网技术发展,目前在国内已经应用于各行各业方方面面,如政府、银行、企业、个人等,主要技术如JSP、PHP、ASP[]。

1.1.4 自主研制开发在线商城系统的必要性和意义

现在网络普及程度越来越高,小到三四岁小孩,大到六七十岁的老年人,大多都会接触到互联网,网上购物这种简单快捷的购物方法,也几乎快打败实体店,并已经成为非常成熟行业。而且也已经有了京东、淘宝等大型的平台,其商品销售系统也已经十分完善。虽然有这些平台能给商家引入流量,但其弊端也很明显。即太过依附于平台,丧失极大自由度,例如前段时间阿里巴巴被爆出的二选一垄断行为。

1.2课题背景及主要工作

1.2.1课题背景

本系统采用B/S结构。B/S模式具有跨平台的特点,同时,B/S模式的另一个优点是在升级时只需对服务器端的应用程序进行升级就可以[]。现在网上商城大多为几个大平台,需要商家花费很多的成本。所以需要开发一个让商家自主运营网店平台,让商家能管理平台,商家即为管理员,花销也只有最开始购买该平台的费用。

1.2.2主要工作

本系统旨在降低商家的运营成本,一次花费,终身受用,并且还有专属定制服务。并且商家即管理员的模式,能让商家降低工作强度,提高效率。本系统有简单快速的查询、方便快捷的购物车、能进行及时反馈的留言功能,并给用户带来良好的用户体验。轻便、快捷也是本系统的优点。在易用性上,本系统使用方便、易用、界面简洁友好,相信一定能成为一个给商家极大减少成本,提高利润的有力工具。

1.3研究的内容

本课题主要研究如何实现一个在线商城系统,将会使用Java技术和数据库来搭建一个完整的在线商城系统。[]主要的研究内容有:

(1)研究本系统所需的技术和工具。

(2)分析系统实现的需求与设计。

(3)利用Eclipse、Navicat 等工具,并以MySQL、Java和JSP为技术支持,实现在线商城系统[]。

1.4论文的主要内容

我在本论文中,总结在线商城系统整个设计中的过程和体会,一共有七章,阐述在整个开发工程中所使用到的技术和设计过程,下面是论文内容的简单介绍:

第一章描述了在线商城系统的背景、目的意义和论文主要内容。

第二章阐述本系统实现的技术和功能需求、数据库需求等。

第三章详细介绍ssm框架及开发环境搭建。

第四章介绍登录注册模块设计与实现。

第五章描述用户模块的设计与实现。

第六章介绍管理员模块设计与实现。

第七章则是总结本次工作,并提出展望。



2在线商城系统总体分析与设计

2.1引言

本章介绍了设计本系统所受用到的相关技术,分析在线商城的功能需求并将其整理,还以此设计了数据库结构来支撑数据的存储。

2.2设计相关技术

该在线商城系统后使用java开发[],java语言作为现在最火爆的几门语言之一,其面向对象的特点,让其拥有了极大的快捷性和简单性,其高可移植性、高安全性、稳健性,也是该语言的核心竞争力,用其编写的系统,也十分优质。前端页面使用的是html+css+js和jqury框架来进行设计[]。HTML简单易学,CSS有着很强兼容性和易维护性。javascript的高灵活性是其最大特点。jqury为一个轻量级框架,它的选择器却能碾压大部分对手,它对DOM封装的技术也是十分强大,。让其在实现控件效果上,鲜有敌手。后端使用现在十分流行的SSM框架,即Spring SpringMVC和Mybatis。Mysql和sqlserver是两个很热门的数据库管理软件,因为以前的学习,我选择了mysql数据库来实现本网站数据管理。

2.3在线商城系统需求分析  

2.3.1系统实现总体目标

系统能实现让用户简单快捷地查询商品,进行下单、加购物车等功能,实现商家和管理员为一体,对商品、订单进行管理,减少成本,方便管理。

2.3.2系统功能需求

系统由注册登录模块、前台用户模块、后台管理员模块三大功能模块组成。简述各模块功能:

1、注册登录模块:具有用户注册、用户登录、管理员登录功能。

2、前台用户模块:具有查询商品分类、查询商品、添加商品到购物车、下单、留言功能。

3、后台管理员模块:具有管理商品、管理商品分类、查看用户信息、查看留言功能。

以下是在商城系统的系统功能结构图,如图2-1所示。

图2-1 系统功能结构图

2.4数据库需求分析 

根据系统功能需求,数据库需要存储信息如下:

1、管理员表:管理员ID、管理员账号、管理员密码。

2、一级分类表:一级分类ID、一级分类名称。

3、二级分类表:二级分类ID、二级分类名称、所属一级分类ID。

4、订单项表订单:ID、购买数量、单项总价ID、所购商品ID、所属订单ID。

5、订单表:订单id、订单所支付费用、订单状态、用户所填写的收货地址、用户所填写的收货人姓名、电话、订单创建的时间、订单付款的时间、该订单所属用户的ID。

6、商品表:商品ID、商品名称、商品的价格、商品的图片、商品备注、商品上架的时间、所在的分类的ID。

7、前台用户表:用户id、用户名、用户密码、用户真实姓名、用户邮箱、用户手机号、用户地址、用户状态。

2.5数据库详细设计  

根据系统功能要求创建数据库,建立各表如下所述。

管理员表如表2-1所示。

表2-1 管理员表

字段名

数据类型

说明

id

int(11)

账号(主键)

username

varchar(1000)

用户名

password

varchar(1000)

密码

一级分类表如表2-2所示。

表2-2 一级分类表

字段名

数据类型

说明

cid

int(11)

一级分类id(主键)

cname

varchar(1000)

一级分类名

二级分类表如表2-3所示。

表2-3 二级分类表

字段名

数据类型

说明

Csid

int(11)

二级分类id(主键)

Csname

varchar(1000)

二级分类名称

cid

varchar(1000)

所属一级分类id

订单项表如表2-4所示。

表2-4 订单项表

字段名

数据类型

说明

Oiid

int(11)

订单项id(主键)

count

varchar(1000)

购买数量

subtotal

double

单项总价id

Pid

int(11)

所购商品id

cid

int(11)

、所属订单id

订单表如表2-5所示。

表2-5 订单表

字段名

数据类型

说明

oid

int(11)

订单id(主键)

money

double

订单总价

state

Int(11)

订单状态

Receiveinfo

Varchar(255)

收货地址

phonum

Varchar(255)

收货人电话

Order_time

datetime

下单时间

Uid

Int(11)

所属用户id

商品表如表2-6所示。

表2-6 商品信息表

字段名

数据类型

说明

Pid

int(11)

商品id(主键)

Pname

Varchar(255)

商品名称

Shop_price

Varchar(255)

商城价

image

Varchar(255)

商品图片

Pdesc

Varchar(255)

商品描述

Is_hot

int(11)

是否热门

Pdate

datetime

商品上架日期

csid

int(11)

所属二级分类

用户表如表2-7所示。

表2-7 用户表

字段名

数据类型

说明

Uid

int(11)

用户id(主键)

Username

Varchar(255)

用户名

password

Varchar(255)

用户密码

Name

Varchar(255)

用户真实姓名

Email

Varchar(255)

用户邮箱

Phone

Varchar(255)

用户手机号

Addr

Varchar(255)

用户地址

State

int(11)

用户状态

2.6结果和讨论

对系统的分析与设计,是开发一个系统中及其重要的一环,先对系统进行了详细分析设计,才能使后面的编码阶段更加的有目的性。

2.7小结

本部分是对在线商城系统进行全面的分析,写出其需求,并根据需求,设计相应的数据库,即在这个在线商城项目中十分重要的一部分。能完善的完成此部分工作,后面的工作将事半功倍。


3 SSM框架的介绍及开发环境的搭建

3.1引言

SSM框架,是Spring + Spring MVC + MyBatis的缩写,是现在一套十分热门的并且成熟的开源框架,很适合用于搭建各种大型的应用系统。

3.2 SSM框架的介绍  

Sping主要是能把基础性的设施代码与业务代码尽可能的分隔开,不会互相产生干扰。并且把BEAN都统一到spring container中,这样对bean的所有操作都有spring来管理,无需程序员来操心,只要关心业务实现的部分。

Spring能利用其核心思想:IOC,来简化程序员的工作量,在很多重复构建新对象的地方,spring框架可以自动实现这些构建新对象代码。

springmvc主要解决的是web层的问题,取代了当时web界的老大“struts”,因为springmvc和spring本就是一家,能结合地更加紧密。mvc指的是展现(view),数据(model)和业务(controll),而springmvc,则是把这三种分开,让业务解耦,本质目的和spring相似。

mybatis是对jdbc的封装,是一个持久层框架用来处理对象关系映射,就是以相对面向对象的方式来提交sql语句给jdbc。

3.3开发环境 

3.3.1系统开发平台

1、Tomcat

本系统是在tomcat环境下开发的。Tomcat是可以作为jsp页面和servlet容器,具有开源免费的特性。

Tomcat的特点在于Tomcat的搭建是直接下载的压缩包即可使用。它的文件目录由bin、conf、lib、logs、temp、webapps等等组成。其中,我们实现的项目就在webapps文件夹里发布。

2、my eclipse

MyEclipse作为过去几年java开发中最主流的IDE,它继承了很多架构组件,十分多样。但IDEA编辑器,可能在以后将会取代它的位置。

3、mysql

mysql作为最热门的DBMS[],它的优点最显著的就是其体积小、速度快的特征,面对庞大的数据库,能迅速地进行管理。它本身拥有一个非常快速且稳定的基于线程的内存分配系统,稳定性很强。

3.3.2运行环境

内存:8G

操作系统:windows 10

服务器:Tomcat 7

浏览器:Mozilla Firefox 和chrome

3.4结果和讨论  

SSM是一个比较轻量的框架,很适合用于一些小型项目。

3.5小结  

本章简单介绍SSM框架,阐述了所使用到的一些工具和系统运行环境。

4登录注册模块的设计与实现

4.1 引言

登录注册模块是进入首页的入口,现在登录分为了两个页面,分别为用户登录和管理员登录。登陆时也会匹配两张不同的数据库表,登录界面不同。

4.2 注册功能的设计与实现

注册界面如图4-1所示。进入注册页面后,按要求填写相应信息,点击下方同意注册即可,注册的信息会被存入数据库。

图4-1 用户注册界面

4.3登录功能的设计与实现

4.3.1用户登录

用户注册后,登录界面输入账号密码即可。登录界面如图4-2所示。

图4-2 用户登录界面

4.3.2管理员登录

管理员登录页面输入信息即可,管理员登录界面如图4-3所示。

图4-3 管理员登录界面

4.4结果和讨论

注册、登录账号是一个网站的入口,极其重要。

4.5 小结

注册、登录是任何网站必不可少的

5用户模块的设计与实现

5.1 引言

买家模块实现的是用户购物一系列操作,包括查询商品列表、查询商品详情、购物车商品添加、购物车商品删除、订单添加、留言等功能。

5.2查询功能的设计与实现

5.2.1查询一级分类

首页、查询一级分类页面如图5-1所示。一级分类会直接在首页展示,相当于用户点开首页,就对一级分类进行了查询操作。

图5-1 首页、查询一级分类页面

5.2.2查询二级分类

二级分类页面如图5-2所示。点击各种分类下的二级分类,如外套,男鞋等,即可展示其分类。

图5-2 二级分类页面

5.2.3查询商品信息

点击查看商品的详细信息,商品详情页面如图5-3所示。

图5-3 商品详情页面

5.3购物功能的设计与实现

5.3.1添加到购物车

对于已经登录的用户,购物车页面如图5-4所示。

图5-4 购物车页面

5.3.2从购物车中移除商品

购物车操作列表中,点击删除按钮就可以删除当前账号购物车中该条商品。

5.3.3清空购物车

页面下方,提交订单边,有清空按钮,点击后,出现提示清空购物车,点击确定就能清空,清空购物车弹窗界面图5-5 所示。

图5-5 清空购物车弹窗界面

5.4订单功能的设计与实现

5.4.1生成订单

用户点击生成订单进入订单编辑界面,用户在此输入收货地址、收货人等信息,生成订单页面如图5-6所示。

图5-6 生成订单页面

5.4.2我的订单 

前面步骤生成订单后,进入该订单信息,可以立即付款,付款后等待发货就行,也可以暂时不付款,该订单不会立马消失,订单付款页面如图5-7所示。

图5-7 订单付款页面

5.5留言模块的设计与实现

用户可以在留言板界面,留下自己的反馈,都能看到这些留言,用户留言页面如图5-8所示。

5-8 用户留言页面

5.6结果和讨论

此模块是客户进行商品购买行为而实现的一系列交互。

5.7 小结

前台页面是用户使用的界面;其UI应美观、简洁、明确,以此来提升用户的体验。

6管理员模块的设计与实现

6.1 引言

管理员模块是对后台的商品以及客户的订单、留言信息进行管理,主要功能有:查询用户、管理商品分类,查看用户生成订单、查看用户在留言模块反馈。

6.2用户管理模块的设计与实现

登陆后进入后台页面,可以查看到用户的姓名、邮箱等信息。用户管理页面如图6-1所示。

图6-1 用户管理页面

6.3商品分类管理的设计与实现

6.3.1一级分类管理

一级分类添加页面如图6-2所示。

图6-2 一级分类添加页面

一级分类修改页面效果如图6-3所示。

图6-3 一级分类修改页面

可以查询一级分类,一级分类查询页面如图6-4所示。

图6-4 一级分类查询页面

6.3.2二级分类管理

二级分类添加页面如图6-5所示。

图6-5 二级分类添加页面

二级分类修改页面如图6-6所示。

图6-6 二级分类修改页面

可以查询二级分类,二级分类查询页面如图6-7所示。

图6-7 二级分类查询页面

6.4商品管理模块的设计与实现

6.4.1添加商品

管理员点击添加按钮,添加商品页面如图6-8所示。

图6-8 添加商品页面

6.4.2删除商品

管理员点击操作列表中的删除,即可删除该商品,数据库中也会同步删除该条信息。

6.4.3查询商品信息

管理员可直接查询所有商品信息,删除商品页面如图6-9所示。

图6-9 删除商品页面

6.4.4修改商品信息

点击编辑按钮,修改商品页面如图6-10所示。

图6-10 修改商品页面

6.5留言管理模块的设计与实现

管理员可进入此界面看到用户的留言,包括用户名称、日期等,如果看哪条留言不需要,可以把它删除。留言管理页面如图6-11所示。

图6-11 留言管理页面

6.6结果和讨论

后台功能的实现,才能为买家提供商品以供其购买。

6.7 小结

后台功能是针对于卖家进行商品、订单管理的模块,是卖家所使用的模块。

7总结与展望

7.1总结

选择毕业设计项目时,为提高效率,我选择这个课题,且网上开源项目较多,学习的资源也比较多。在整个系统的设计中,先查阅了很多以前的电商平台项目的资料,然后再根据几年所学习的知识,来进行简单分析、设计等步骤,然后在网上寻找视频资源,进行代码编写。

在整个项目中,存在很多问题,如最开始的需求不够完善,且由于间隔时间长,需要尽快熟悉开发语言,在开发期间遇到的很多报错、崩溃、BUG,都需要花费大量时间去解决。

在项目的实现中,也慢慢了解了SSM框架的一些知识,对这个框架也有了一定的了解,但要应用起来,还是一件不容易的事情。

中间尝试过使用C++来实现该系统,但后面时间不足,且C++也不够熟悉,永定采用现在的开发语言。

最后,毕业设计项目的实现,也让我明白了开发的不易。

7.2展望

对本次项目的设计,让我的编码能力与逻辑有了一个很大的提升,不是停留在以前那样只会一些小型函数的编写。也让我明白自己的编码能力着实有限,这样才有了动力来提升自己。

网上购物已经是一个较为成熟的行业,但能通过此次的设计,让我了解到互联网先驱们的厉害之处。

参考文献

[1] 郝文菊,严竞雄.基于JavaWeb的项目代码生成工具在教学中的改革与实现[J].电脑编程技巧与维护,2020(04):1-2.

[2] 杨静.基于JAVA WEB中MVC模式的研究与应用[J].电脑知识与技术,2014,9(28):68-71.

[3] 陈沛强,谷灵康,金京犬.Java Web程序设计教程[M].北京:人民邮电出版社,2016:10-11.

[4] 欧锋, 邹敏, 李晓桢. Java技术框架概述[J]. 计算机系统应用, 2012, 21(8):236-239.

[5] 陈锦辉. XML与JAVA程序设计大全[电子资源][M]. 中国铁道出版社, 2002:100-130.

[6] 朱福喜. Java程序设计技巧与开发实例[M]. 人民邮电出版社, 2004:70-100.

[7] 张思民, 梁维娜. Java程序设计实践教程[M]. 清华大学出版社, 2006:22-98.

[8] 孔祥盛.MySql数据库基础与实例教程[M].北京:人民邮电出版社,2014:34-159.

[9] 毕广吉.Java程序设计实例教程[M].北京:冶金工业出版社,2009:1-100.

[10] 薛峰,梁锋,徐书勋,王彪任.基于SpringMVC框架的Web研究与应用[J].合肥工业大学学报(自然科学版),2012,(03):83-90.

[11] 杨辉.Spring技术内幕[M].北京:机械工业出版社,2012:293-296.

[12] 程小红.基于Java的数据库应用框架的设计分析[J].电子设计工程,2018,26(21):90-94.

[13] Rachit Mohan Garg,YaminiSood,BalajiKottana.A Framework Based Approach for the Development of Web Based Applications Waknaghat[J].Jaypee University of Information Technology,2011,1(1):1-7.

致谢

四年时间仿佛很长,但到了现在快结束的时候,会觉得过的非常的快。四年时间真的彷佛一瞬,现在刚入学的场景都还历历在目,第一次上课的兴奋、第一次运行Hello world程序的激动、第一次班级团建的美好回忆、第一次考试的紧张,好像就发生在昨日。在平时的学习中,虽然也有过迷茫,但后来也慢慢找到了兴趣所在,尤其是学了C语言后,它的指针让我好奇不已,花费了大量的时间去钻研。学习JAVA,也让我知道了很多面向对象的知识,让我知道使用框架构建一个系统会省力很多。

需要源码和论文私我微信

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农乐园

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值