`

ibatis学习——SqlMapConfig和SqlMap

阅读更多
1、SqlMapConfig
<?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> 
  <settings    
   cacheModelsEnabled ="true"    
   lazyLoadingEnabled="true"    
   enhancementEnabled="true"    
   errorTracingEnabled="true"    
   maxRequests="32"  
   maxSessions="10"   
   maxTransactions="5"    
   useStatementNamespaces="true"/>  
   <!--cacheModelsEnabled 是否启用缓存机制-->
   <!--lazyLoadingEnabled  是否启用延迟加载机制 -->
   <!--enhancementEnabled 是否启用字节码增强机制 -->
   <!--errorTracingEnabled 是否启用错误处理机制 -->
   <!--maxRequests 最大并发请求数 -->
   <!--maxSessions 最大Session数 -->   
   <!--maxTransactions最大并发事务数 -->
   <!--useStatementNamespaces 是否启用名称空间 -->  
    
 <!--<transactionManager type ="JDBC">      
     <dataSource type ="SIMPLE">  
     </dataSource>     
  </transactionManager>-->  

   <sqlMap resource="config/ibatis_dirCounty.xml" /> 
</sqlMapConfig>


transactionManager节点
transactionManagerab定义了ibatis的事务管理器,目前提供了以下几种选择:
1)  JDBC:通过传统JDBC Connection.commit/rollback实现事务支持.
2)  JTA:使用容器提供的JTA服务实现全局事务管理.
3)  EXTERNAL:外部事务管理,如在EJB中使用ibatis,通过EJB的部署配置即可实现自动的事务管理机制.此时ibatis将把所有事务委托给外部容器进行管理.此外,通过Spring等轻量级容量实现事务的配置化管理也是一个不错的选择.

dataSource节点
dataSource从属于 transactionManager,用于设定ibatis运行期使用DataSource属性.type 属性: dataSource元素的 type 属性指定了 dataSource 的实现类型.可选项目:
1)  SIMPLE
SIMPLE 是 ibatis内置的 dataSource实现,其中实现了一个简单的数据库连接池机制,对应 ibatis实现类为com.ibatis.sqlmap.engine.datasource.SimpleDataSourceFactory.
JDBC 使用数据库自己的事务(局部事务),connect.beginTranstion(), connect.commit()等.
2)  DBCP
基于Apache DBCP连接池组件实现的DataSource封装,当无容器提供DataSource服务时,建议使用该选项,对应ibatis实现类为
com.ibatis.sqlmap.engine.datasource.DbcpDataSourceFactory.
JTA :使用jta事务管理器管理事务(全局事务),使用userTranstion对象.
3)  JNDI
使用J2EE容器提供的DataSource实现, DataSource将通过指定的JNDI Name从容器中获取.对应ibatis实现类为com.ibatis.sqlmap.engine.datasource.JndiDataSourceFactory.
Ibatis 不控制事务,事务交由外部控制,一般在CTM,或spring托管事务中使用.



2、SqlMap
1、namespace
命名空间,避免属性名称冲突
当useStatementNamespaces设置为true的时候,可以设置命名空间。
<sqlMap namespace="country">
代码调用,需要带上namespace,如下:
(List<TbDirCountryEntity>)this.getSqlMapClientTemplate().queryForList("country.getAllDirCountry");

2、typeAlias
定义实体的别名。
其中type为实体的全名(包括路径);
alias为实体的别名,在需要用到实体全名的地方可以直接用别名替代。
简单实例如下:
<typeAlias type="com.bluedon.common.entity.TbDirCountryEntity" 
alias="dirCountry"/>


3、statement
元素是个通用声明,可以用于任何类型的SQL语句,甚至包含多个语句(用;分隔)。通常,使用下面具体的statement类型是个好主意。
<insert>
<update>
<delete>
<select>
<procedure>
这些标签的使用见后章节。

分享到:
评论

相关推荐

    ibatis2mybatisConverter:将 sqlMap xmls 从 iBatis 2 迁移到 Mybatis 3

    在 iBatis 2 中,SQLMap XML 文件包含了数据库交互的核心元素,如 SQL 查询、结果映射、事务管理和参数映射等。这些文件通常位于项目的 `sqlmap` 目录下,以 `.xml` 扩展名保存。在升级到 Mybatis 3 时,需要对这些 ...

    ibatis 连接字符串 SqlMapConfig.xml

    标题中的“ibatis 连接字符串 SqlMapConfig.xml”指的是使用iBATIS(一个轻量级的Java持久层框架)时,配置数据库连接的关键文件——SqlMapConfig.xml。这个文件是iBATIS的核心配置文件,它包含了数据源、事务管理器...

    ibatis_SqlMapConfig配置详解

    最后,`&lt;sqlMapConfig&gt;`中还可以包含多个`&lt;sqlMap&gt;`子元素,每一个代表一个单独的SQL映射文件,这些文件通常以`.xml`格式存在,里面定义了具体的SQL语句和结果映射。 总结来说,`ibatis_SqlMapConfig`配置文件是...

    ibatis-sqlMap相关参考

    2. **SQLMap配置**:学习如何编写SqlMapConfig.xml,配置数据源、事务管理器以及日志设置。 3. **SQL映射文件**:了解XML格式的SQLMap文件,包括如何定义SQL语句、参数映射和结果映射。 4. **动态SQL**:探索如何...

    ibatis-sqlmap_2.3.4_2.jar两个版本的jar包

    - ibatis-sqlmap-2.3.4.726-sources.jar:这是Ibatis-SqlMap的源码包,包含了2.3.4.726版本的源代码,便于开发者查看和学习内部实现。 - ibatis-sqlmap-2.jar:这可能是Ibatis-SqlMap的早期版本,没有具体版本号,供...

    ibatis-sqlmap-2.3.4.726-sources.jar.zip_birth84v_cutting1v2_ibat

    这部分信息表明我们正在探讨的是iBatis SQLMap的2.3.4.726版源码,其中"birth84v"和"cutting1v2"可能是特定的版本标识或开发代号,而"ibat"可能是对iBatis的简称。源码jar文件是开发者了解框架内部结构、学习和调试...

    ibatis-sqlMap-入门教程(代码)

    1. **iBATIS**:这个标签表明我们将会学习的是iBATIS框架的基础知识,包括配置、SQL映射文件和动态SQL。 2. **sqlMap**:在MyBatis中,SQL Map是XML配置文件,用于定义SQL查询、存储过程等,与Java对象映射关系。 3....

    ibatis相关的common,dao,sqlmap包

    这个压缩包包含了Ibatis的三个关键组件:common、dao和sqlmap,它们各自扮演着不同的角色,共同构成了Ibatis框架的核心功能。 1. **Ibatis-common**: Ibatis-common 包含了Ibatis框架的基础工具类和通用模块,...

    记一次Ibatis的意外发生.docx

    需要注意的是,IBatis的包声明是org.apache.ibatis开头的,因此需要下载ibatis-common.jar和ibatis-sqlmap.jar文件。 2. IBatis的ResultMap 在IBatis中,ResultMap是用于定义查询结果的结构。ResultMap可以包含多...

    ibatis sqlmap配置详解

    SqlMap的配置是iBatis中应用的核心。这部分任务占据了iBatis开发的...Sql Map配置文件是iBatis配置的核心,从数据库连接到执行SQL时使用的sqlMap文件都是通过此文件中的配置提供给框架的,它通常命名为sqlMapConfig.xml

    iBATIS-SqlMaps,ibatis映射文件

    iBATIS的核心概念是SqlMapConfig.xml配置文件和一系列的SqlMap.xml映射文件,这两个文件是理解iBATIS工作原理的关键。 SqlMapConfig.xml是整个iBATIS框架的全局配置文件,它包含了数据源、事务管理器等核心组件的...

    ibatis源码,ibatis源码 ibatis源码 ibatis源码

    iBatis主要由SqlMapConfig.xml配置文件、SqlMap接口和Executor执行器三大部分构成。SqlMapConfig.xml配置文件定义了数据源、事务管理器等全局设置;SqlMap接口则封装了SQL语句,提供了数据操作的方法;Executor执行...

    ibatis学习总结

    【ibatis学习总结】 在Java应用中,ORM(对象关系映射)框架是连接数据库与业务逻辑的关键。相比像Hibernate和Apache OJB这样的"一站式"ORM解决方案,iBATIS提供了一种更为灵活的"半自动化"策略。iBATIS允许开发者...

    iBATIS-SqlMaps开发指南.rar

    首先,书中会介绍iBATIS的核心组件——SqlMapConfig.xml配置文件,它是整个iBATIS框架的入口,包含了数据源、事务管理器、SqlMap等关键元素的定义。理解这些配置项的含义和作用是使用iBATIS的第一步。 其次,SqlMap...

    夏昕-ibatis 开发指南pdf版

    首先,书中会详细介绍iBatis的基本概念和架构,包括它的核心组件——SqlMapConfig.xml配置文件、SqlMap接口以及Mapper XML文件。这些元素共同构建了iBatis的数据访问层,使得开发者可以自定义SQL语句,避免了传统的...

    ibatis学习笔记.txt

    ### iBatis 学习笔记知识点总结 #### 一、iBatis 概念与特点 **1.1 iBatis 定义** - **iBatis** 是一个基于 Java 的开源持久层框架,它专注于 SQL 映射,提供了一种将对象与数据库交互过程中的 SQL 语句进行分离的...

    ibatis学习总结文档

    iBATIS主要由四个部分组成:SqlMapConfig.xml(全局配置文件)、SqlMap.xml(SQL映射文件)、SqlMapClient(客户端接口)和Mapper接口(业务接口)。 四、iBATIS的使用步骤 1. 创建SqlMapConfig.xml:配置数据库...

    ibatis学习时的项目

    【标题】"ibatis学习时的项目"是一个基于Java的Web项目,主要目的是为了学习和实践iBatis这个持久层框架。iBatis是MyBatis的前身,它提供了一个SQL映射框架,使得开发者可以将SQL语句直接写在XML配置文件中,实现了...

Global site tag (gtag.js) - Google Analytics