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

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

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

    jfy3d(劍事)BLOG

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      37 隨筆 :: 0 文章 :: 363 評論 :: 0 Trackbacks

    為了提高寫程序效率,做了一個簡單的封裝JDBC類

    SqLModify.java

    使用方法

    SqLModify.modify("insert into usertable(username,password)values('lucy','123456')"); 
    這個是靜態方法的調用 可以執行insert   update  和直接調用jdbc方式比少寫了很多的代碼

    為了防止特殊字符 和 SQL注入可以用另外的調用方式
    SqLModify sqlcom = new SqlModify(true);  //true表示建立連接
    sqlcom.setSql("insert into usertable(username,password)values(?,?)"); 
    sqlcom.setString(1,"lucy");
    sqlcom.setString(2,"123456");
    sqlcom.exesqlandClose();

    如果是插入多條記錄可以使用循環

    SqLModify sqlcom = new SqlModify(true);  //true表示建立連接
    sqlcom.setSql("insert into usertable(username,password)values(?,?)"); 
    for(int i=0;i<30;i++)
    {
       
       sqlcom.setString(1,"lucy");
       sqlcom.setString(2,"123456");
       sqlcom.exesql();
    }
    sqlcom.closeall();




    SqlModify.java
    代碼

    import conn.DBConnManager;

    import java.sql.Connection;
    import java.sql.PreparedStatement;

    public class SqlModify
    {
     private String SQL;
     static SqlModify sqlcom = null;
     private DBConnManager conn = null;
     private Connection con = null;
     private PreparedStatement stmt = null;
     
     public SqlModify()
     {
      
     }
     public SqlModify(boolean connect)
     {
      if(connect)
       connect();
     }
     public static int modify(String sqlStr)
     {
      if(sqlcom==null)
        sqlcom = new SqlModify();
      return sqlcom.exec(sqlStr);
     }
     public PreparedStatement getStmt()
     {
      return stmt;
     }
     public void connect(String sqlStr)
     {
      try{
       connect();
       stmt = con.prepareStatement(sqlStr);
      }catch(Exception e){
       e.printStackTrace();
      }
     }
     public void connect()
     {
      try{
       conn = DBConnManager.getInstance();
       con  = conn.getConnection("mssql");
      }catch(Exception e){
       
      }
     }
     public int exesqlandClose()
     {
      int result = exesql();
      closeall();
      return result;
     }
     public int exesql()
     {
      try{
       return stmt.executeUpdate();
      }catch(Exception e){
       e.printStackTrace();
       return -1;
      }
     }
     public void setSql(String sql)
     {
      try{
       stmt = con.prepareStatement(sql);
      }catch(Exception e){
       e.printStackTrace();
      }finally{
       
      }
     }
     public int exec(String sqlStr)
     {
      int flag=-2;

      try{
       connect(sqlStr); 
       int value=stmt.executeUpdate();
       flag=value;
      }catch(java.lang.Exception ex){
       ex.printStackTrace();
      }finally{
       closeall();
      }
      return flag;
     }
     public void closeall()
     {
      try{
       if(stmt!=null)
       {
        stmt.close();
       }
       if(conn!=null)
       {
        conn.releaseConnection("mssql",con);
       }
       
      }catch(Exception e){
       e.printStackTrace();
      }
     }
     public void setString(int col,String value)
     {
      try{
       stmt.setString(col,value);
      }catch(java.lang.Exception ex){
       ex.printStackTrace();
      }  
     }
     public void setInt(int col,int value)
     {

      try{
       stmt.setInt(col,value);
      }catch(java.lang.Exception ex){
       ex.printStackTrace();
      }
       
     }
     public void setLong(int col,long value)
     {
      try{
       stmt.setLong(col,value);
      }catch(java.lang.Exception ex){
       ex.printStackTrace();
      } 
     }
     public void setFloat(int col,float value)
     {
      try{
       stmt.setFloat(col,value);
      }catch(java.lang.Exception ex){
       ex.printStackTrace();
      } 
     }
    }

    posted on 2005-09-11 20:15 劍事 閱讀(4389) 評論(3)  編輯  收藏 所屬分類: 小程序

    評論

    # re: JDBC簡單封裝,節省大量代碼 2005-09-12 11:06 xmlspy
    可以看看spring的jdbc模塊,會更方便  回復  更多評論
      

    # re: JDBC簡單封裝,節省大量代碼 2005-09-12 15:15 Xuefeng
    你的靜態方法有沒有考慮多線程問題?  回復  更多評論
      

    # re: JDBC簡單封裝,節省大量代碼 2005-09-12 18:58 劍事
    靜態方法主要是同步應用的
    如記數等 防止并發

      回復  更多評論
      

    主站蜘蛛池模板: 亚洲精品无码乱码成人| 78成人精品电影在线播放日韩精品电影一区亚洲 | 国产精品亚洲а∨无码播放| japanese色国产在线看免费| 精品亚洲成α人无码成α在线观看 | 亚洲午夜无码久久| 日韩成人在线免费视频| 男性gay黄免费网站| 亚洲乱码日产精品a级毛片久久| 亚洲天堂免费在线视频| 国产AV无码专区亚洲AVJULIA| 久久中文字幕免费视频| 亚洲人成免费网站| 精品免费久久久久久成人影院| 农村寡妇一级毛片免费看视频| 亚洲人成网77777亚洲色 | 成人午夜亚洲精品无码网站| 久久综合九色综合97免费下载| 亚洲综合无码一区二区三区| 拨牐拨牐x8免费| yellow视频免费看| 亚洲最大的视频网站| 国产成人免费福利网站| 在线播放免费人成毛片乱码| 亚洲av一本岛在线播放| 亚洲?V无码乱码国产精品| 18禁在线无遮挡免费观看网站| 亚洲va久久久久| 国产亚洲成人久久| 免费国产成人午夜在线观看| 亚洲偷自精品三十六区| 亚洲人成无码网WWW| 最近高清中文字幕免费| 亚洲av无码一区二区三区天堂 | 含羞草国产亚洲精品岁国产精品| 亚洲一区二区三区香蕉| 男女超爽刺激视频免费播放 | 亚洲精品动漫人成3d在线| 日韩精品无码专区免费播放| 亚洲乱码中文字幕在线| 久久精品国产精品亚洲蜜月|