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

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

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

    afunms

    My Software,My Dream—Forge a more perfect NMS product.

    new framework(7)--build sql via reflect

    利用反射構(gòu)成SQL語(yǔ)句,這樣,對(duì)于一般表的CURD,都可快速實(shí)現(xiàn)。

       protected String buildInsertSQL(ResultSetMetaData rsm,DtoInterface dto)
       
    {
           String insertSql 
    = null;
           
    try
           
    {
               StringBuffer sqlBuf 
    = new StringBuffer(50);
               StringBuffer valueBuf 
    = new StringBuffer(50);
               sqlBuf.append(
    "insert into ").append(table).append("(");
               
    for(int i=1;i<=rsm.getColumnCount();i++
               
    {
                   String methodName 
    = "get" + rsm.getColumnName(i).replaceAll("_"""); 
                   Method method 
    = lookupMethod(dtoClass.getMethods(), methodName);
                   
    if(method==null
                   

                       SysLogger.debug(
    "get" + rsm.getColumnName(i) + " does not exist"); 
                       
    continue;
                   }
     
                   sqlBuf.append(rsm.getColumnName(i)).append(
    ",");
                   valueBuf.append(
    "'").append(method.invoke(dto)).append("',");               
               }

               sqlBuf.delete(sqlBuf.length() 
    - 1, sqlBuf.length());
               valueBuf.delete(valueBuf.length() 
    - 1, valueBuf.length());
               sqlBuf.append(
    ")values(").append(valueBuf.toString()).append(")");
               insertSql 
    = sqlBuf.toString();
               SysLogger.debug(insertSql);
           }

           
    catch(Exception e)
           
    {
               SysLogger.error(
    "BaseDao.buildInsertSQL()",e);           
           }

           
    return insertSql;
       }

       
       
    protected String buildUpdateSQL(ResultSetMetaData rsm,DtoInterface dto)
       
    {
           String updateSql 
    = null;
           
    try
           
    {
               Method getId 
    = lookupMethod(dtoClass.getMethods(),"getId");
               
    if(getId==null)
               
    {
                   SysLogger.error(dtoClass.getClass().getName() 
    + ":getId method does not exist");
                   
    return null;
               }

               StringBuffer sqlBuf 
    = new StringBuffer(100);
               sqlBuf.append(
    "update ").append(table).append(" set ");
               
    for(int i=1;i<=rsm.getColumnCount();i++
               
    {
                   
    if(rsm.getColumnName(i).equals("id")) continue;
                   
                   String methodName 
    = "get" + rsm.getColumnName(i).replaceAll("_"""); 
                   Method method 
    = lookupMethod(dtoClass.getMethods(), methodName);
                   
    if(method==null
                   

                       SysLogger.debug(
    "get" + rsm.getColumnName(i) + " does not exist"); 
                       
    continue;
                   }
                    
                   sqlBuf.append(rsm.getColumnName(i)).append(
    "='");
                   sqlBuf.append(method.invoke(dto)).append(
    "',");               
               }

               sqlBuf.delete(sqlBuf.length() 
    - 1, sqlBuf.length());           
               sqlBuf.append(
    " where id='").append(getId.invoke(dto)).append("'");
               updateSql 
    = sqlBuf.toString();
               SysLogger.debug(updateSql);
           }

           
    catch(Exception e)
           
    {
               SysLogger.error(
    "BaseDao.buildUpdateSQL()",e);           
           }

           
    return updateSql;   
       }


     

    posted on 2007-05-07 22:33 afunms 閱讀(150) 評(píng)論(0)  編輯  收藏


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     

    My Links

    News

    留言簿(18)

    隨筆檔案

    相冊(cè)

    搜索

    最新評(píng)論

    閱讀排行榜

    主站蜘蛛池模板: 日韩不卡免费视频| 最近免费mv在线观看动漫 | 久久国产亚洲观看| 理论片在线观看免费| 久久久久久国产精品免费免费 | 亚洲中文字幕在线乱码| 国产亚洲漂亮白嫩美女在线| 日韩在线天堂免费观看| 亚洲成在人线在线播放无码 | 国产l精品国产亚洲区在线观看| 久久亚洲精品中文字幕| 6080午夜一级毛片免费看| 久久久久亚洲精品天堂| 午夜无码A级毛片免费视频| 久久久无码精品亚洲日韩按摩| 美国免费高清一级毛片| 亚洲精品成a人在线观看| 黄色一级视频免费观看| 久久激情亚洲精品无码?V| 国产免费拔擦拔擦8X高清在线人| 日韩电影免费在线| 免费夜色污私人影院网站电影| 中文字幕免费在线看线人| 亚洲AV无码成人专区| 免费一级国产生活片| 一级免费黄色大片| 亚洲国产精品第一区二区| 18禁网站免费无遮挡无码中文| 亚洲av综合av一区| 美女视频黄a视频全免费| 美女免费视频一区二区三区| 亚洲精品无码Av人在线观看国产 | 免费又黄又爽又猛大片午夜| 亚洲一区二区三区偷拍女厕| 99re免费视频| 污污免费在线观看| 亚洲日韩中文字幕| 国产精品免费看久久久久| 99在线视频免费| 猫咪免费观看人成网站在线| 亚洲第一香蕉视频|