基于WEB的网上购物系统主要功能包括:前台用户登录退出、注册、在线购物、修改个人信息、后台商品管理等等。本系统结构如下:
(1)商品浏览模块:
        实现浏览最新商品
        实现按商品名称浏览商品
        实现根据商品分类浏览商品
(2)购物车:
        登录后可以将商品加入购物车,或从购物车移除商品
(3)登录、注册:
        购物前需要登录,如果没有账号则可以先注册
(4)提交、查询订单:
        商品加入购物车后可以提交订单,也可以查看自己的所有订单

  (5) 后台管理员模块
        用户登录功能:通过账号登录系统。
        商品分类管理功能:可以查询所有商品分类,添加新的商品分类,删除已有的分类
        商品管理功能:可以查询所有商品,添加新商品,删除已有商品
        订单管理功能:可以查询所有订单,对未发货的订单进行发货处理
        用户管理功能:可以查询所有用户,查询指定用户,删除用户
        修改登录密码功能:修改管理员的登录密码

项目访问路径:
  前台:http://localhost:8080/webShopping
  后台:http://localhost:8080/webShopping/admin/login.jsp

用户输入正确的信息后即可进入重新设置密码页面,进行秘密的重置。

找回密码关键代码如下:

public String findUser()

{     String username= user.getUsername();

String name= user.getName();

String sex= user.getSex();

String post= user.getPost();

String address= user.getAddress();

String phone= user.getPhone();

String email= user.getEmail();

User user=this.service.findUserByinfo(username, name,sex,phone, post, address, email);  //查询是否有该用户信息

if(user==null){

ActionContext.getContext().put("findUsernull", "没有该用户信息!");

return "findUsernull";

}else{

ActionContext.getContext().getSession().put("findUser", user);

return "findUser";

}

用户登录关键代码如下:

public String login(){

String username= user.getUsername();

String password=user.getPassword();

User user = service.getUserByLoginNameAndPassword(username,password);

//搜索是否存在该用户

if(user == null){

ActionContext.getContext().put("message", "用户名或密码错误");

return "login";

}else{

ActionContext.getContext().getSession().put("user", user);

return "index";

}

}

商品添加到购物车关键代码如下:

public String execute() throws Exception {

int commodityId= commodity.getCommodityId();

Map session =(Map) ActionContext.getContext().getSession();

Commodity commoditys = commodityService.findCommodityById (commodityId); //获得商品信息

if(commoditys.getCommodityLeaveNum()==0){

ActionContext.getContext().getSession().put("comnull","商品已无货!");

return "error";

}

else{

List<Commodity> car = null;        //声明一个购物车

if(session.get("car") == null) {       //如果session中不存在购物车

car = new ArrayList<Commodity>();   //新建一个ArrayList实例

}

else {

car = (List<Commodity>)session.get("car");  //取得购物车 }

}

commoditys.setCommodityLeaveNum(commoditys.getCommodityLeaveNum()-1);

commodityService.update(commoditys);

session.put("car", car);//将购物车保存在session中

return "success";        }

源码及原文链接:http://javadao.xyz/forum.php?mod=viewthread&tid=15

基于WEB的网上购物系统-ssh源码的更多相关文章

  1. Java Web之网上购物系统(注册、登录、浏览商品、添加购物车)

    眼看就要期末了,我的专业课也迎来了第二次的期末作业---------<网上购物系统>.虽然老师的意图是在锻炼我们后台的能力,但是想着还是不利用网上的模板,准备自己写,以来别人写的静态页看不 ...

  2. Java Web之网上购物系统(提交订单、查看我的订单)

    作业终于做完了,好开心......虽然这一周经历不是那么顺利,但是觉得还是收获了不少,有过想哭的冲动,代码不会写,事情办不好,各种发愁.空间里发小发了带父母出去游玩的照片,瞬间能量值不知道是被击退的多 ...

  3. 基于Struts2开发快递收发系统 毕业设计 源码

    基于Struts2开发快递收发系统 开发环境:  Windows操作系统 开发工具:Eclipse/MyEclipse+Jdk+Tomcat6+MySql数据库 运行效果图: 此源码经过详细测试 保证 ...

  4. 基于SSM开发在线考试系统 Java源码

    实现的关于在线考试的功能有:用户前台:用户注册登录.查看考试信息.进行考试.查看考试成绩.查看历史考试记录.回顾已考试卷.修改密码.修改个人信息等,后台管理功能(脚手架功能不在这里列出),科目专业管理 ...

  5. 基于web的网上书城系统开发-----需求分析

    网上书店管理系统主要针对中小型书店,图书管理员将图书信息整理归类发布到网上.,用户登录该网站后进行浏览图书信息.购买等活动. 前台客户输入的数据交给后台数据库处理并及时反馈给双方.客户和管理者拥有相应 ...

  6. 基于web的网上书城系统开发-----登录注册扩展-------验证码功能

    public class CheckCode extends HttpServlet { private static final long serialVersionUID = 1L; privat ...

  7. 基于web的网上书城系统开发-----登录注册

    注册功能实现 signup.jsp //时间实现 function showLocale(objD) { var str,colorhead,colorfoot; var yy = objD.getY ...

  8. 基于Spring MVC + Spring + MyBatis的【网上购物系统】

    资源下载:https://download.csdn.net/download/weixin_44893902/45601185 练习点设计:修改.删除 一.语言和环境 实现语言:JAVA语言. 环境 ...

  9. .Net Core 认证系统之基于Identity Server4 Token的JwtToken认证源码解析

    介绍JwtToken认证之前,必须要掌握.Net Core认证系统的核心原理,如果你还不了解,请参考.Net Core 认证组件源码解析,且必须对jwt有基本的了解,如果不知道,请百度.最重要的是你还 ...

随机推荐

  1. Flutter 你需要知道的那些事 01

    公众号「AndroidTraveler」首发. 1. width 属性 对于设置控件宽度填充父控件这件事情,在 Android 里面,只需要设置 MATCH_PARENT 即可. 但是在 Flutte ...

  2. itest(爱测试) 4.2.0 发布,开源BUG 跟踪管理 & 敏捷测试管理软件

    itest 入选 2019 年度最受欢迎开源中国软件 开源工具的发展,离不开你我的支持,需要您投上宝贵的一票  去投票 v4.2.0下载地址 :itest下载 itest 简介:查看简介 itest ...

  3. Java面试题-基础篇二(干货)

    11.是否可以从一个static方法内部发出对非static方法的调用? 不可以.因为非static方法是要与对象关联在一起的,必须创建一个对象后,才可以在该对象上进行方法调用,而static方法调用 ...

  4. CentOS离线安装Rust

    条件所限,无法在线连接外网,或是下载慢,容易中断时,可以采用. 一,下载离线安装包 https://forge.rust-lang.org/other-installation-methods.htm ...

  5. 1. java 基本规则

    一.命名规范 1. 类名规范:首字母大写,后面每个单词首字母大写(大驼峰式),HelloWorld 2. 变量名规范:首字母小写,后面每个单词首字母大写(小驼峰式),helloWorld 3. 方法名 ...

  6. vue组件name的作用小结

    我们在写vue项目的时候会遇到给组件命名 这里的name非必选项,看起来好像没啥用处,但是实际上这里用处还挺多的 ? 1 2 3 export default {    name:'xxx' } 1. ...

  7. c# WF 第11节 RichTextBox

    本节内容: 1:RichTextBox的简介: 2:实例 1:RichTextBox的简介: 2:实例 实现实例: 1个RichTextBox  2个label  9 个button 步骤一: 步骤2 ...

  8. day53_9_17 django数据库表关联,路由和视图

    一.数据库的关系建立. 在原生的数据库语句中,建立表与表之间的联系,就是添加一个字段,将联系的表的id值添加到该字段中. django所作的也就是这些. 以图书管理系统为例,图书管理系统有四张表:书籍 ...

  9. Conda和Python的国内安装源

    Conda和Python的国内安装源 Windows系统: 更换python国内源的方法. 在"C:\Users[xxxx]\pip\pip.ini"文件中配置如下内容(没有则新建 ...

  10. O2O 线下业务 和 线上业务,在特征工程上的差异

    人工智能在外卖送达时预估上的应用 这篇讲清楚了 O2O 线下业务 和 线上业务,在特征工程上的差异: