`
longgangbai
  • 浏览: 7340797 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

IBatis框架的一些问题的扩展(三)

阅读更多

             项目采用的事务由于IBatis的事务可能不能满足项目的需求,项目中采用EJB3.0的中间件服务(事务管理,持久化,消息,安全性,群集等)替代IBatis的事务操作。项目中采用JBoss的连接池,需要在JBoss添加相关的连接池文件。

             在JBoss的服务器中添加

 

JBoss的配置如下

数据源用于配置数据库的连接的信息,每一个数据源必须指定一个唯一的JNDI名称,应用通过JNDI名称查找数据库源。默认的数据源DefaultDS,它使用Jboss内置的HSQLDB数据源。每一种数据库配置的模板在可以参考[Jboss安装目录]\docs\examples\jca目录中找到,名称为:数据库名+-ds.xml.

数据库配置文件的取名格式必须为xxx-ds.xml,其中xxx代表任意名称。

数据源部署前,必须把数据库驱动jar拷贝到[Jboss安装目录]/sever/配置的名(默认default/lib目录。

将数据源部署文件拷贝到[Jboss安装目录]/sever/配置的名(默认default/deploy目录,容器遇到以*-ds.xml结尾的文件时,会进行动态发布。发布完成之后可以通过:http://localhost:8080/jmx-console查看。

选择jboss.jca/jboss.jdbc查看数据源的信息:

在连接池管理(ManagedConnectionPool)中进入连接池属性修改界面中,MaxSize为最大连接数,InUseConnectionCount代表目前正在使用的连接数。一旦正用大于最大连接数,后面发起的数据库连接将会报错误。

不同的数据源的数据库配置不一样,可以参考模板修改。

 

 

Ibatis配置文件SqlMapConfig.xml中配置如下:

    <!-- JNDI JBOSS连接池配置 -->

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

        <property name="DefaultAutoCommit" value="false"/> 

        <property name="SetAutoCommitAllowed" value="false"/>

        <dataSource type="JNDI">

            <property name="DataSource" value="${xxxds}" />

            <property name="context.java.naming.factory.initial" value="${initial}" />

            <property name="context.java.naming.factory.url.pkgs" value="${pkgs}" />

            <property name="context.java.naming.provider.url" value="${url}" />         </dataSource>      

    </transactionManager>

此处必须注意的commitRequired=truetype=”External” 设置事务类型为外部事务。

           

  总结:纵观当前的各种Ibatis的架构中Ibatis的事务大多使用外部事务并且采用容器级别的事务作为保障。如EJB事务和Spring的事务。由容器实现事务配置化管理。

 

分享到:
评论
2 楼 longgangbai 2011-07-22  
yangke_love 写道
哥们,问个问题
现在项目中需要进行组件化开发,数据库有多个,同一个JVM中需要实跨数据库事务处理
采用EJB3.0(无状态SessionBean) + IBatis的方式,能不能实现?
谢谢

能实现,如果有业务逻辑的话,建议多采用EJB3.0中有状态会话SessionBean比较好。
1 楼 yangke_love 2011-07-21  
哥们,问个问题
现在项目中需要进行组件化开发,数据库有多个,同一个JVM中需要实跨数据库事务处理
采用EJB3.0(无状态SessionBean) + IBatis的方式,能不能实现?
谢谢

相关推荐

    ibatis框架简单应用

    Ibatis 主要解决的问题是简化 JDBC 的繁琐工作,通过 XML 或注解方式配置 SQL 语句,使得业务逻辑和数据访问层之间有更好的解耦。 **核心概念** 1. **SqlMapConfig.xml**: 这是 Ibatis 的全局配置文件,包含了数据...

    ssh2+ibatis框架

    SSH2+IBATIS框架是Java开发中常用的一套企业级应用开发框架组合,它将Spring、Hibernate、Struts2和iBatis等组件融合在一起,以提高开发效率和实现松耦合。以下是对这些框架及其整合方式的详细说明: **Spring框架*...

    SpringMvc+ibatis框架

    SpringMvc和iBatis是Java开发中常用的两个框架,它们在Web应用开发中扮演着重要的角色。SpringMvc作为Spring框架的一部分,主要用于处理HTTP请求和视图的渲染,而iBatis则是一个轻量级的数据访问层框架,它将SQL与...

    ibatis 框架原理实现

    在这个自己编写的Ibatis框架实现中,我们可以看到类似的思路和核心功能。 1. **XML配置文件**: XML文件是Ibatis框架的核心,它存储了SQL语句、参数映射以及结果集映射等信息。在`sqlmap`目录下,可能包含了多个...

    SpringMvc+Ibatis框架

    iBatis框架则提供了一种将SQL语句与Java代码分离的方式,通过XML配置文件或注解来定义SQL语句,使得数据库操作更易于维护和扩展。它的核心概念有SqlSessionFactory、SqlSession和Mapper。SqlSessionFactory创建...

    springmvc+ibatis 框架

    Spring MVC 和 iBatis 是两个在 Java Web 开发中广泛使用的框架,它们组合起来可以构建高效、灵活且可维护的Web应用程序。Spring MVC 作为Spring框架的一部分,是用于构建前端控制器(DispatcherServlet)的MVC设计...

    struts2+spring+Ibatis框架包

    这个“struts2+spring+iBatis框架包”集成了这三个框架,使得开发者能够快速构建基于MVC(Model-View-Controller)模式的Web应用。 Struts2作为MVC框架,负责处理应用程序的控制逻辑。它通过Action类和配置文件定义...

    struts+spring+ibatis框架集合教程

    3. iBatis框架:iBatis是一个SQL映射框架,它将SQL语句与Java代码分离,提供了一种灵活的方式来执行数据库操作。通过XML或注解方式定义SQL语句,iBatis可以动态地生成和执行SQL,避免了传统的JDBC代码繁琐的模板式...

    Ibatis框架三层架构项目源码.rar

    在这个"Ibatis框架三层架构项目"中,我们可以看到它按照标准的软件工程设计模式进行了分层,包括数据访问层(DAL)、模型层(Model)和Web层。接下来,我们将详细探讨这些层次及其在项目中的作用。 1. 数据访问层...

    Ibatis框架三层架构项目源码

    【Ibatis框架三层架构项目源码】是一个基于Asp.Net技术的项目,它利用了流行的持久层框架Ibatis来实现数据库交互。Ibatis是Java语言中的一个SQL映射框架,但在.NET环境中,MyBatis-.NET是其对应版本,虽然这里标签...

    spring struts ibatis 开发框架

    Spring、Struts和iBatis是Java开发领域中经典的三大开源框架,它们分别在不同的层次上解决了企业级应用开发中的问题。Spring作为一个全面的轻量级框架,提供了依赖注入(DI)和面向切面编程(AOP)等功能,极大地...

    struts+spring+ibatis框架

    Struts、Spring和iBatis是Java开发中常用的三大开源框架,它们各自负责应用程序的不同层面,共同构建了一个灵活且强大的企业级应用开发解决方案。这里,我们深入探讨这三个框架以及它们如何协同工作。 **Struts框架...

    iBATIS框架源码剖析-任钢

    《iBATIS框架源码剖析》这本书,作者任钢深入探讨了iBATIS的核心机制和实现原理,以下是对该框架的一些关键知识点的详细阐述。 1. **动态SQL**:iBATIS的一大亮点是它的动态SQL功能。通过在XML映射文件中使用条件...

    ibatis框架源代码

    通过对这些组件的源码阅读,我们可以学习到如何设计一个高效、可扩展的持久层框架,同时也可以借鉴Ibatis的优秀实践,比如它的动态SQL支持、缓存机制以及事务管理等。此外,源码中的异常处理、日志记录、单元测试等...

    struts,ibatis框架

    iBatis框架: 1. **SQL映射**:iBatis的核心是XML或注解方式定义的SQL语句,将SQL与Java代码分离,增强了可读性和维护性。 2. **动态SQL**:iBatis支持动态SQL,允许在SQL语句中根据条件动态生成不同的查询,提高...

    Ibatis三层框架软件.rar

    Ibatis三层框架软件是一款专为Java开发者设计的持久层框架,它主要解决了应用程序与数据库之间的交互问题。...如果你是一个Java开发者,掌握Ibatis框架将会大大提高你的开发效率,并有助于构建稳定、可扩展的应用程序。

    ibatis框架实现的增删改查

    本篇文章将深入探讨如何使用Ibatis框架实现对`student`表的增删改查操作,包括模糊查询以及利用序列自动生成主键。 首先,我们来理解Ibatis的基本概念。Ibatis是由Apache基金会维护的一个开源项目,它是一个SQL映射...

    传智播客ibatis教程_ibatis优点总结

    6. **良好的扩展性**:iBATIS允许开发者通过插件进行扩展,例如,可以通过拦截器实现日志记录、性能监控等功能。 7. **与各种数据库兼容**:iBATIS不绑定特定的数据库,可以方便地切换不同的数据库系统,适应不同的...

Global site tag (gtag.js) - Google Analytics