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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? bmptradebean.java

?? java程序100例
?? JAVA
字號(hào):
package bmp;

import java.io.Serializable;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Vector;
import javax.ejb.CreateException;
import javax.ejb.DuplicateKeyException;
import javax.ejb.EJBException;
import javax.ejb.EntityBean;
import javax.ejb.EntityContext;
import javax.ejb.FinderException;
import javax.ejb.NoSuchEntityException;
import javax.ejb.ObjectNotFoundException;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

/**
 * <p>Title: 實(shí)現(xiàn)類(lèi)</p>
 * <p>Description: EJBean管理的JDBC持續(xù)性管理和事務(wù)管理;在這個(gè)文件中的代碼直接訪問(wèn)數(shù)據(jù)庫(kù);</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Filename: bmpTradeBean.java</p>
 * @author 杜江
 * @version 1.0
 */
public class bmpTradeBean implements EntityBean {
//設(shè)置是否打印控制臺(tái)
  final static private boolean VERBOSE = true;
//聲明實(shí)體上下文變量
  private EntityContext ctx;
  private String FundId;
  private double baseFunds;
  /**
   * 為EJBean設(shè)置實(shí)體EJB上下文
   * @參數(shù) ctx    EntityContext
   */
  public void setEntityContext(EntityContext ctx) {
    log("setEntityContext called");
    this.ctx = ctx;
  }
 //取消實(shí)體上下文設(shè)置
 public void unsetEntityContext() {
    log("unsetEntityContext (" + id() + ")");
    this.ctx = null;
  }
  //這是本類(lèi)必須實(shí)現(xiàn)的方法,在本例中沒(méi)有用到
   public void ejbActivate() {
    log("ejbActivate (" + id() + ")");
  }
 //這是本類(lèi)必須實(shí)現(xiàn)的方法,在本例中沒(méi)有用到
  public void ejbPassivate() {
    log("ejbPassivate (" + id() + ")");
  }
   /**
   * 從數(shù)據(jù)庫(kù)中加載EJB
   * @異常  javax.ejb.NoSuchEntityException 如果在數(shù)據(jù)庫(kù)中沒(méi)有找到Bean
   * @異常    javax.ejb.EJBException    通訊或系統(tǒng)錯(cuò)誤
   */
  public void ejbLoad() {
    log("ejbLoad: (" + id() +  ")");
    //聲明數(shù)據(jù)庫(kù)連接對(duì)象
    Connection con = null;
    //聲明SQL命令預(yù)處理對(duì)象
    PreparedStatement ps = null;
    //找到賬號(hào)主鍵
    FundId = (String) ctx.getPrimaryKey();
    try {
    	//獲取數(shù)據(jù)庫(kù)連接
      con = getConnection();
      //設(shè)置SQL命令,讀取記錄
      ps  = con.prepareStatement("select fund from tbl_Funds where id = ?");
      ps.setString(1, FundId);
      //執(zhí)行SQL
      ps.executeQuery();
      //獲取SQL結(jié)果
      ResultSet rs = ps.getResultSet();
      if (rs.next()) {
      	//取得數(shù)據(jù)
        baseFunds = rs.getDouble(1);
      } else {
        String error = "ejbLoad: beansTeadeBean (" + FundId + ") not found !";
        log(error);
        throw new NoSuchEntityException (error);
       }
    } catch (SQLException sqe) {
    	//數(shù)據(jù)庫(kù)異常處理
      log("SQLException:  " + sqe);
      throw new EJBException(sqe);
    } finally {
      cleanup(con, ps);
    }
  }
 /**
   * 數(shù)據(jù)庫(kù)中存入EJBean
   * @異常   javax.ejb.NoSuchEntityException     如果在數(shù)據(jù)庫(kù)中沒(méi)有找到Bean
   * @異常   javax.ejb.EJBException     通訊或系統(tǒng)錯(cuò)誤
   */
  public void ejbStore() {
    log("ejbStore (" + id() + ")");
    //聲明數(shù)據(jù)庫(kù)連接對(duì)象
    Connection con = null;
    //聲明SQL命令預(yù)處理對(duì)象
    PreparedStatement ps = null;
    try {
     //獲取數(shù)據(jù)庫(kù)連接
      con = getConnection();
      //設(shè)置SQL命令,更新數(shù)據(jù)庫(kù)
      ps = con.prepareStatement("update tbl_Funds set fund = ? where id = ?");
      ps.setDouble(1, baseFunds);
      ps.setString(2, FundId);
      //執(zhí)行SQL
      if (!(ps.executeUpdate() > 0)) {
        String error = "ejbStore: bmpTradeBean (" + FundId + ") not updated !";
        log(error);
        throw new NoSuchEntityException (error);
      }
    } catch(SQLException sqe) {
    	//數(shù)據(jù)庫(kù)次操作異常處理
      log("SQLException:  " + sqe);
      throw new EJBException (sqe);
    } finally {
      cleanup(con, ps);
    }
  }
  /**
   * 這個(gè)方法和"TblUserInfoBean.java"中定義的的Bean的"ejbCreate"方法相對(duì)應(yīng)
   * 這兩個(gè)方法的參數(shù)應(yīng)該相同。當(dāng)客戶(hù)端調(diào)用"TblUserInfoHome.create()"方法時(shí),EJB容器
   * 會(huì)找到EJBean的實(shí)例,并調(diào)用它的"ejbCreate()"方法。
   * 對(duì)容器管理的ejb,ejbCreate方法返回為null,而bean管理的ejb,返回的是主鍵類(lèi)。
   * @參數(shù) FundId         String 賬號(hào)ID
   * @參數(shù) initialbaseFunds    double 初始化結(jié)算值
   * @異常 javax.ejb.CreateException   創(chuàng)建bean錯(cuò)誤時(shí)拋出的異常
   */
  public String ejbCreate(String FundId, double initialbaseFunds)
    throws CreateException
  {
  	//日志信息
    log("bmpTradeBean.ejbCreate( id = " +FundId+ ", " + "initial baseFunds = $ " + initialbaseFunds + ")");
    this.FundId = FundId;
    this.baseFunds = initialbaseFunds;
    //聲明數(shù)據(jù)庫(kù)連接
    Connection con = null;
    PreparedStatement ps = null;
    try {
      //獲取數(shù)據(jù)庫(kù)連接
      con = getConnection();
      //執(zhí)行sql語(yǔ)句,插入記錄
      ps = con.prepareStatement("insert into tbl_Funds (id, fund) values (?, ?)");
      ps.setString(1, FundId);
      ps.setDouble(2, baseFunds);
      if (ps.executeUpdate() != 1) {
        String error = "JDBC did not create any row";
        log(error);
        throw new CreateException (error);
      }
      log("JDBC create one row!");
      return FundId;
    } catch (SQLException sqe) {
      ///異常處理
      try {
      	//查找主鍵
        ejbFindByPrimaryKey(FundId);
      } catch(ObjectNotFoundException onfe) {
        String error = "SQLException: " + sqe;
        log(error);
        throw new CreateException (error);
      }
      String error = "An Account already exists in the database with Primary Key " + FundId;
      log(error);
      throw new DuplicateKeyException(error);
    } finally {
      cleanup(con, ps);
    }
  }
  //這是本類(lèi)必須實(shí)現(xiàn)的方法,在本例中沒(méi)有用到
 public void ejbPostCreate(String FundId, double initialbaseFunds) {
    log("ejbPostCreate (" + id() + ")");
  }
  /**
   * 從數(shù)據(jù)庫(kù)中刪除EJBean
   * @異常  javax.ejb.NoSuchEntityException   如果數(shù)據(jù)庫(kù)中沒(méi)找到這個(gè)ejb
   * @異常  javax.ejb.EJBException     通信錯(cuò)誤拋出的異常
   */
  public void ejbRemove() {
    log("ejbRemove (" + id() + ")");
    //聲明數(shù)據(jù)庫(kù)連接
    Connection con = null;
    PreparedStatement ps = null;
    try {
    	//獲取連接
      con = getConnection();
      //獲取主鍵
      FundId = (String) ctx.getPrimaryKey();
      //執(zhí)行SQL語(yǔ)句,刪除記錄
      ps = con.prepareStatement("delete from tbl_Funds where id = ?");
      ps.setString(1, FundId);
      if (!(ps.executeUpdate() > 0)) {
        String error = "bmpTradeBean (" + FundId + " not found";
        log(error);
        throw new NoSuchEntityException (error);
      }
    } catch (SQLException sqe) {
      //異常處理
      log("SQLException:  " + sqe);
      throw new EJBException (sqe);
    } finally {
     //清除
      cleanup(con, ps);
    }
  }
  /**
   * 給定主鍵查找EJBean
   * @參數(shù) pk    String 主鍵
   * @異常  javax.ejb.ObjectNotFoundException   EJBean沒(méi)發(fā)現(xiàn)拋出的異常
   * @異常  javax.ejb.EJBException  系統(tǒng)出現(xiàn)通訊故障時(shí)拋出
   */
  public String ejbFindByPrimaryKey(String pk)
    throws ObjectNotFoundException
  {
    log("ejbFindByPrimaryKey (" + pk + ")");
    //聲明數(shù)據(jù)庫(kù)連接
    Connection con = null;
    PreparedStatement ps = null;
    try {
    	//獲取連接
      con = getConnection();
      //查詢(xún)主鍵對(duì)應(yīng)的記錄
      ps  = con.prepareStatement("select fund from tbl_Funds where id = ?");
      ps.setInt(1, Integer.parseInt(pk));
      ps.executeQuery();
      //獲取結(jié)果集
      ResultSet rs = ps.getResultSet();
      if (rs.next()) {
        baseFunds = rs.getDouble(1);
      } else {
      	//沒(méi)有發(fā)現(xiàn)這個(gè)主鍵值的ejb
        String error = "ejbFindByPrimaryKey: beansTeadeBean (" + pk + ") not found";
        log(error);
        throw new ObjectNotFoundException (error);
       }
    } catch (SQLException sqe) {
    	//異常處理
      log("SQLException:  " + sqe);
      throw new EJBException (sqe);
    } finally {
    	//清除
      cleanup(con, ps);
    }
    log("ejbFindByPrimaryKey (" + pk + ") found");
    return pk;
  }
  /**
   * 查找所有結(jié)算大于給定值的EJBeans
   * @參數(shù) baseFundsGreaterThan double 賬戶(hù)資金
   * @返回  Collection
   * @異常  javax.ejb.EJBException    通信錯(cuò)誤拋出的異常
   */
  public Collection ejbFindBigAccounts(double baseFundsGreaterThan) {
    log("ejbFindBigAccounts (baseFunds > " + baseFundsGreaterThan + ")");
    //聲明數(shù)據(jù)庫(kù)連接
    Connection con = null;
    PreparedStatement ps = null;
    try {
    	//獲取連接
      con = getConnection();
      ps = con.prepareStatement("select id from tbl_Funds where fund > ?");
      ps.setDouble(1, baseFundsGreaterThan);
      ps.executeQuery();
      //獲取結(jié)果集
      ResultSet rs = ps.getResultSet();
      Vector v = new Vector();
      String pk;
      while (rs.next()) {
        pk = rs.getString(1);
        v.addElement(pk);
      }
      //返回集合
      return v;
    } catch (SQLException sqe) {
    	//異常處理
      log("SQLException: " + sqe);
      throw new EJBException (sqe);
    } finally {
    	//清除
      cleanup(con, ps);
    }
  }
/*
*方法說(shuō)明:添加資金
* @參數(shù):baseFunds 資金數(shù)
* @返回:
* @異常:Exception 當(dāng)增加資金為負(fù)數(shù)時(shí)
*/
  public void addFunds(double baseFunds) throws Exception {
    if (baseFunds<0)
        throw new Exception("Invalid baseFunds");
    this.baseFunds+=baseFunds;
  }
/*
*方法說(shuō)明:提取資金
* @參數(shù):baseFunds 資金數(shù)
* @返回:
* @異常:Exception 當(dāng)增加資金為負(fù)數(shù)和所提取資金超過(guò)賬戶(hù)上資金時(shí)
*/
  public void removeFunds(double baseFunds) throws Exception {
    if(baseFunds<0)
        throw new Exception("Invalid baseFunds");
    if(this.baseFunds<baseFunds)
        throw new Exception("the baseFunds less than baseFunds");
   this.baseFunds-=baseFunds;
  }
/*
*方法說(shuō)明:查詢(xún)賬戶(hù)資金數(shù)
* @返回:double 資金數(shù)
*/
  public double getBalance() {
    return this.baseFunds;
  }
  /**
   * 從連接池中獲取當(dāng)前連接
   * @返回   連接
   * @異常  javax.ejb.EJBException   通信錯(cuò)誤
   */
  private Connection getConnection()
    throws SQLException
  {
  	//聲明初始化上下文
    InitialContext initCtx = null;
    try {
      initCtx = new InitialContext();
      //查找數(shù)據(jù)源
      DataSource ds = (javax.sql.DataSource)
        initCtx.lookup("java:comp/env/jdbc/myDB");
        //返回?cái)?shù)據(jù)源連接
      return ds.getConnection();
    } catch(NamingException ne) {
    	//有異常
      log("UNABLE to get a connection from myDB!");
      log("Please make sure that you have setup the connection pool properly");
      throw new EJBException(ne);
    } finally {
      try {
        if(initCtx != null) initCtx.close();
      } catch(NamingException ne) {
        log("Error closing context: " + ne);
        throw new EJBException(ne);
      }
    }
  }
  // 也可以使用WebLogic的日志服務(wù)
  private void log(String s) {
    if (VERBOSE) System.out.println(s);
  }
  // 返回這個(gè)beans的id
  private String id() {
    return "PK = " + (String) ctx.getPrimaryKey();
  }
  //清除連接
  private void cleanup(Connection con, PreparedStatement ps) {
    try {
      if (ps != null) ps.close();
    } catch (Exception e) {
      log("Error closing PreparedStatement: "+e);
      throw new EJBException (e);
    }
    try {
      if (con != null) con.close();
    } catch (Exception e) {
      log("Error closing Connection: " + e);
      throw new EJBException (e);
    }
  }
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一区二区三区四区视频| 成人激情动漫在线观看| 精品日韩成人av| av在线这里只有精品| 亚洲成人免费观看| 国产精品天干天干在线综合| 欧美一区永久视频免费观看| 91麻豆国产精品久久| 狠狠狠色丁香婷婷综合激情| 亚洲精品成人悠悠色影视| xnxx国产精品| 欧美精品 日韩| 91精品办公室少妇高潮对白| 国产suv精品一区二区883| 日韩国产欧美视频| 亚洲成在线观看| 亚洲日本青草视频在线怡红院| 国产日韩欧美综合在线| 日韩精品一区二区三区视频播放| 欧美丰满一区二区免费视频 | 天堂av在线一区| 亚洲人成精品久久久久| 国产三级一区二区| 欧美电影精品一区二区| 欧美一区二区三区在线看| 色综合婷婷久久| 99久久伊人精品| 国产麻豆91精品| 国产一区二区伦理| 精品一区二区三区久久| 蜜桃久久久久久| 日本强好片久久久久久aaa| 亚洲成av人片在www色猫咪| 亚洲自拍偷拍av| 一区二区三区 在线观看视频| 亚洲六月丁香色婷婷综合久久| 中文字幕 久热精品 视频在线| 欧美激情一区二区在线| 国产欧美精品区一区二区三区| 欧美激情一区二区三区| 欧美经典一区二区| 中文字幕制服丝袜成人av| 国产精品久久久久影院色老大| 国产精品区一区二区三区| 中文字幕免费不卡在线| 亚洲图片你懂的| 亚洲综合一区二区| 亚洲6080在线| 狠狠色2019综合网| 国产乱子伦一区二区三区国色天香| 精品一区二区在线免费观看| 国产精品香蕉一区二区三区| 成人h动漫精品| 91亚洲男人天堂| 欧美揉bbbbb揉bbbbb| 91精品国产综合久久精品app| 日韩写真欧美这视频| www成人在线观看| 中文字幕一区不卡| 亚洲成av人片| 韩国成人福利片在线播放| 成+人+亚洲+综合天堂| 色视频欧美一区二区三区| 91精品国产手机| 国产午夜精品一区二区三区视频 | 欧美日韩亚洲综合一区二区三区| 国产91精品在线观看| 美女一区二区三区在线观看| 日本不卡不码高清免费观看| 亚洲一区二区三区四区在线免费观看| 久久天堂av综合合色蜜桃网| 国产精品天天摸av网| 中文子幕无线码一区tr| 亚洲人吸女人奶水| 亚洲成人av在线电影| 日韩精品久久久久久| 天天操天天干天天综合网| 偷拍一区二区三区| 国产一区二区三区黄视频 | 精品一区二区在线免费观看| 26uuu色噜噜精品一区| 国产欧美一区二区三区网站 | 成人午夜看片网址| 日本精品免费观看高清观看| 欧美一二三区在线| 国产欧美一区二区三区鸳鸯浴| 亚洲综合一区二区三区| 国产一区二区剧情av在线| 色8久久精品久久久久久蜜| 91精品国产色综合久久不卡电影 | 一二三区精品福利视频| 丝瓜av网站精品一区二区| 国产精品综合一区二区三区| 国产精品一区二区不卡| 在线观看免费一区| 精品国产在天天线2019| ㊣最新国产の精品bt伙计久久| 日本免费在线视频不卡一不卡二| 欧美精品777| 99久久99久久精品免费观看| 色综合一个色综合亚洲| 在线综合视频播放| 中文字幕在线不卡视频| 麻豆国产一区二区| 色婷婷综合久久| 欧美国产欧美亚州国产日韩mv天天看完整 | 男人的天堂亚洲一区| 北条麻妃一区二区三区| 久久久国际精品| 奇米色777欧美一区二区| 91丨porny丨国产| 精品久久久久一区| 日日噜噜夜夜狠狠视频欧美人| 一本一本大道香蕉久在线精品| 2021中文字幕一区亚洲| 热久久国产精品| 欧美日韩一区二区三区视频| 亚洲欧美一区二区三区国产精品| 国产成人无遮挡在线视频| 日韩欧美视频在线| 日本亚洲欧美天堂免费| 欧美剧在线免费观看网站| 亚洲一区二区三区四区中文字幕| 99精品黄色片免费大全| 欧美国产精品一区二区| 国产麻豆91精品| 337p粉嫩大胆噜噜噜噜噜91av| 捆绑调教一区二区三区| 日韩一区二区免费高清| 免费在线看一区| 欧美一区二区三区公司| 日本欧美大码aⅴ在线播放| 91精选在线观看| 日韩中文字幕91| 欧美另类高清zo欧美| 日日噜噜夜夜狠狠视频欧美人| 欧美日韩亚洲综合在线 | 欧美性生活大片视频| 洋洋av久久久久久久一区| 色婷婷av一区二区三区大白胸| 亚洲男同性视频| 欧美三级乱人伦电影| 视频一区二区中文字幕| 91精品婷婷国产综合久久性色| 日日摸夜夜添夜夜添国产精品| 日韩一区二区在线观看视频| 精品一区二区在线免费观看| 久久久久国产精品厨房| 成人一级片网址| 亚洲另类中文字| 欧美猛男超大videosgay| 日韩va亚洲va欧美va久久| 精品91自产拍在线观看一区| 久久精品国产久精国产爱| 久久久久久综合| 99综合影院在线| 亚洲成精国产精品女| 精品嫩草影院久久| 成人性生交大合| 亚洲国产裸拍裸体视频在线观看乱了 | 91免费看片在线观看| 五月天视频一区| 国产偷国产偷亚洲高清人白洁| www.av亚洲| 午夜精彩视频在线观看不卡| 精品少妇一区二区三区| 99re成人精品视频| 日韩中文字幕区一区有砖一区| 久久青草欧美一区二区三区| 91视频免费播放| 日本欧洲一区二区| 中日韩免费视频中文字幕| 欧美色手机在线观看| 国产乱子轮精品视频| 亚洲综合小说图片| 亚洲精品一线二线三线| 91美女片黄在线| 精品无人区卡一卡二卡三乱码免费卡| 中文字幕国产一区| 91精品黄色片免费大全| 成人福利在线看| 蜜臀久久99精品久久久久久9 | 亚洲一卡二卡三卡四卡无卡久久| 日韩女优毛片在线| 欧美中文字幕一区二区三区| 激情文学综合插| 亚洲电影中文字幕在线观看| 国产亚洲人成网站| 欧美伦理影视网| 91蜜桃视频在线| 国产福利精品导航| 天堂资源在线中文精品| 国产精品情趣视频| 欧美v国产在线一区二区三区| 色菇凉天天综合网| 国产一区亚洲一区| 日韩黄色在线观看| 亚洲丝袜另类动漫二区| 久久久亚洲精品石原莉奈| 欧美在线啊v一区|