applicationContext.xml 中的数据库和 sessionFactory以及事务配置
<bean id="bssDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<!-- Connection Info -->
<property name="driverClassName" value="${bss.jdbc.driver}" />
<property name="url" value="${bss.jdbc.url}" />
<property name="username" value="${bss.jdbc.username}" />
<property name="password" value="${bss.jdbc.password}" />
<!-- Connection Pooling Info -->
<property name="maxActive" value="${bss.dbcp.maxActive}" />
<property name="maxIdle" value="${bss.dbcp.maxIdle}" />
<property name="defaultAutoCommit" value="false" />
<!-- 连接Idle一个小时后超时 -->
<property name="timeBetweenEvictionRunsMillis" value="3600000" />
<property name="minEvictableIdleTimeMillis" value="3600000" />
<property name="testOnBorrow" value="true" />
<property name="testWhileIdle" value="true" />
<property name="validationQuery" value="${bss.dbcp.validationQuery}" />
</bean>
<!-- MyBatis配置 -->
<bean id="bssSqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="bssDataSource" />
<!-- 自动扫描entity目录, 省掉Configuration.xml里的手工配置 别名 -->
<property name="typeAliasesPackage" value="com.jxnc56.bss.entity" />
<!-- 显式指定Mapper文件位置 -->
<property name="mapperLocations" >
<list>
<value>
classpath:config/mybatis/sqlmap/bss/**/*.xml
</value>
</list>
</property>
</bean>
<!-- 扫描basePackage下所有以@MyBatisRepository标识的 接口-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.jxnc56.bss" />
<property name="annotationClass" value="com.jxnc56.bss.dao.MyBatisRepository"/>
</bean>
<!-- 事务管理,@Transactional("tmBss") -->
<bean id="tmBss" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="bssDataSource"></property>
<qualifier type="org.springframework.beans.factory.annotation.Qualifier" value="tmBss" />
</bean>
<!-- 使用annotation定义数据库事务,这样可以在类或方法中直接使用@Transactional注解来声明事务 -->
<tx:annotation-driven transaction-manager="tmBss" proxy-target-class="true" />
java TEST:
@Transactional("tmBss")
public class ProductServiceTest extends SpringTransactionalTestCase {
@Autowired
private ProductDao pDao;
@Test
public void deleteTest (){
pDao.delete(4);
Product product = new Product();
product.setId(4);
System.out.println("-------------------------------------------->"+Arrays.toString(pDao.select(product).toArray()));
}
}
其中ProductDao 是被@MyBatisRepository标示的接口
log:
2013-06-07 09:40:57 107 - org.mybatis.spring.transaction.SpringManagedTransaction -915 [main] DEBUG org.mybatis.spring.transaction.SpringManagedTransaction - JDBC Connection [jdbc:mysql://localhost/nrcompany?useUnicode=true&characterEncoding=utf-8, UserName=root@localhost, MySQL-AB JDBC Driver] will be managed by Spring
2013-06-07 09:40:57 110 - com.jxnc56.bss.dao.ProductDao.delete -918 [main] DEBUG com.jxnc56.bss.dao.ProductDao.delete - ooo Using Connection [jdbc:mysql://localhost/nrcompany?useUnicode=true&characterEncoding=utf-8, UserName=root@localhost, MySQL-AB JDBC Driver]
2013-06-07 09:40:57 115 - com.jxnc56.bss.dao.ProductDao.delete -923 [main] DEBUG com.jxnc56.bss.dao.ProductDao.delete - ==> Preparing: delete from product where id=?
2013-06-07 09:40:57 140 - com.jxnc56.bss.dao.ProductDao.delete -948 [main] DEBUG com.jxnc56.bss.dao.ProductDao.delete - ==> Parameters: 4(Integer)
2013-06-07 09:40:57 142 - org.mybatis.spring.SqlSessionUtils -950 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Releasing transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@3a9d95]
2013-06-07 09:40:57 142 - org.mybatis.spring.SqlSessionUtils -950 [main] DEBUG org.mybatis.spring.SqlSessionUtils - Fetched SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@3a9d95] from current transaction
问题补充:标题打错了 是删除数据
问题补充:问题已经解决了,谢谢前面两位的热心。
相关推荐
mybatis-spring 整合jar包,Spring和MyBatis环境整合mybatis-spring-1.1.1
在Java开发领域,Spring框架和MyBatis框架的整合是常见的数据访问技术组合。Spring作为一个全面的开源应用框架,提供依赖注入(DI)和面向切面编程(AOP)等功能,而MyBatis则是一个轻量级的持久层框架,专注于SQL...
mybatis与spring整合时所依赖的jar包,包括: 1.Mybatis所需的jar包括: ant-1.9.6.jar ant-launcher-1.9.6.jar asm-5.2.jar cglib-3.2.5.jar commons-logging-1.2.jar javassist-3.22.0-CR2.jar log4j-...
SSM(Spring、SpringMVC、MyBatis)框架整合是Java开发中常见的技术栈,主要用于构建企业级的Web应用程序。在这个压缩包中,我们找到了整合MyBatis和Spring所需的全部jar包,这对于初学者或者开发者搭建项目环境非常...
这是一个基于Spring3、MyBatis3和JUnit4的可运行项目示例,旨在提供一个完整的、可测试的Java Web应用程序框架。这个项目的核心是利用Spring作为应用的ioc(Inversion of Control,控制反转)和aop(Aspect Oriented...
这些jar包包括但不限于:spring-context、spring-webmvc、mybatis、mybatis-spring等。 2. **配置Spring**:创建`applicationContext.xml`配置文件,定义Bean的实例和依赖关系。例如,定义DataSource、...
这个整合包中的jar包包括了Spring框架的core、context、aop、beans、web等模块,Mybatis的核心库和Spring Mybatis的整合模块,以及Spring MVC的相关组件。这些jar包涵盖了运行Spring、Mybatis和Spring MVC应用所需的...
SUPPORTED(不支持事务,如果有事务则挂起)、NEVER(不允许存在事务,如果有则抛出异常)、NESTED(嵌套事务,如果当前事务存在,则在嵌套事务内执行,否则新建事务)。 4. **Spring的回滚规则**:默认情况下,...
MyBatis-Spring 整合包是专门为将MyBatis持久层框架与Spring应用框架集成而设计的一个组件。这个包的出现旨在简化MyBatis在Spring环境中的配置和使用,使得开发者可以充分利用两者的优点,实现更加灵活和方便的数据...
在开发Java Web应用程序时,MyBatis是一个非常流行的持久层框架,它简化了数据库操作并与Spring等其他框架集成良好。而JUnit是Java编程语言中广泛使用的单元测试框架,用于确保代码的质量和可靠性。MySql是广泛应用...
在IT行业中,Spring框架与Mybatis的整合是常见的企业级应用开发模式,它结合了Spring的强大功能和Mybatis的灵活性,使得数据访问更加高效。本文将深入探讨如何进行"Spring整合Mybatis"的基础搭建,以及涉及到的相关...
在这个整合项目中,使用了注释型的事务管理,这意味着事务的开启、提交和回滚都是通过在方法上添加特定的Spring注解(如@Transactional)来实现的。这种方式的优点在于代码更易读,无需在XML配置文件中进行繁琐的...
标题中的"mybatis和spring整合jar包"表明我们要讨论的是如何将两个流行的Java框架——MyBatis和Spring——集成在一起,以便在同一个项目中利用它们各自的优势。MyBatis是一个轻量级的持久层框架,它允许开发者用SQL...
MyBatis-Spring 整合是Java开发中常见的数据访问技术组合,主要用于简化MyBatis与Spring框架的集成。这两个库的版本,`mybatis-3.0.2` 和 `mybatis-spring-1.0.0-RC1`,在当时提供了稳定且高效的集成环境,使得...
Spring 和 Mybatis 是两个在...通过上述内容,我们可以看到Spring-Mybatis整合涉及到的核心知识点,包括框架的引入、配置、接口设计、事务管理和测试等多个方面。理解并掌握这些知识点,对于进行Java Web开发至关重要。
7. **测试**:项目中可能包含一个简单的测试类,使用JUnit和Spring Test注解来测试`UserService`的功能,确保MyBatis-Spring整合正确无误。 8. **运行**:项目完成后,可以将整个项目导入IDE,配置好Maven和Tomcat...
这个压缩包“Spring-SpringMVC-Mybatis整合所有jar包”包含了这三个框架整合所需的全部依赖,使得开发者能够快速搭建起一个功能完备的后端服务。 1. **Spring框架**:Spring是一个全面的开源应用框架,它提供了对...
整合MyBatis和Spring,我们可以利用Spring的IoC容器管理MyBatis的SqlSessionFactory和SqlSession,同时可以将MyBatis的Mapper接口直接作为Spring的Bean来使用,这样就实现了数据访问层的解耦和便捷的事务管理。...
Spring MVC、Spring 和 MyBatis 是Java开发中常用的三大框架,它们各自负责应用程序的不同层面:Spring MVC 处理Web请求,Spring 提供依赖注入和事务管理,而MyBatis 则是持久层框架,用于数据库操作。这个整合项目...
2. **事务管理**: Spring可以控制MyBatis的事务边界,通过PlatformTransactionManager实现事务的提交和回滚。 3. **MapperScannerConfigurer**: 这是一个Spring配置类,用于扫描指定包下的Mapper接口,自动注册为...