0 0

spring集成ibatis问题 10

applicationContext.xml
<!-- 配置事务特性 -->

    <tx:advice id="txAdvice" transaction-manager="txManager">

        <tx:attributes>

          <tx:method name="add*" propagation="REQUIRED"/>

          <tx:method name="del*" propagation="REQUIRED"/>

          <tx:method name="update*" propagation="REQUIRED"/>

          <tx:method name="*" read-only="true"/>

      </tx:attributes>

    </tx:advice>

   

    <!-- 配置哪些类的方法需要进行事务管理 -->

    <aop:config>

      <aop:pointcut id="allManagerMethod" expression="execution(* add*(..))"/>

      <aop:advisor advice-ref="txAdvice" pointcut-ref="allManagerMethod"/>

    </aop:config>



    <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

    <property name="dataSource" ref="dataSource"/>

    </bean>

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

        <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>

        <property name="url" value="jdbc:sqlserver://localhost:1433;databasename=test"/>

        <property name="username" value="sa"/>

        <property name="password" value=""/>

    </bean>

<bean id="userDAO" class="dao.imp.BeanDaoImp">

    <property name="sqlMapClient" ref="sqlMapClient"/>
     
</bean>


<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">

    <property name="configLocation"> <value>classpath:SqlMapConfig.xml </value> </property>

    <property name="dataSource" ref="dataSource"> </property>

</bean>


SqlMapConfig.xml
<sqlMapConfig>

    <settings

      lazyLoadingEnabled="true"

        useStatementNamespaces="true" />
 

  <sqlMap resource="com/tx/vo/Users.xml"/>

</sqlMapConfig>


Users.xml
<sqlMap namespace="Users">

    <typeAlias alias="users" type="com.tx.vo.Users"/>

    <cacheModel id="usersCache" type="MEMORY" readOnly="false" serialize="true">
        <flushInterval hours="24"/>
        <flushOnExecute statement="Users.update"/>
        <flushOnExecute statement="Users.insert"/>
        <flushOnExecute statement="Users.delete"/>
    </cacheModel>

    <resultMap id="usersResult" class="users">
    <result property="id" column="id"/>
        <result property="username" column="username"/>
        <result property="age" column="age"/>
    </resultMap>

    <!-- hsql db used for this example capitalizes col names
        so Map will have them as all caps -->
    <select id="getAll" resultClass="users"> <!--  cacheModel="usersCache" 这个加了报错 -->
        SELECT
        id,
            username,       
            age     
        FROM users
    </select>

    <select id="getById" resultMap="usersResult" parameterClass="java.lang.Integer">
        SELECT id,username, age
        FROM users
        WHERE id = #value#           
    </select>

    <update id="update" parameterClass="users">
        UPDATE users
        SET
            username = #username#,         
            age = #age#         
        WHERE id = #id#
    </update>

    <insert id="insert" parameterClass="users" >
        INSERT INTO users (username, age)
        VALUES (#username#, #age#)
    </insert>

    <delete id="delete" parameterClass="java.lang.Integer">
        DELETE FROM users WHERE id = #value#
    </delete>
</sqlMap>


dao.imp.BeanDaoImp.java
public class BeanDaoImp extends SqlMapClientDaoSupport implements BeanDao {

    public void addBean(Users u) {
this.getSqlMapClientTemplate().insert("Users.insert", u);
    }
}


测试类
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        BeanDao dao = (BeanDao) ctx.getBean("userDAO");
        Users u = new Users();
        u.setId(22);
        u.setUsername("tx");
        dao.addBean(u);


我现在程序执行到
this.getSqlMapClientTemplate()都没事,一调this.getSqlMapClientTemplate().insert("Users.insert", u);
就出错
java.lang.NoSuchMethodError: com.ibatis.sqlmap.client.SqlMapSession.getCurrentConnection()Ljava/sql/Connection;
2008年8月27日 13:42

2个答案 按时间排序 按投票排序

0 0

推荐你在JAVAEYE上搜索SUNCMS这个关键字,这个系统SPRING,IBATIS集成的比较好,我就是根据这个学的!

2008年8月28日 14:02
0 0

java.lang.NoSuchMethodError: com.ibatis.sqlmap.client.SqlMapSession.getCurrentConnection()Ljava/sql/Connection; ,一般来说java.lang.NoSuncMethodError都是由于加的jar的版本的问题,如用MyEclipse不要用它集成的包,自己单独加上所学的包,同一个包确保只有一个,以免引起错误

2008年8月27日 14:24

相关推荐

    spring+ibatis集成文档

    ### Spring与iBatis集成开发详解 #### 一、引言 在Java企业级应用开发领域,Spring框架因其强大的依赖注入(DI)和面向切面编程(AOP)能力而备受青睐;而iBatis(现称为MyBatis)则以其简洁的SQL映射功能而闻名。...

    Spring与iBATIS的集成

    Spring与iBATIS的集成 iBATIS似乎已远离众说纷纭的OR框架之列,通常人们对非常流行的Hibernate情有独钟。但正如Spring A Developer's Notebook作者Bruce Tate 和Justin Gehtland所说的那样,与其他的OR框架相比...

    spring 集成ibatis

    当我们将 Spring 与 iBatis 集成时,我们可以利用 Spring 的强大管理能力来控制 iBatis 的 SqlSession 和 SqlSessionFactory,从而实现更优雅的数据库操作。以下是一些关于 Spring 集成 iBatis 的关键知识点: 1. *...

    spring ibatis整合所需jar包

    在Java Web开发中,Spring和iBatis是两个非常重要的框架。Spring是一个全面的后端开发框架,提供了依赖注入、AOP(面向切面编程)、事务管理等特性,而iBatis则是一个优秀的持久层框架,它将SQL语句与Java代码分离,...

    spring集成ibatis示例-websphere5.1选型webservice

    在本示例中,我们将探讨如何在Spring框架中集成iBATIS,并且将这个集成应用部署到WebSphere 5.1服务器上,并提供一个基于Web服务的接口。首先,我们需要理解Spring和iBATIS的基本概念。 Spring是一个开源的Java企业...

    spring与ibatis整合集成实例

    以上就是 Spring 与 iBATIS 整合集成的主要步骤和知识点。通过这样的集成,可以利用 Spring 的强大功能管理和协调整个应用程序,同时利用 iBATIS 的灵活性处理数据库操作,实现高效的企业级应用开发。在实际项目中,...

    spring-ibatis简单集成

    在IT行业中,Spring框架与iBatis的集成是常见的数据访问解决方案,特别是在Java Web开发中。这个集成将Spring的依赖注入特性和iBatis的SQL映射功能相结合,提供了高效且灵活的数据操作方式。让我们深入探讨一下这个...

    Spring struts ibatis Mysql 集成

    在IT行业中,集成Spring、Struts和iBatis与MySQL是构建企业级Java Web应用程序的常见选择。这个项目集成了Spring 2.5.5、Struts 2.1.6、iBatis 2.3.4以及MySQL 5.1数据库,使用IntelliJ IDEA 9作为开发环境。下面将...

    spring整合ibatis

    Spring整合iBatis是将流行的Java持久层框架iBatis与Spring框架集成,以实现更高效、更灵活的数据库操作。这种整合使得开发者可以利用Spring的依赖注入(DI)和管理事务的能力,同时享受iBatis提供的SQL映射功能。在...

    Spring高版本对ibatis的支持

    最近想在最新的Spring5.0中集成ibatis(不是mybatis),发现已经不在支持SqlmapClientTemplate和SqlmapClientFactoryBean,于是搞了这个工具jar来进行支持如下配置 &lt;bean id="sqlMapClient" class="org.spring...

    Spring与iBATIS的集成示例代码

    首先,集成Spring和iBATIS的关键在于配置。在Spring的配置文件(如`applicationContext.xml`)中,我们需要定义数据源、SQLMapClient以及SqlMapClientTemplate。数据源通常使用DataSource bean来创建,例如使用...

    Spring + Ibatis 与mysql集群集成

    本教程将深入探讨如何将Spring、Ibatis框架与MySQL集群集成,以实现高效、可靠的数据库操作。 首先,让我们了解Spring和Ibatis。Spring是一个全面的Java应用开发框架,它提供了依赖注入、面向切面编程、事务管理等...

    Struts2.1.8 spring2.5.6 ibatis2.3 集成

    Struts2.1.8、Spring2.5.6 和 iBatis2.3 的集成是Web开发中一种常见的技术组合,主要用于构建企业级的Java应用程序。这些框架各自都有其独特的优势,当它们协同工作时,可以提供强大的功能,如模型-视图-控制器(MVC...

    maven搭建SpringMVC+spring+ibatis

    Ibatis与Spring框架集成后,可以使用Spring的DI功能管理数据库连接,同时通过MyBatis-Spring提供的MapperScannerConfigurer自动扫描并注册Mapper接口,实现DAO层的便捷开发。 在SpringMVC+Spring+Ibatis的架构中,...

    spring3.0+ibatis 集成实例

    Spring 3.0 和 iBatis 的集成是一个常见的企业级应用开发模式,它结合了Spring的强大依赖注入(DI)和面向切面编程(AOP)能力与iBatis灵活的SQL映射机制,实现了业务逻辑层与数据访问层的分离,提高了代码的可维护...

    Struts2+Spring+Hibernate和Struts2+Spring+Ibatis

    Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...

    struts+spring+ibatis框架集成.pdf

    Struts2、Spring和iBatis是三种广泛应用于Java企业级开发的开源框架,它们各自在不同的领域提供了强大的功能,并且可以很好地集成在一起,形成一套完整的MVC(模型-视图-控制器)架构。 Struts2是基于MVC设计模式的...

    Spring集成iBatis

    **Spring集成iBatis详解** 在Java开发中,Spring框架以其强大的依赖注入和面向切面编程能力被广泛应用,而iBatis作为一个轻量级的持久层框架,它将SQL语句与Java代码分离,提供了更灵活的数据访问方式。将Spring与...

Global site tag (gtag.js) - Google Analytics