亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? orderejb.java

?? JAVA 2應用編程150例
?? JAVA
字號:
package order.ejb;
import order.common.*;
import java.sql.*;
import javax.sql.*;
import java.util.*;
import javax.ejb.*;
import javax.naming.*;
public class OrderEJB implements EntityBean{
  public String order_id; // 定購編號
  public String user_id; // 用戶帳號
  public int totalPrice; // 訂單價格
  public ArrayList orderItems; // 訂單項目的數(shù)組對象
  private Connection con;
  private String dbJndi="java:comp/env/jdbc/ExampleDB";
  // 連接數(shù)據(jù)庫的id,password
  private String dbId="guest";
  private String dbPassword="guest123";
  private EntityContext context;
 // 取得數(shù)據(jù)庫連接
  public void setEntityContext(EntityContext context){
    this.context=context;
    try{
      getConnection();
}
catch(Exception ex){
      throw new EJBException("Connect to DB failed:"+ex.getMessage());
     }
   }
  // 釋放數(shù)據(jù)庫連接
  public void unsetEntityContext(){
    try{
      con.close();
}
catch(SQLException ex){
      throw new EJBException("Close DB Connection failed:"+ex.getMessage());
    }
  }
// 添加訂單到ordertbl表,添加訂單細目到itemtbl表
  public String ejbCreate(String user_id, int totalPrice, ArrayList orderItems)
    throws CreateException{
     if(orderItems==null||orderItems.size()==0)
     throw new CreateException("ejbCreate exception : no any item");
    try{// 取得訂單編號
      this.order_id=genOrder_id();
        // 添加一筆訂單到ordertbl表格 
      insertOrder(this.order_id, user_id, totalPrice);
       // 添加訂單細目到itemtbl表格
      insertItems(orderItems);
}
catch(Exception ex){
      throw new EJBException("ejbCreate exception: "+ex.getMessage());
    }
    this.user_id=user_id;
    this.totalPrice=totalPrice;
    this.orderItems=orderItems;
   // 返回訂單編號 
    return order_id;
  }
  public void ejbPostCreate(String user_id,
    int totalPrice, ArrayList orderItems){ 
  } 
// 通過一個主鍵查找訂單
  public String ejbFindByPrimaryKey(String orderId)throws FinderException{
    boolean result;
    try{
      result=selectByPrimaryKey(orderId);
}
catch(Exception ex){
     throw new EJBException("ejbFindByPrimaryKey exception:"+ex.getMessage());
    }
    if(result)
      return orderId;
    else
      throw new ObjectNotFoundException("Row for id "+orderId+" not found.");
  }
// 根據(jù)訂購的賬號查找一個訂購者的所有訂單
  public Collection ejbFindByUserId(String userId)
    throws FinderException {
    Collection result;
    try{
      result=selectByUserId(userId);
}
catch(Exception ex){
      throw new EJBException(ex.getMessage());
     }
    if(result.isEmpty()){
      throw new ObjectNotFoundException("No rows found.");
}
else{
      return result;
        }
     }
// 查找所有訂單
  public Collection ejbFindAll()throws FinderException {
    Collection result;
    try{
      result=selectAll();
}
catch(Exception ex){
      throw new EJBException(ex.getMessage());
    }
    if(result.isEmpty()){
      throw new ObjectNotFoundException("No rows found.");
}
else{
      return result;
      }
  }
 // 讀取數(shù)據(jù)庫訂單內容和訂單細目到內存字段變量
  public void ejbLoad(){
    try{
      loadOrder();
      loadItems();
}
catch(Exception ex){
      throw new EJBException("ejbLoad exception:"+ex.getMessage()+".....");
    }
  }
 // 寫入內存字段變量到數(shù)據(jù)庫表
  public void ejbStore(){
    try{
      storeOrder();
      deleteItems();
      insertItems(orderItems);
}
catch(Exception ex)
{
      throw new EJBException("ejbLoad exception:"+ex.getMessage());
    }
  }
  // 獲得訂單細目
  public ArrayList getOrderItems(){
    return orderItems;
  }
// 取得用戶id
  public String getUser_id(){
    return user_id;
  }
 // 獲得訂單總價
  public int getTotalPrice(){
    return totalPrice;
  }
  // 設定訂單總價
  public void setTotalPrice(int totalPrice){
    this.totalPrice=totalPrice;
  }
   // 設定訂單編號
  public String getOrder_id(){
    return order_id;
  }
   // 設定訂單細目
  public void setOrderItems(ArrayList orderItems){
    if(orderItems==null||orderItems.size()==0)
      throw new EJBException("setOrderItems exception : no any item");
    this.orderItems=orderItems;
  }
// 在激活執(zhí)行前,先去的主鍵
  public void ejbActivate(){
    order_id=(String)context.getPrimaryKey();
  }
// 鈍化,將Bean實例放回Bean池
  public void ejbPassivate(){
    order_id=null;
  }
// 刪除訂單和訂單細目
  public void ejbRemove(){
    try{
      deleteOrder();
      deleteItems();
}
catch(Exception ex){
      throw new EJBException("ejbRemove exception:"+ex.getMessage());
    }
  }  
  // 取得數(shù)據(jù)庫連結
  private void getConnection() throws NamingException, SQLException{
    InitialContext ic=new InitialContext();
    DataSource ds=(DataSource) ic.lookup(dbJndi);
    con= ds.getConnection(dbId, dbPassword);
  }
  // 取得訂單編號
  private String genOrder_id() throws SQLException{
    ResultSet rs;
    String order_id;
    String selectStatement ="select order_id "+"from OrderTBL where order_id=? ";
    PreparedStatement ps = con.prepareStatement(selectStatement);
    try{      
      do{
        order_id=OrderId.genOrderId();
        ps.setString(1, order_id);
        rs=ps.executeQuery();
      }while(rs.next());
      return order_id;
}
finally{  
      ps.close();
     }    
  }
  // 插入訂單到ordertbl
  private void insertOrder(String order_id, String user_id, int totalPrice)
    throws SQLException{
    String insertStatement ="insert into OrderTBL values(? ,? ,?)";
    PreparedStatement ps= con.prepareStatement(insertStatement);
    try{
      ps.setString(1, order_id);
      ps.setString(2, user_id);
      ps.setInt(3, totalPrice);
      ps.executeUpdate();
}
finally{  
      ps.close();
     }      
   }
// 插入訂單細目到itemtbl
  private void insertItems(ArrayList orderItems) throws SQLException{
    String insertStatement ="insert into ItemTBL values(? ,? ,?)";
    PreparedStatement ps=con.prepareStatement(insertStatement);
    try{ 
      // 逐筆將訂單細目新增至ITEMTBL表格    
      ps.setString(1, this.order_id);  
      for(int i=0; i<orderItems.size(); i++){
        OrderItem item=(OrderItem)orderItems.get(i);
        ps.setString(2, item.getProduct_id());
        ps.setInt(3, item.getQuantity());
        ps.executeUpdate();
      }
}
finally{  
      ps.close();
    }      
  }
  private boolean selectByPrimaryKey(String primaryKey) throws SQLException{
    String selectStatement ="select order_id "+"from OrderTBL where order_id=?";
    PreparedStatement ps =con.prepareStatement(selectStatement);
    try{  
      ps.setString(1, primaryKey);
      ResultSet rs=ps.executeQuery();
      return rs.next();
}
finally{  
      ps.close();
    }
  }
  private Collection selectAll() throws SQLException{
    String sqlStatement="select order_id from OrderTBL";
    PreparedStatement ps=con.prepareStatement(sqlStatement);
    try{
      ResultSet rs=ps.executeQuery();
      ArrayList al=new ArrayList();
      while(rs.next()){
        String id=rs.getString(1);
        al.add(id);
      }
      return al;
    }finally{  
      ps.close();
    }      
  }
  private Collection selectByUserId(String userId) throws SQLException{
    String sqlStatement="select order_id from OrderTBL "+"where user_id=?";
    PreparedStatement ps=con.prepareStatement(sqlStatement);
    try{  
      ps.setString(1, userId);
      ResultSet rs=ps.executeQuery();
      ArrayList al=new ArrayList();
      while(rs.next()){
        String id=rs.getString(1);
        al.add(id);
      }
      return al;
}
finally{
      ps.close();
    }
  }
   // 刪除一筆訂單細目
  private void deleteItems() throws SQLException{
    String deleteStatement = "delete from ItemTBL  "+"where order_id=?";
    PreparedStatement ps =con.prepareStatement(deleteStatement);
    try{
      ps.setString(1, order_id);
      ps.executeUpdate();
}
finally{  
      ps.close();
    }  
  }
  // 刪除一筆訂單
  private void deleteOrder() throws SQLException{
    String deleteStatement = "delete from OrderTBL  "+"where order_id=?";
    PreparedStatement ps =con.prepareStatement(deleteStatement);
    try{
      ps.setString(1, order_id);
      ps.executeUpdate();
}
finally{  
      ps.close();
    }  
  }
// 讀取目前的訂單記錄
  private void loadOrder() throws SQLException{
String selectStatement ="select user_id, totalPrice "
+"from OrderTBL where order_id=? ";
    PreparedStatement ps= con.prepareStatement(selectStatement);
    try{
      ps.setString(1, order_id);
      ResultSet rs=ps.executeQuery();
      if(rs.next()){
        user_id=rs.getString(1);
        totalPrice=rs.getInt(2);
      }
      else{
        throw new NoSuchEntityException(
          order_id+" not found.");
      }
}
finally{  
      ps.close();
    }  
  }
// 讀取目前的訂單細目記錄
  private void loadItems()throws SQLException{
    String selectStatement ="select product_id, quantity "+
      "from ItemTBL where order_id=? "+"order by product_id";
    PreparedStatement ps=con.prepareStatement(selectStatement);
    try{        
      ps.setString(1, order_id);
      ResultSet rs=ps.executeQuery();
      orderItems=new ArrayList();
      while(rs.next()){
        String product_id=rs.getString(1);
        int quantity=rs.getInt(2);
        orderItems.add( new OrderItem(order_id, product_id, quantity));
      }
}
finally{  
      ps.close();
    }  
  }
// 更新訂單記錄
  private void storeOrder() throws SQLException{
    String updateStatement ="update OrderTBL set user_id=?, totalPrice=? "+
      "where order_id=?";
    PreparedStatement ps=con.prepareStatement(updateStatement);
    int rowCount;
    try{
      ps.setString(1, user_id);
      ps.setInt(2, totalPrice);
      ps.setString(3, order_id);
      rowCount=ps.executeUpdate();
}
finally{
      ps.close();
      }
    if(rowCount == 0){
      throw new EJBException("Storing "+order_id+ " failed.");
    }
  }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区黄色| 国产精品短视频| 麻豆国产精品视频| 久久综合久久99| 国产99一区视频免费| 亚洲日穴在线视频| 在线播放亚洲一区| 国产尤物一区二区在线| 国产精品成人免费精品自在线观看| 91视频精品在这里| 午夜欧美在线一二页| 久久久精品中文字幕麻豆发布| 成人黄色片在线观看| 亚洲国产视频一区| www日韩大片| 91免费看`日韩一区二区| 日韩高清不卡一区二区三区| 国产亚洲欧洲一区高清在线观看| www.久久精品| 蜜乳av一区二区| 国产精品色呦呦| 精品视频一区三区九区| 九九九久久久精品| 亚洲欧美日韩系列| 欧美一区二区三区性视频| 成人天堂资源www在线| 日韩和欧美的一区| 国产精品网站在线观看| 91精品国产手机| 99久久免费视频.com| 男人的天堂久久精品| 中文字幕一区av| 日韩免费成人网| 欧美性猛交xxxx乱大交退制版| 老司机精品视频导航| 亚洲免费av高清| 国产亚洲一区二区三区四区 | 国产精华液一区二区三区| 亚洲蜜臀av乱码久久精品蜜桃| 精品久久久久久久久久久久包黑料| 97精品电影院| 国产成人一区在线| 蜜臀av一区二区在线观看| 一区二区三区四区乱视频| 久久夜色精品国产噜噜av| 欧美丰满高潮xxxx喷水动漫| 成人国产亚洲欧美成人综合网| 青青草成人在线观看| 樱花草国产18久久久久| 国产精品麻豆网站| 久久久久久久综合日本| 91精品国产91综合久久蜜臀| 色妞www精品视频| 成人午夜又粗又硬又大| 国产精品18久久久久| 另类人妖一区二区av| 一区二区在线免费观看| 亚洲国产精品激情在线观看| 日韩免费看的电影| 欧美高清一级片在线| 日本伦理一区二区| 成人开心网精品视频| 狠狠色丁香久久婷婷综| 捆绑调教一区二区三区| 婷婷综合另类小说色区| 尤物在线观看一区| 一区二区在线免费| 亚洲精品国产无套在线观| 亚洲婷婷综合色高清在线| 国产精品免费久久| 国产精品国产三级国产普通话99| 国产亚洲综合性久久久影院| 久久美女高清视频 | 久久亚洲二区三区| 日韩精品最新网址| 日韩精品最新网址| 欧美一级专区免费大片| 精品区一区二区| 久久影院午夜论| 久久久精品免费网站| 久久久久久久久蜜桃| 久久久久久久久久电影| 久久久精品日韩欧美| 欧美国产综合一区二区| 国产精品久久精品日日| 亚洲欧洲日产国产综合网| 亚洲欧美一区二区三区国产精品 | 911精品产国品一二三产区| 欧美在线综合视频| 91精品综合久久久久久| 日韩一级高清毛片| 国产午夜亚洲精品不卡| 中文字幕一区二区三区不卡在线| 亚洲柠檬福利资源导航| 亚洲第一福利视频在线| 欧美aa在线视频| 成人性生交大片免费| 色呦呦国产精品| 91麻豆精品91久久久久久清纯| 欧美成人vr18sexvr| 国产日韩欧美精品在线| 亚洲欧洲日韩av| 石原莉奈在线亚洲二区| 国产一区不卡在线| 91原创在线视频| 91精品国产一区二区三区香蕉| 久久久精品日韩欧美| 亚洲精品视频免费观看| 日韩高清一区在线| 成人午夜精品一区二区三区| 欧美日韩在线综合| 久久综合999| 一区二区三区在线视频免费观看| 日本麻豆一区二区三区视频| 国产精品 日产精品 欧美精品| 欧美最猛黑人xxxxx猛交| 欧美白人最猛性xxxxx69交| 亚洲日本在线观看| 久久精品999| 91久久精品一区二区| 欧美tk—视频vk| 一卡二卡三卡日韩欧美| 国产黄色精品视频| 欧美日韩国产美| 欧美国产1区2区| 日韩黄色小视频| 色综合久久中文综合久久牛| 欧美成人高清电影在线| 一区av在线播放| a在线播放不卡| 日韩欧美在线影院| 亚洲综合免费观看高清在线观看| 国产精品一区二区久久精品爱涩| 欧美人xxxx| 亚洲精品大片www| 成人网页在线观看| 久久影院视频免费| 免费观看在线综合色| 欧美色精品在线视频| 中文字幕中文字幕一区二区| 国产专区欧美精品| 欧美一卡在线观看| 亚洲成人免费观看| 91福利在线看| 亚洲人成7777| 不卡一区二区中文字幕| 久久久久99精品一区| 久久国产精品第一页| 91精品国产综合久久久久久| 亚洲国产精品久久久久婷婷884 | 韩国中文字幕2020精品| 欧美日韩综合在线| 亚洲综合免费观看高清在线观看| av电影在线观看一区| 国产精品无圣光一区二区| 国产精品888| 国产午夜精品久久久久久免费视 | 天天综合色天天| 色一区在线观看| 一区二区三区在线不卡| 色老头久久综合| 夜夜嗨av一区二区三区中文字幕| 99久精品国产| 亚洲欧美日韩小说| 欧美亚洲日本一区| 亚洲成va人在线观看| 欧美日韩精品专区| 午夜在线电影亚洲一区| 欧美日韩一区二区三区不卡| 亚洲国产精品久久人人爱| 欧美日韩和欧美的一区二区| 亚洲成人黄色小说| 91精品国产91热久久久做人人| 天天综合天天综合色| 欧美一级欧美三级| 国产一区久久久| 国产人久久人人人人爽| 成人午夜电影久久影院| 亚洲色图都市小说| 欧美视频在线观看一区| 图片区小说区区亚洲影院| 日韩欧美电影在线| 国产精品羞羞答答xxdd| 亚洲欧洲日韩在线| 欧美亚洲日本一区| 麻豆视频观看网址久久| 国产亚洲成av人在线观看导航 | 99久久99精品久久久久久| 亚洲免费在线播放| 欧美三级视频在线播放| 日本aⅴ免费视频一区二区三区| 精品国产91久久久久久久妲己| 国产美女久久久久| 亚洲欧美日韩国产综合在线| 欧美午夜不卡视频| 精品一区二区三区视频在线观看| 国产精品三级电影| 欧美系列日韩一区| 国产精品一级片| 亚洲永久精品大片|