0023Java程序设计-报刊订阅管理系统的设计与实现2

简介: 0023Java程序设计-报刊订阅管理系统的设计与实现

1.描述:用户注册成功账号并登录系统之后,通过主页展示的报刊或按报刊类别找到所需购买的报刊,通过点击报刊图片,打开报刊详细信息界面,浏览报刊的基本信息,然后若用户想购买报刊,输入购买数量,点击购买按钮,则可完成加入购物车操作。

2.如图5-4所示:

public String addToCart()
  {
  HttpServletRequest req=ServletActionContext.getRequest();
  int goodsId=Integer.parseInt(req.getParameter("goodsId"));
int quantity=Integer.parseInt(req.getParameter("quantity"));
  TGoods goods=goodsDAO.findById(goodsId);
  TOrderItem orderItem=new TOrderItem();
  orderItem.setGoods(goods);
orderItem.setGoodsQuantity(quantity);
Map session= ServletActionContext.getContext().getSession();
Cart cart = (Cart)session.get("cart");
cart.addGoods(goodsId, orderItem);
session.put("cart",cart);
this.setPath("myCart.action");
return "succeed";
}

1.描述:在用户购买的报刊先存放在购物车中,点击菜单中的“我的购物车”,即可查看用户当前购物车中的内容,用户可以实现报刊数量的增加、减少,删除某一件报刊和继续添加报刊及清空购物车操作。

2.程序效果如图5-5所示。

public String orderSubmit()
  {
    HttpServletRequest req=ServletActionContext.getRequest();
    Map session= ServletActionContext.getContext().getSession();
    Cart cart = (Cart)session.get("cart");
    TUser user11=(TUser)session.get("user");
    TUser user=userDAO.findById(user11.getUserId());
    int dingdanzongjia=0;
      String userLeixing=user.getUserLeixing();
      if(userLeixing.equals("普通会员"))
      {
        dingdanzongjia=(int)((cart.getTotalPrice() * 1.0));
      }
      if(user.getUserJine()<dingdanzongjia)
      {
        this.setMessage("您的账户余额不足,请先联系管理员充值后付款");
      this.setPath("qiantai/default.jsp");
      return "succeed";
      }
    TOrder order=new TOrder();
    order.setOrderBianhao(new SimpleDateFormat("yyyyMMddhhmmss").format(new Date()));
order.setOrderDate(newSimpleDateFormat("yyyy-MM-ddhh:mm:ss").format
(new Date()));
    order.setOrderZhuangtai("待受理");//未受理
    order.setOrderUserId(user.getUserId());
    order.setOrderJine(dingdanzongjia);
    order.setOdderSonghuodizhi(req.getParameter("odderSonghuodizhi"));
    orderDAO.save(order);
    for (Iterator it = cart.getItems().values().iterator(); it.hasNext();)
    {
      TOrderItem orderItem = (TOrderItem) it.next();
      orderItem.setOrderId(order.getOrderId());
    orderItem.setGoodsId(orderItem.getGoods().getGoodsId());
    orderItemDAO.save(orderItem);
    }
    cart.getItems().clear();
    session.put("cart", cart);
    Map request=(Map)ServletActionContext.getContext().get("request");
    request.put("order", order);
    user.setUserJine(user.getUserJine()-dingdanzongjia);
    userDAO.attachDirty(user);
    return ActionSupport.SUCCESS;
  }

开发环境

开发工具:idea、Navicat

数据库:MySQL8.0

环境配置:jdk1.8 、Tomcat8.5

开发人员:IT012201

目录
相关文章
|
11天前
|
安全 Cloud Native Java
Java 模块化系统(JPMS)技术详解与实践指南
本文档全面介绍 Java 平台模块系统(JPMS)的核心概念、架构设计和实践应用。作为 Java 9 引入的最重要特性之一,JPMS 为 Java 应用程序提供了强大的模块化支持,解决了长期存在的 JAR 地狱问题,并改善了应用的安全性和可维护性。本文将深入探讨模块声明、模块路径、访问控制、服务绑定等核心机制,帮助开发者构建更加健壮和可维护的 Java 应用。
77 0
|
17天前
|
NoSQL Java 关系型数据库
超全 Java 学习路线,帮你系统掌握编程的超详细 Java 学习路线
本文为超全Java学习路线,涵盖基础语法、面向对象编程、数据结构与算法、多线程、JVM原理、主流框架(如Spring Boot)、数据库(MySQL、Redis)及项目实战等内容,助力从零基础到企业级开发高手的进阶之路。
111 1
|
1月前
|
Java 数据库 前端开发
分享44个java系统,总有一款适合您
分享44个微信小程序,总有一款适合您
38 0
|
1月前
|
消息中间件 Java Kafka
Java 事件驱动架构设计实战与 Kafka 生态系统组件实操全流程指南
本指南详解Java事件驱动架构与Kafka生态实操,涵盖环境搭建、事件模型定义、生产者与消费者实现、事件测试及高级特性,助你快速构建高可扩展分布式系统。
157 7
|
1月前
|
安全 Oracle Java
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
189 0
JAVA高级开发必备·卓伊凡详细JDK、JRE、JVM与Java生态深度解析-形象比喻系统理解-优雅草卓伊凡
|
2月前
|
存储 Java 数据库连接
java 初学者必看的系统知识结构图详解
本文详解Java知识结构图,涵盖Java语言基础、JVM原理、集合框架、并发编程、网络通信及主流框架(如Spring Boot、MyBatis),并结合学生信息管理系统实例,帮助初学者构建完整知识体系,提升实战开发能力。
93 0
|
2月前
|
存储 Java 关系型数据库
Java Swing 开发的五星级酒店客房预订与管理系统源码
本文介绍了基于Java Swing的酒店管理系统开发方案。系统采用Java Swing构建GUI界面,结合MySQL数据库,实现预订管理、前台服务、客房管理、客户关系维护等功能模块。文章详细展示了登录界面、开房操作等核心功能的代码实现,包括数据验证和业务逻辑处理。该系统具有跨平台性,能有效提升酒店运营效率,为开发者提供GUI设计和数据库开发的实践案例。技术方案涵盖IntelliJ IDEA开发环境、Jform Designer插件辅助设计等工具链,适合中小型酒店管理需求。
145 0
|
3月前
|
NoSQL Java Shell
2025服务端java搭建篇:蜻蜓I即时通讯系统私有化部署深度指南-优雅草卓伊凡|麻子|贝贝
2025服务端java搭建篇:蜻蜓I即时通讯系统私有化部署深度指南-优雅草卓伊凡|麻子|贝贝
172 8
2025服务端java搭建篇:蜻蜓I即时通讯系统私有化部署深度指南-优雅草卓伊凡|麻子|贝贝
|
3月前
|
Java 调度 流计算
基于Java 17 + Spring Boot 3.2 + Flink 1.18的智慧实验室管理系统核心代码
这是一套基于Java 17、Spring Boot 3.2和Flink 1.18开发的智慧实验室管理系统核心代码。系统涵盖多协议设备接入(支持OPC UA、MQTT等12种工业协议)、实时异常检测(Flink流处理引擎实现设备状态监控)、强化学习调度(Q-Learning算法优化资源分配)、三维可视化(JavaFX与WebGL渲染实验室空间)、微服务架构(Spring Cloud构建分布式体系)及数据湖建设(Spark构建实验室数据仓库)。实际应用中,该系统显著提升了设备调度效率(响应时间从46分钟降至9秒)、设备利用率(从41%提升至89%),并大幅减少实验准备时间和维护成本。
258 0
|
3月前
|
监控 安全 Java
现代 Java 技术开发宠物管理系统实操案例解析
本文通过一个宠物管理系统项目,深入讲解Java中的封装、继承和多态特性。系统基于Java 8+开发,结合Stream API与Lambda表达式,展示现代Java技术的实际应用。封装部分使用Record类简化数据模型,继承设计通过抽象类与接口实现代码复用,多态则通过统一接口处理不同宠物行为。案例涵盖模板方法模式、策略模式等设计思想,并提供最佳实践建议,解决常见问题如继承滥用和类型转换异常。资源地址:[https://pan.quark.cn/s/14fcf913bae6](https://pan.quark.cn/s/14fcf913bae6)。
108 0