正在阅读:iBATIS step by step 2iBATIS step by step 2

2004-04-08 14:38 出处:matrix.org.cn 作者:argan Matrix 责任编辑:sdq

  程序里只需要提供一个简单的bean,这个bean只需要带有"insert-params"配置的那几个field就可以了,在程序里我们只需要:
       

       SqlLog log = parseSqlLog(sqlString);//set 相关字段
       SqlMapConfig.getSqlMap().executeUpdate("insertSql", log);
       


       这样就保存好了,简单吧。
     3. 用程序跑,把所有log分析完,都写到数据库里去
          
  三、分析LOG
        也许保存数据上,看不出多少和其他ORM工具的差别,甚至还会觉得更麻烦一点,下面用一个查询的例子来说明iBATIS的灵活与强大。
        为了分析这些log,我在往数据库里写的时候,把sql里的值都去掉了,替换成prepared类似的sql,以便于分析sql的普遍性。在这里提一句题外话,在设计DAO框架的时候,最好考虑以后可能的扩展,使用比较好的框架是很重要的,就象这里搜集log,由于我们使用了统一的接口,不仅log搜集容易,对于以后的扩展与修改也很重要,比如现在我就在修改我们的一个UTIL,让所有的sql都用绑定的方式执行,如果没有以前好的设计,现在要修改几乎是不可能的!
  log分析出来大概有80多万记录,我们需要从中获取一些有用的信息,就必须提供一个简单的查询。经过简单的了解后,我们大致需要几个条件:执行时间,sql语句(模糊查询),统计的条数。
        于是,就开始写配置文件:
         [code]
      <dynamic-mapped-statement name="getSqlLogStatistics" cache-model="sqllog-cache" 
         result-map="sqllog-hashmap-result" >
          SELECT * FROM (SELECT ROWNUM count_row_num, w_o_l_f_w.* FROM ( 
          select * from (
               select PARSED_SQL,COUNT(*) CNT from SQL_STMT
            <dynamic prepend="WHERE">

察看评论详细内容 我要发表评论
作者笔名 简短内容 发表时间
:

键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品