<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語句,這樣,對(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 閱讀(153) 評(píng)論(0)  編輯  收藏


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


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

    My Links

    News

    留言簿(18)

    隨筆檔案

    相冊(cè)

    搜索

    最新評(píng)論

    閱讀排行榜

    主站蜘蛛池模板: 亚洲国产精品久久66| 中文在线观看国语高清免费| 夜夜爽妓女8888视频免费观看| 91在线视频免费观看| 国产片免费福利片永久| 中中文字幕亚洲无线码| 少妇人妻偷人精品免费视频| 精品国产亚洲一区二区在线观看 | 毛片免费观看网站| 亚洲日产2021三区在线| 最近新韩国日本免费观看| 亚洲电影中文字幕| a毛片全部免费播放| 亚洲AV中文无码字幕色三| 久久国产精品免费| 亚洲日本韩国在线| 羞羞视频在线观看免费| 免费很黄很色裸乳在线观看| 亚洲av色香蕉一区二区三区蜜桃| 毛片在线看免费版| 亚洲Av永久无码精品一区二区| 大学生美女毛片免费视频| 噜噜综合亚洲AV中文无码| 成人免费a级毛片无码网站入口 | 亚洲日韩国产精品乱| a毛片全部免费播放| 亚洲狠狠综合久久| 国国内清清草原免费视频99| 亚洲欧美日韩中文字幕在线一区 | a毛片全部播放免费视频完整18| 久久国产成人亚洲精品影院| rh男男车车的车车免费网站| 亚洲AV无码精品色午夜果冻不卡| 中文字幕免费在线| 亚洲av永久无码| 国产亚洲精品精华液| 国产免费不卡v片在线观看| 四虎国产精品成人免费久久| 亚洲AV综合色区无码另类小说| 成年美女黄网站色大免费视频| 狼色精品人妻在线视频免费|