购物车bean类

原创 2007年09月28日 08:38:00
bean

package com.hygj.bean;

public class Products {
  private int productId;
  private String productName;
  private float unitPrice;

  public Products() {
  }
  public int getProductId() {
    return productId;
  }
  public String getProductName() {
    return productName;
  }
  public float getUnitPrice() {
    return unitPrice;
  }
  public void setUnitPrice(float unitPrice) {
    this.unitPrice = unitPrice;
  }
  public void setProductName(String productName) {
    this.productName = productName;
  }
  public void setProductId(int productId) {
    this.productId = productId;
  }

}

--------

package com.hygj.bean;
//存储具体购买的商品信息bean
public class Shopping {
  private int productId;
  private String productName;
  private float unitPrice;
  private int shuliang;
  public Shopping() {
  }
  public int getProductId() {
    return productId;
  }
  public void setProductId(int productId) {
    this.productId = productId;
  }
  public String getProductName() {
    return productName;
  }

  public void setProductName(String productName) {
    this.productName = productName;
  }
  public int getShuliang() {
    return shuliang;
  }
  public void setShuliang(int shuliang) {
    this.shuliang = shuliang;
  }
  public float getUnitPrice() {
    return unitPrice;
  }
  public void setUnitPrice(float unitPrice) {
    this.unitPrice = unitPrice;
  }

}

-------------------------------------

util

package com.hygj.util;

import java.sql.*;
import com.hygj.bean.Products;

public class DbUtil {
  private Connection conn = null;
  private PreparedStatement pt = null;
  private ResultSet rs = null;
  private java.util.Vector all = null;
  private Products product = null;
  private int kucun;
  public DbUtil() {
    try {
      Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    }
    catch (ClassNotFoundException ex) {
    }
  }

  public void setConn() {
    String url =
        "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=northwind";
    try {
      conn = DriverManager.getConnection(url, "sa", "");
      System.out.println("conn ok");
    }
    catch (SQLException ex) {
    }
  }

  public void closeConn() {
    if (conn != null) {
      try {
        conn.close();
        System.out.println("conn  close");
      }
      catch (SQLException ex) {
      }
    }
  }

  public java.util.Vector chaxun() {
    setConn();
    String sql = "select ProductID, ProductName, UnitPrice FROM Products";
    try {
      all = new java.util.Vector();
      pt = conn.prepareStatement(sql);
      rs = pt.executeQuery();
      while (rs.next()) {
        product = new Products();
        product.setProductId(rs.getInt(1));
        product.setProductName(rs.getString(2));
        product.setUnitPrice(rs.getFloat(3));
        all.add(product);
      }
    }
    catch (SQLException ex) {
    }
    finally {
      try {
        rs.close();
        pt.close();
        closeConn();
      }
      catch (SQLException ex1) {
      }
    }
    return all;
  }

  public Products chaxun(int id) {
    setConn();
    String sql =
        "select ProductID, ProductName, UnitPrice FROM Products where productId=?";
    try {
      pt = conn.prepareStatement(sql);
      pt.setInt(1, id);
      rs = pt.executeQuery();
      if (rs.next()) {
        product = new Products();
        product.setProductId(rs.getInt(1));
        product.setProductName(rs.getString(2));
        product.setUnitPrice(rs.getFloat(3));
      }
    }
    catch (SQLException ex) {
    }
    finally {
      try {
        rs.close();
        pt.close();
        closeConn();
      }
      catch (SQLException ex1) {
      }
    }
    return product;
  }

//验证库存
  public int chaKucun(int id) {
    setConn();
    try {
      pt = conn.prepareStatement(
          "SELECT UnitsInStock FROM Products WHERE ProductID=?");
      pt.setInt(1, id);
      rs = pt.executeQuery();
      if (rs.next()) {
        kucun = rs.getInt(1);
      }
    }
    catch (SQLException ex) {
    }
    finally {
      try {
        rs.close();
        pt.close();
        closeConn();
      }
      catch (SQLException ex1) {
      }

    }
    return kucun;
  }

  public static void main(String[] args) {
    DbUtil db = new DbUtil();
    System.out.println(db.chaKucun(2));
  }

}
------------------------------------------

index.jsp

显示商品信息

商品编号 商品名称 商品单价 购买
<%=product.getProductId()%> <%=product.getProductName()%> <%=product.getUnitPrice()%> 购买

 

goumai.jsp

请输入数量

 

商品名称:
商品单价:
商品数量:

CarServlet.jsp

 

package com.hygj.servlet;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class CarServlet extends HttpServlet {
  private static final String CONTENT_TYPE = "text/html; charset=GBK";
  //Initialize global variables
  public void init() throws ServletException {
  }
  //Process the HTTP Get request
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setContentType(CONTENT_TYPE);
    request.setCharacterEncoding("gb2312");
    String id=request.getParameter("id");
    String name=request.getParameter("name");
    String price=request.getParameter("price");
    String shuliang=request.getParameter("shuliang");
  //  System.out.println(id+"  "+name+"  "+price+"  "+shuliang);
  //根据id来验证库存问题
  int kucun=new com.hygj.util.DbUtil().chaKucun(Integer.parseInt(id));
  if(kucun<Integer.parseInt(shuliang)){
    //可以转回goumai.jsp,但同时需要传递商品编号和错误信息
    response.sendRedirect("kucun_error.jsp");
  }
  else{
    //商品信息添加到购物车,有两种操作,
    //一:把每个商品作为单独的属性进行添加;二:把所有商品作为一个属性添加
    HttpSession session=request.getSession(true);
   // session.setAttribute(id,shuliang);不推荐
   //把每次购买的信息先存放到了bean类中,再把所有的信息存到集合中,把集合存到session 中
   //调用购买商品的bean类
   com.hygj.bean.Shopping goumai=new com.hygj.bean.Shopping();
   //添加数据
   goumai.setProductId(Integer.parseInt(id));
   goumai.setProductName(name);
   goumai.setUnitPrice(Float.parseFloat(price));
   goumai.setShuliang(Integer.parseInt(shuliang));
   //把goumai  bean添加到属性中
   //首先要判断是否已经购买过商品
   java.util.Vector maiguo=(java.util.Vector)session.getAttribute("shopping");
   if(maiguo==null){
     maiguo=new java.util.Vector();
   }
   maiguo.add(goumai);
   //重新设置一下属性
   session.setAttribute("shopping",maiguo);
   //转道新页面:购物车信息显示页面
   response.sendRedirect("car.jsp");
 }

  }
  //Process the HTTP Post request
  public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doGet(request, response);
  }
  //Clean up resources
  public void destroy() {
  }
}

kucun.jsp

库存不足,请重新购买

car.jsp

您购买的商品信息:

商品编号 商品名称 商品单价 商品数量 商品金额 修改数量 删除商品
<%=gouwu.getProductId()%> <%=gouwu.getProductName()%> <%=gouwu.getUnitPrice()%> <%=gouwu.getShuliang()%> <%=money%> 修改数量 删除商品
总金额:<%=sum%>


继续购买 清空购物车 结帐

ClearServlet.jsp

package com.hygj.servlet;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class ClearServlet extends HttpServlet {
  private static final String CONTENT_TYPE = "text/html; charset=GBK";
  //Initialize global variables
  public void init() throws ServletException {
  }
  //Process the HTTP Get request
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    response.setContentType(CONTENT_TYPE);
    HttpSession session=request.getSession(true);
    session.removeAttribute("shopping");
    response.sendRedirect("index.jsp");


  }
  //Process the HTTP Post request
  public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doGet(request, response);
  }
  //Clean up resources
  public void destroy() {
  }
}

<% } %>

 

 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

mvc(jsp+servlet+bean)购物车

  • 2010-05-27 16:19
  • 123KB
  • 下载

Ejb in action(四)——购物车实例演示有状态会话Bean

前面,我们介绍了一个入门实例,其实那就是无状态回话Bean的常用情况。 上一篇文章中,我们介绍了无状态会话Bean和有状态会话Bean的相关概念。为了加深大家对它们的理解,我们一起来实现一个有状态会...

PHP session购物车类

<?php class Cart{ public function Cart() { if(!isset($_SESSION['cart'])){ $_SESSION['cart'] = ...

购物车项目(一)——编写商品类

购物车项目(一)——编写商品类编写思路:1.设置商品属性 2.构造方法 3.封装 4.重写hashCode() 和equals() 方法 代码如下:package entity;//商品类 publi...

PHP的购物车类

仿写CodeIgniter的购物车类 购物车基本功能 1) 将物品加入购物车 2) 从购物车中删除物品 3) 更新购物车物品信息 【+1/-1】 4) 对购物车物品进行统计 1. 总项目 ...

PHP电商购物车(二:封装数据库操作类)

PHP电商购物车———封装数据库操作类         建立了数据库后,我们还是封装一个数据库的操作类吧(参考自付老师写的那个Mypdo,本文后再附加一篇PDO总结在学习总结模块)。     ...

php之购物车类思路及代码

<?php /* 购物车类 1.整站范围内,购物车--全局有效 解决:把购物车的信息,放在session里 2.既然全局有效,购物车的实例只有一个 解决:单例模式 技术选型:...
  • jek803
  • jek803
  • 2012-12-22 14:24
  • 4558

类购物车的全选反选效果

有时候我们需要点击一个按钮让所有的按钮被选中,当再次点击的时候,所有按钮取消选中 实例如下: _btnArray=[[NSMutableArray alloc] init];       ...
  • maiwc
  • maiwc
  • 2016-04-25 10:38
  • 772

PHP-SEESSION购物车类

之前练习session的时候封装的购物车类 原理也很简单 实例化对象,调用里面的方法,把数据库里的数组数据取出来,判断SEESION不存在的情况下,添加到二维数组里,在其他页面取出来,也就是购物车页...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)