博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iBatis2配置
阅读量:7050 次
发布时间:2019-06-28

本文共 2273 字,大约阅读时间需要 7 分钟。

iBatis2配置
 
1、iBatis的整体配置大概如下:
 
<?
xml 
version
="1.0" 
encoding
="GBK"
?> 

<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" 

                "http://www.ibatis.com/dtd/sql-map-config-2.dtd"> 

<
sqlMapConfig
> 

        
<
properties 
resource
="jdbc.properties"
/> 

        
<
settings 
cacheModelsEnabled
="true" 
enhancementEnabled
="true" 

                            
lazyLoadingEnabled
="true" 
maxRequests
="512" 
maxSessions
="128" 

                            
maxTransactions
="32" 
useStatementNamespaces
="true"
/> 


        
<
transactionManager 
type
="JDBC" 
commitRequired
="true"
> 

                <!--
 事务管理器使用的任意名称的键值对配置,可以设置多个 --> 

                
<
property 
name
="" value="
/> 

                
<
dataSource 
type
="SIMPLE"
> 

                        
<
property 
name
="JDBC.Driver" 
value
="${jdbc.driver}"
/> 

                        
<
property 
name
="JDBC.ConnectionURL" 
value
="${jdbc.url}"
/> 

                        
<
property 
name
="JDBC.Username" 
value
="${jdbc.user}"
/> 

                        
<
property 
name
="JDBC.Password" 
value
="${jdbc.password}"
/> 

                
</
dataSource
> 

        
</
transactionManager
> 


        
<
sqlMap 
resource
="com/asiainfo/tdmc/entity/sqlmap/Cfg_code.xml"
/> 


</
sqlMapConfig
>
 
2、对每一段的解释
 
a、settings
        
<
settings 

                <!--
 数据高速缓存配置,默认为true,将近期使用过的数据保存在内存中,为充分利用该技术,还必须为已映射的语句配置高速缓存模型 --> 
                cacheModelsEnabled="true" 
                <!-- 是否使用cglib中那些已经优化的类来提高延迟加载的性能,默认为ture,如果cglib包不存在,则自动禁用 
--> 

                enhancementEnabled="true" 

                <!--
 延迟加载属性,默认为true,适用于存在相关联的映射语句 --> 

                lazyLoadingEnabled="true" 

                <!--
 已废弃,最大的活动请求数 --> 

                maxRequests="512" 

                <!--
 已废弃,最大事务相关(线程)请求数 --> 

                maxSessions="128" 

                <!--
 已废弃,最大活动事务数 --> 

                maxTransactions="32" 

                <!--
 对SQLMap使用命名空间 --> 

                useStatementNamespaces="true"/>
 
b、事务管理器和数据源
        
<
transactionManager 
type
="JDBC" 
commitRequired
="true"
> 

                <!--
 事务管理器使用的任意名称的键值对配置,可以设置多个 --> 

                
<
property 
name
="" value="
/> 

                
<
dataSource 
type
="SIMPLE"
> 

                        
<
property 
name
="JDBC.Driver" 
value
="${jdbc.driver}"
/> 

                        
<
property 
name
="JDBC.ConnectionURL" 
value
="${jdbc.url}"
/> 

                        
<
property 
name
="JDBC.Username" 
value
="${jdbc.user}"
/> 

                        
<
property 
name
="JDBC.Password" 
value
="${jdbc.password}"
/> 

                
</
dataSource
> 

        
</
transactionManager
> 

    

 
transactionManager配置内置的事务管理器,其type类型取值说明如下:
JDBC:基于JDBC的事务管理。
JTA:基于容器的事务管理。
EXTERNAL:提供非事务管理,并家丁管理事务的是应用程序,而不是iBatis
commitRequired是一个非必须的属性,默认为false,为true时要求在释放连接之前必须提交或者回滚操作。
dataSource是用来定义DataSourceFactory的实现类,其type类型取值说明如下:
SIMPLE:简单的数据源工厂,不要jdbc以外的jar包支持。
DBCP:使用jakarta Commons数据库连接池实现。
JNDI:通过JNDI定位的基于容器的数据源。
本文转自 leizhimin 51CTO博客,原文链接:http://blog.51cto.com/lavasoft/808801,如需转载请自行联系原作者
你可能感兴趣的文章
xcode不能智能提示问题
查看>>
Maven Dependencies - miss
查看>>
Mongo Collections
查看>>
Android MVVM开发——DataBinding基础
查看>>
php中file_get_content 和curl以及fopen
查看>>
基于 Pusher 驱动的 Laravel 事件广播(上)
查看>>
fuel部署openstack 打开fuel的UI界面出现白屏的情况
查看>>
PhpStrom安装Xdebug调试工具
查看>>
Spark Streaming源码解读之数据清理 内幕
查看>>
项目打包流程
查看>>
vue-cli项目动态引用图片链接问题
查看>>
合格程序员每天每周每月每年应该做的事
查看>>
macbook pro(2012款)更换ssd硬盘(光驱拆除换成ssd,原有硬盘仍然使用)
查看>>
Stream API(三)--原始类型流特化
查看>>
使用webiopi控制树莓派的GPIO引脚电平(WEB在线管理)
查看>>
js中call与apply
查看>>
隐式转换
查看>>
(转)直接拿来用!最火的iOS开源项目(二)
查看>>
mybatis 实体嵌套查询
查看>>
跨境物流链路怎么做?菜鸟工程师打造了全球通关“神器”
查看>>