`
cicada_IT
  • 浏览: 52373 次
社区版块
存档分类
最新评论

几个Ibaties的问题

    博客分类:
  • DB
阅读更多

1. 在ibatis的配置文件中dataSource 节点有这么个配置<datasource type="SIMPLE"></datasource>,根据原文下的解释知道其中type有SIMPLE,DBCP,JNDI三种.我想问下这三种类型的区别在于哪里, 在什么情况下用到,常用的是哪个 ,及它的优点在于哪里?

看情况,simple用于测试,dbcp是采用dbcp做数据源,jndi是使用app server提供的数据源
一般来说,在实际应用中jndi用的比较多,simple用于测试
不过,多说了一句,dataSource一般都是在spring中创建或管理,所以和spring集成时,很少使用ibatis的dataSource节点


2.在 <transactionmanager type="JDBC"> </transactionmanager> 这个配置中有type也有JDBC,JTA,EXTERNAL.我想问下基于JDBC,及JTA的事务可以应用到哪中程度.而对EXTERNAL在什么情况下会用到?

JDBC使用 数据库自己的事务(局部事务),connect.beginTranstion(), connect.commit()等
JTA : 使用jta 事务管理器管理事务(全局事务),使用userTranstion对象
External: 自己(Ibatis)不控制事务,事务交由外部控制,一般在CTM,或spring托管事务中使用

 

常用的是External,应为在我的应用中,事务都是用spring托管的,如果不是,那就就用jdbc,如果在app server中,你又不想使用容器托管事务,那就用JTA

3.在开发指南中提到"ibatis 的缓存机制使用必须特别谨慎",我想问下,ibatis中cache用到的地方大不大,如果不用会出现哪写不好的清况,因为我知道hibernate中缓冲机制是它的一个亮点,那ibatis中又是怎么样呢?

基本上用处不大(可能会有很多人和我的观点不同)
ibatis 是个sql拼装器,强调的是直接与数据库打交道,sql的质量决定了最后的效率,再说数据库本身就提供的cache。类似many to one , many to many , one to one 的Hibernate的产物,可以直接做成视图,在使用ibatis去查询,这样可以充分的使用使用db自己的cache

分享到:
评论

相关推荐

    ibatis的一个简单demo用户登录

    【描述】"一个ibatis的demo含数据库哦,通过用户登录测试。"这说明这个DEMO不仅包含了iBATIS的相关代码,还包含了一个用于测试用户登录功能的数据库。在实际的用户登录场景中,通常需要验证用户的用户名和密码,确保...

    ibatis2.rar

    集成过程通常包括以下几个步骤: 1. 引入相关库:添加iBATIS和Spring的jar包到项目类路径。 2. 配置Spring:在Spring的配置文件中声明SqlSessionFactoryBean,设置数据源、配置文件路径等参数。 3. 映射文件配置:...

    ibatis2.3.4.rar

    在实例中,你可以尝试以下几个步骤来学习和使用Ibatis: 1. 配置Ibatis:首先,你需要在项目中引入Ibatis的jar包,并设置相应的配置文件(如mybatis-config.xml),配置数据源、事务管理器以及Mapper扫描路径。 2....

    ibatisDemo 入门源码

    IbatisDemo项目通常包括以下几个部分: 1. `src/main/java`:存放Java源代码,包括实体类、Mapper接口和Service实现类。 2. `src/main/resources`:存放配置文件,如SqlMapConfig.xml和Mapper.xml,以及可能的资源...

    ibatis 的 jar包

    iBATIS的核心功能主要体现在以下几个方面: 1. **SQL映射**:iBATIS允许开发者在XML或注解中编写SQL语句,这些语句可以被Java代码调用,实现了SQL与业务逻辑的解耦。 2. **动态SQL**:通过在XML映射文件中使用条件...

    iBATIS2.0学习总结

    在开始使用iBATIS时,需要配置几个关键的文件。首先是全局配置文件`SqlMapConfig.xml`,这个文件的作用是加载所有的SQL Map XML文件,并配置数据库连接、事务管理、缓存策略等。在`SqlMapConfig.xml`中,`...

    ibatis2.0开发指南(官网)

    本指南覆盖了iBatis 2.0的核心概念和功能,包括但不限于以下几个方面: 1. **iBatis简介**:首先介绍iBatis的起源、目标和设计理念,帮助读者理解为何选择iBatis作为持久层解决方案。 2. **环境搭建**:详述如何...

    ibatis3.1官方中文帮助文档

    2. **快速入门**:这部分会引导新手如何快速搭建一个iBatis 3.1的环境,包括添加依赖、配置数据库连接、创建基本的Mapper接口和XML配置文件等步骤。 3. **配置**:详细讲解了iBatis的配置文件(`ibatis-config.xml`...

    ibatis官方中文文档

    在iBATIS中调用存储过程通常涉及以下几个步骤: 1. **配置存储过程**:在SQL映射文件中定义存储过程的标签,指定存储过程名以及输入和输出参数。 2. **设置参数**:在Java代码中创建参数对象,根据存储过程的需求...

    ibatis_with_memcached

    集成过程主要包括以下几个步骤: 1. **安装Memcached**:在服务器上安装并启动Memcached服务,确保其正常运行。 2. **添加依赖**:在项目的构建文件(如Maven的pom.xml)中添加Memcached的客户端库依赖,例如...

    ibatis案例

    在这个“ibatisDemo”中,我们可能会看到以下几个关键知识点: 1. **SqlMapConfig.xml**:这是Ibatis的核心配置文件,它包含了数据源设置、事务管理器配置以及Mapper文件的引用等信息。开发者可以通过这个文件配置...

    ibatis拼接字符串

    iBatis 是一个基于 Java 的持久层框架,它将 SQL 映射语句与 Java 代码分离,使得开发者能够更加灵活地控制 SQL 的执行逻辑。虽然 iBatis 在某些方面与 Hibernate 类似,但它们之间的主要区别在于 iBatis 提供了更细...

    iBATIS开放源代码

    在iBATIS框架中,主要包含以下几个关键组件: 1. **SqlMapConfig.xml**:这是整个iBATIS系统的配置文件,包含了数据源、事务管理器以及其他相关设置。开发者在此文件中定义数据库连接信息,以及映射文件的位置。 2...

    IBATIS DOC

    IBATIS 的逻辑简介部分可能涵盖了以下几个核心概念: 1. **映射器(Mapper)**: 映射器是IBATIS的核心组件,它定义了数据库操作和Java对象之间的关系。映射器文件包含SQL语句和结果集映射,这些映射被Java接口引用...

    开发Ibatis需要的类库

    首先,Ibatis 的核心类库包括以下几个主要部分: 1. **MyBatis.jar**:这是Ibatis的主要实现库,包含了SqlSession、SqlSessionFactory、Mapper接口和XML配置文件解析等关键组件。 2. **mybatis-ognl.jar**:OGNL...

    ibatis+oracle实例

    在实际项目中,Ibatis与Oracle的结合使用主要体现在以下几个方面: 1. **SQL调优**:Ibatis允许直接编写原生的SQL,便于充分利用Oracle的特性进行性能优化。 2. **事务管理**:Ibatis提供了对数据库事务的控制,...

    ibatis3资料-介绍

    在使用iBATIS3时,需要注意以下几点: - **命名空间**:每个映射文件都应该有一个唯一的命名空间,用于区分不同的映射文件,避免命名冲突。 - **生命周期管理**:正确管理`SqlSessionFactory`和`SqlSession`的生命...

    ibatis日期格式.doc

    在小组后台管理中,存在以下几个与iBatis相关的问题: 1. **小组分类管理** - **问题1**: 在删除二级分类时,未检查该分类下是否存在分组。这是一个逻辑漏洞,可能导致数据丢失或错误。在iBatis中,可以添加额外的...

    ibatis-2.3.0.677

    `com`目录下则包含了iBatis的源代码组织结构,主要涉及以下几个核心组件: 1. **SqlMapClient**:这是iBatis的核心接口,用于执行SQL映射文件中的操作。它提供了插入、更新、删除、查询等一系列数据库操作方法。 2...

Global site tag (gtag.js) - Google Analytics