<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Kimi's NutShell

    我荒廢的今日,正是昨日殞身之人祈求的明日

    BlogJava 新隨筆 管理
      141 Posts :: 0 Stories :: 75 Comments :: 0 Trackbacks

    package classmate;
    import java.sql.*;

    import javax.sql.DataSource;

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    public class DataStore {
    ?
    ?DataSource dataSource = null;
    ?private static Connection conn = null;
    ?private Statement stmt = null;
    ?private boolean hadErrors = false;
    ?
    ?//construct
    ?public DataStore(DataSource dataSource) throws Exception{
    ??this.dataSource = dataSource;
    ??conn = dataSource.getConnection();
    ??stmt = conn.createStatement();
    ?}
    ?
    ?//invoke transaction
    ?public void beginTransaction() throws SQLException{
    ??conn.setAutoCommit(false);
    ?}
    ?
    ?//perform transaction
    ?public void commitTransaction() throws SQLException{
    ??//hadErrors = false
    ??if(!hadErrors){
    ???conn.commit();
    ??}
    ??else{? //hadErrors = true
    ???conn.rollback();
    ???hadErrors = false;
    ??}
    ??hadErrors = false;
    ??conn.setAutoCommit(true);
    ?}
    ?
    ?//mark error
    ?public void ErrorOccur(){
    ??hadErrors = true;
    ?}
    ?
    ?//execute insert,delete,update
    ?synchronized public void execute(String sql) throws SQLException{
    ??if(stmt != null)
    ???stmt.executeUpdate(sql);
    ??else{
    ???Log log = LogFactory.getLog("mylog");
    ???log.error("fail to execute sql");
    ??}
    ?}
    ?
    ?//execute select
    ?synchronized public ResultSet read(String sql) throws SQLException{
    ??if(stmt != null){
    ???ResultSet tmp = null;
    ???tmp = stmt.executeQuery(sql);
    ???return tmp;
    ??}else{
    ???return null;
    ??}
    ?}
    ?
    ?// count of result
    ?synchronized public int readCount(String sql) throws SQLException{
    ??int nCount = 0;
    ??try{
    ???if(stmt != null){
    ????ResultSet tmp = null;
    ????tmp = stmt.executeQuery(sql);
    ????if(tmp != null && tmp.next()){
    ?????nCount = tmp.getInt(1);
    ????}else{
    ?????nCount = 0;
    ????}
    ???}
    ??}catch(SQLException e){
    ???nCount = 0;
    ??}
    ??return nCount;
    ?}
    ?
    ?// close db
    ?synchronized public void stop(){
    ??try{
    ???if(conn != null){
    ????conn.close();
    ????stmt.close();
    ???}
    ??}catch(Exception e){
    ???Log log = LogFactory.getLog("mylog");
    ???log.error("fail to close db- DataStore.java");
    ??}finally{
    ???conn = null;
    ??}
    ?}
    }

    還在研究,貌似DCL的問題還存在。

    posted on 2007-10-24 16:35 Kimi 閱讀(476) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 亚洲国产成人久久三区| 亚洲欧美日韩久久精品| 亚洲精品日韩专区silk| 中文字幕久精品免费视频| 国产日本一线在线观看免费| 在线a人片天堂免费观看高清| 亚洲最大AV网站在线观看| 一级免费黄色大片| 永久亚洲成a人片777777| 国产午夜无码精品免费看| 亚洲AV无码成人精品区天堂 | 久久久久久久尹人综合网亚洲 | 亚洲精品人成电影网| h视频在线观看免费完整版| 国产做床爱无遮挡免费视频| 高潮毛片无遮挡高清免费视频| 伊在人亚洲香蕉精品区麻豆| 亚洲黄色在线观看视频| 亚洲精品视频免费| 国产成人精品高清免费| 视频免费1区二区三区| 国产亚洲成AV人片在线观黄桃| 十九岁在线观看免费完整版电影| 亚洲国产精品yw在线观看| 国内自产拍自a免费毛片| 一级毛片一级毛片免费毛片| 亚洲国产精品福利片在线观看| 美女内射毛片在线看免费人动物| 国产自偷亚洲精品页65页| 免费人成视频在线观看网站| 亚洲依依成人亚洲社区| 青娱乐免费在线视频| WWW国产亚洲精品久久麻豆| 毛片免费观看的视频在线| 亚洲精品网站在线观看你懂的| 国产三级在线观看免费| 日韩成人毛片高清视频免费看| 亚洲AV无码成人精品区天堂| 精品免费国产一区二区| 免费黄网站在线看| 亚洲日韩看片无码电影|