⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sealdealservlet.java

📁 JAVA数据库编程实例源码及其一些Java基本介绍
💻 JAVA
字号:
package networkshopsystem;import javax.servlet.*;import javax.servlet.http.*;import java.io.*;import java.sql.*;import java.util.*;/** * Title:			网络商店的销售系统 * Description:			教学示范 * Copyright:			Copyright (c) 2003 * Company:			北京师范大学计算机系 * @author			孙一林 * @version			1.0 */public class sealdealServlet extends HttpServlet {  static final private String CONTENT_TYPE = "text/html; charset=GBK";  Connection connection = null;  Vector vector=new  Vector();   // 定义Vector向量获得存储顾客购买的商品  public void init() throws ServletException {  }  public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {    doPost(request, response);  }  public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {    response.setContentType(CONTENT_TYPE);    PrintWriter out = response.getWriter();    HttpSession session = request.getSession();    vector = (Vector)session.getAttribute("vector");      // 获得vector    // 输出sealDeal页面    out.println("<html>");    out.println("<head><title>sealDeal页面</title></head>");    out.println("<body bgcolor=#FFFFFF text=#000000>");    Vector buyproduct=new Vector();    buyproduct=vector;    String number=(String)session.getAttribute("number"); // 获得数据库中存货数目    int num=Integer.parseInt(number) ;    for(int i=0;i<buyproduct.size();i++) {      int p_id =Integer.parseInt(getValueAt(i,0).toString());       // 获得购买产品ID      int buy_number=Integer.parseInt(getValueAt(i,4).toString() ); // 获得购买产品的数目      String cus_name = request.getParameter("cus_name");    // 获得用户名      String cus_addr = request.getParameter("cus_addr");    // 获得用户地址      sealDeal(p_id,buy_number,cus_name, cus_addr);          // 调用处理数据库函数    }    out.println("交易成功!<br>");    out.println("<p align=center><a href=selectproductservlet>继续交易</a></p>");    out.println("</body></html>");  }  public void sealDeal(int id,int buynumber, String name, String addr) {    try {      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");      String url = "jdbc:odbc:shop";      connection = DriverManager.getConnection(url);      String sql = "select * from product_table where product_id = " + id;      Statement statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);      ResultSet rs = statement.executeQuery(sql);      rs.first();      int p_quantity = rs.getInt("product_quantity");     // 获得数据库中编号为id的产品数量      p_quantity=p_quantity-buynumber;      statement.close();      // 更新表product_table中顾客购买后的产品数量product_quantity      sql = "update product_table set product_quantity = " + p_quantity + " where product_id = " + id;      statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);      statement.executeUpdate(sql);      statement.close();      sql = "select * from sell_table where product_id = " + id;      statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);      rs=statement.executeQuery(sql);      rs.first();      int product_price = rs.getInt("product_price");      int sell_number=rs.getInt("sell_number") ;      // 取得原数据库表sell_table中的sell_number      statement.close();      // 更新表sell_table中的sell_number及sell_profit      sell_number=sell_number+buynumber;      sql = "update sell_table set sell_number= " + sell_number+",sell_profit="+sell_number*product_price + " where product_id = " + id;      statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);      statement.executeUpdate(sql);      statement.close();      // 向cart_table中插入数据      sql = "insert into cart_table (product_id,buy_number,customer_name,customer_address) values (" + id +","+ buynumber+", '" + name + "', '" + addr + "')";      statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);      statement.executeUpdate(sql);    }    catch(Exception ex) {            // 异常处理      ex.printStackTrace();    }  }  public Object getValueAt(int row, int column) {    if(!vector.isEmpty()) {      return ((Vector) vector.elementAt(row)).elementAt(column);    }    else {      return null;    }  }  public void destroy() {  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -