WEB开发网
开发学院WEB开发Jsp iBATIS step by step 2 阅读

iBATIS step by step 2

 2008-01-05 20:09:19 来源:WEB开发网   
核心提示:这一节里,使用了一个实际的例子来说明dynamic-mapped-statement 和 insert 的简单使用. 系统发布后一段时间,

这一节里,使用了一个实际的例子来说明dynamic-mapped-statement 和 insert 的简单使用.

系统发布后一段时间,对系统留下的一些log,非凡是所执行的sql语句进行分析,来获取用户使用习惯的第一手数据,以便以后我们的改进。
  
  今天就做了这样一次简单的分析,由于系统中几乎所有的查询都使用我的一个统一的借口来进行查询,所以SQL的log有统一的标志,收集起来相对轻易。
  
  下面一步一步的描述一下整个过程:
  
  一、搜集log
   1. 从服务器上获取log文件,无需多说
   2. 用程序分析log,并将sql解析出来,做一些处理,保存到数据库中。
    要保存一条数据到数据库里,需要配置一个保存的SQL:
    


   <parameter-map name="insert-params">
    <PRoperty name="exeTime" />
    <property name="sql"/>
    <property name="parsedSql"/>
    <property name="sqlvalues"/>
   </parameter-map>
   <mapped-statement name="insertSql" parameter-map="insert-params" >
    insert into SQL_STMT (
     ID,
     EXE_TIME,
     SQL,
     PARSED_SQL,
     SQL_valueS)
     values (
     <!--注重这里,可以使用数据库本身的功能,不受限制-->
     seq_sql_stmt.nextval, ?, ?, ?,? 
    )
   </mapped-statement>
    进入讨论组讨论。
  程序里只需要提供一个简单的bean,这个bean只需要带有"insert-params"配置的那几个field就可以了,在程序里我们只需要:
    
    SqlLog log = parseSqlLog(sqlString);//set 相关字段
    SqlMapConfig.getSqlMap().executeUpdate("insertSql", log);

Tags:iBATIS step by

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接