一,环境介绍
语言环境:Java: jdk1.8
数据库:Mysql: mysql5.7
应用服务器:Tomcat: tomcat8.5.31
开发工具:IDEA或eclipse
开发技术:JAVAWEB
二,项目简介
随着洋酒与中国市场的相互适应以及电子商务和网上商店的普及,洋酒类商品的网上展示与订购逐渐成为主流,如今洋酒不仅仅是贵族身份的象征,也渐渐进入了寻常百姓家。网上商店的技术实现同时也成为了一个比较常见的课题。本文就网上商店的实现做了一些研究。
此设计主要采用JSP开发技术和mysql数据库技术来开发,根据实际需求构建了基于SSH(Struts+Spring+Hibernate)整合框架的电子商务系统,深入了解了轻量级Java EE应用体系结构。最后实现了一个网上购物系统,该系统分为前台和后台,前台主要功能包括普通会员用户的注册和登录、商品浏览、个人信息管理、购物车、查看订单,后台主要功能包括系统管理员信息管理、用户信息管理、商品管理、商品一级二级分类管理、订单管理。本文详细阐述了整个销售系统的设计思路,并对各部分设计进行了详尽的分析,最终形成了一个完整的设计方案。
主要功能结构图如下:
三,系统展示
5.1 主页面
主页面是网上洋酒销售系统的门户,所以主页面设计的好坏直接影响到整个销售系统的形象。首页所载的内容有:销售系统工具栏,包括我的订单,购物车,新用户注册,会员用户登录等一些列选项;导航列包括首页以及一级分类属性,还包括新品推荐,热卖推荐。效果如图5-1所示。
图5-1 系统主界面
5.2 用户登录注册及前台模块设计
5.2.1 用户登录
用户进入主页面,若想点击浏览最上方的销售系统工具栏或者进行购买必须先登录。点击右上角登录进入登录界面。在会员登陆模块输入正确的用户名与密码后,点击“登陆”按钮即可进入登录页面,如图5-2所示。该模块在用户登录要进行用户名和密码的有效性检验,查询用户表。如果该用户存在则跳转到系统首页,同时可以选择用户退出,如图5-3所示。如果不能登录成功则给予提示,用户名不存在或者密码有误,以提示用户再次输入正确的用户名及密码登陆。
图5-2 用户登录界面
图5-3 登录成功后界面
5.2.2 用户注册
如果用户是首次访问系统,还未注册过,可以单击顶端工具栏的【新用户注册】按钮或左侧的会员登录模块里的【新用户注册】按钮进入新用户注册界面,进行用户注册。这是用户全面能够使用系统功能的通道,是必不可少的部分。效果如图5-4所示。
图5-4用户注册界面
5.2.3 产品分类
这里是系统人性化的一个体现,显示的是商城里洋酒的具体分类。如图5-5所示,是一级分类,这里已经添加了三个分类,分别是白兰地,威士忌,金酒,伏特加,朗姆酒,特吉拉酒。具体分类的增删改可以在后台管理模块实现。如图5-6所示,是二级分类,根据一级分类分出的二级分类。
图5-5产品一级分类界面
图5-6产品二级分类界面
5.2.4 热门商品
这里是为客户专门定制的一个模块,为用户主动推荐热门产品,让用户可以在首页就能看到商场为顾客推荐的热门产品。具体推荐的增删改可以在后台管理模块实现。如图5-7所示:
图5-7特别推荐界面
5.2.5 最新商品
这里显示的是商城里最新上架的商品。可以让顾客及时了解到新品的情况。具体新品的增删改可以在后台管理模块实现。如图5-8所示:
图5-8最新上架界
5.3 后台管理模块的设计与实现
后台的设计完全是为了前台服务的,前台主要是展现,所以后台必须有支持前台的功能。后台的维护功能主要包括如下:系统管理、商品分类管理、商品管理、订单管理、注册用户管理。
5.3.1 后台管理系统
5.3.1.1 系统管理员登陆模块
管理员的登陆入口在另一个页面,管理员的账号和密码是数据库里默认已预先存入数据库的,用户名cjh,密码1231。输入完毕无错误提示,点击“登陆”按钮进入后台管理系统。界面如图5-9所示。
图 5-9 后台管理系统登陆界面
5.3.2 系统后台管理
管理员登陆进入后系统台管理模块,如图5-10所示是管理员首先看到的页面:
图5-10 后台管理页面
系统后台管理分类为以下模块:注册用户管理,一级分类管理,二级分类管理,商品管理,订单管理。
四,核心代码展示
package cn.itbaizhan.shop.adminuser.action; import org.apache.struts2.ServletActionContext; import cn.itbaizhan.shop.adminuser.service.AdminUserService; import cn.itbaizhan.shop.adminuser.vo.AdminUser; import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ModelDriven; public class AdminUserAction extends ActionSupport implements ModelDriven<AdminUser> { // 模型驱动使用的对象 private AdminUser adminUser = new AdminUser(); public AdminUser getModel() { return adminUser; } // 注入AdminUserService private AdminUserService adminUserService; public void setAdminUserService(AdminUserService adminUserService) { this.adminUserService = adminUserService; } // 后台登录的执行的方法 public String login() { // 调用service方法完成登录 AdminUser existAdminUser = adminUserService.login(adminUser); // 判断 if (existAdminUser == null) { // 用户名或密码错误 this.addActionError("用户名或密码错误!"); return "loginFail"; } else { // 登录成功: ServletActionContext.getRequest().getSession() .setAttribute("existAdminUser", existAdminUser); return "loginSuccess"; } } }
package cn.itbaizhan.shop.index.action; import java.util.List; import cn.itbaizhan.shop.category.service.CategoryService; import cn.itbaizhan.shop.category.vo.Category; import cn.itbaizhan.shop.product.service.ProductService; import cn.itbaizhan.shop.product.vo.Product; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; /** * 首页访问的Action */ public class IndexAction extends ActionSupport{ // 注入一级分类的Service: private CategoryService categoryService; // 注入商品的Service private ProductService productService; public void setCategoryService(CategoryService categoryService) { this.categoryService = categoryService; } public void setProductService(ProductService productService) { this.productService = productService; } /** * 执行的访问首页的方法: */ public String execute(){ // 查询所有一级分类集合 List<Category> cList = categoryService.findAll(); // 将一级分类存入到Session的范围: ActionContext.getContext().getSession().put("cList", cList); // 查询热门商品: List<Product> hList = productService.findHot(); // 保存到值栈中: ActionContext.getContext().getValueStack().set("hList", hList); // 查询最新商品: List<Product> nList = productService.findNew(); // 保存到值栈中: ActionContext.getContext().getValueStack().set("nList", nList); return "index"; } }
五,相关作品展示
基于Java开发、Python开发、PHP开发、C#开发等相关语言开发的实战项目
基于Nodejs、Vue等前端技术开发的前端实战项目
基于微信小程序和安卓APP应用开发的相关作品
基于51单片机等嵌入式物联网开发应用
基于各类算法实现的AI智能应用
基于大数据实现的各类数据管理和推荐系统