现在的位置: 首页 > 综合 > 正文

IBatis ORM框架的总配置文件SqlMapConfig.xml 详细信息

2013年06月02日 ⁄ 综合 ⁄ 共 2549字 ⁄ 字号 评论关闭

 <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
 
 <!--
  1. cacheModelsEnabled 是否启动sqlMapClient上的缓存机制;
  2. enhancementEnabled是否针对POJO启用字节码增强机制以提升getter/setter的调用效能,
    避免使用Java Reflect所带来的性能开销,同时也为Lazy Loading带来了极大的性能提升;
  3. errorTracingEnabled 是否启用错误日志;在开发期间建议设为“true”以方便调试
  4. lazyLoadingEnabled 是否启动延迟加载机制
  5. maxRequests 最大并发请求数(Statement并发数)
  5. maxTransactions 最大并发事务
  6. maxSessions 最大Session数,即当前最大允许的并发sqlMapClient数(介于maxRequests和maxTransactions之间)
  7. useStatementNamespaces 是否使用Statement命名空间(为true时,需要追加命名空间)
  -->
 <settings cacheModelsEnabled="true" enhancementEnabled="true"
  lazyLoadingEnabled="true" errorTracingEnabled="true" maxRequests="32"
  maxSessions="10" maxTransactions="5" useStatementNamespaces="false" />
 
 <!--
  transactionManager 节点定义了ibatis的事务管理器
  1. JDBC:通过传统JDBC Connection.commit/rollback实现事务支持
  2. JTA:使用容器提供的JTA服务实现全局事务管理
  3. EXTERNAL:外部事务管理,如EJB中使用ibatis,通过EJB的部署配置即可实现自动事务管理机制
    此时ibatis将所有事务委托给外部容器管理
  -->
 <transactionManager type="JDBC">
  <!--
   dataSource从属于transactionManager节点,用于设定ibatis运行期使用的DataSource属性
   type属性: dataSource节点的type属性指定了dataSource的实现类型
   1. SIMPLE:
    SIMPLE是ibatis内置的dataSource实现,其中实现了一个简单的数据库连接池机制, 对应ibatis 实现类为
    com.ibatis.sqlmap.engine.datasource.SimpleDataSourceFactory。
   2. DBCP:
    基于Apache DBCP连接池组件实现的DataSource 封装,当无容器提供DataSource 服务时,
    建议使用该选项,对应ibatis 实现类为com.ibatis.sqlmap.engine.datasource.DbcpDataSourceFactory。
   3. JNDI:
    使用J2EE 容器提供的DataSource 实现,DataSource 将通过指定的JNDI Name 从容器中获取。
    对应ibatis 实现类为com.ibatis.sqlmap.engine.datasource.JndiDataSourceFactory。
   -->
  <dataSource type="SIMPLE">
   <!-- JDBC驱动 -->
   <property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver" />
   <!-- 数据库URL -->
   <property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@192.168.241.27:1521:orcl" />
   <!-- 数据库用户名 -->
   <property name="JDBC.Username" value="aaa" />
   <!-- 数据库密码 -->
   <property name="JDBC.Password" value="aaa" />
   <property name="Pool.MaximumActiveConnections" value="10" />
   <property name="Pool.MaximumIdleConnections" value="5" />
   <property name="Pool.MaximumCheckoutTime" value="120000" />
   <property name="Pool.TimeToWait" value="500" />
   <property name="Pool.PingQuery" value="select 1 from ACCOUNT" />
   <property name="Pool.PingEnabled" value="false" />
   <property name="Pool.PingConnectionsOlderThan" value="1" />
   <property name="Pool.PingConnectionsNotUsedFor" value="1" />
  </dataSource>
 </transactionManager>
 
 <!-- 指定映射文件的位置,配置中可出现多个sqlMap节点,以指定项目内所有映射文件 -->
 <sqlMap resource="com/ibatis/Ibatis.xml" />
</sqlMapConfig>

抱歉!评论已关闭.