0 0

spring mybatis集成 添加数据 事务回滚了 是我的配置出错了吗 求解啊10

spring和mybatis集成 添加一条数据数据回滚了 看日志 打印了sql语句 数据库但没有数据 这是怎么回事了
我的配置:
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
		<property name="driverClassName" value="${jdbc.driverClassName}"/>
		<property name="url" value="${jdbc.url}"/>
		<property name="username" value="${jdbc.username}"/>
		<property name="password" value="${jdbc.password}"/>
	</bean>
	
	<bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<property name="configLocation" value="classpath:SqlMapConfig.xml"/>
	</bean>
    
    <bean id="myTransaction" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
				<property name="dataSource" ref="dataSource"/>
	</bean>
	<tx:advice id="myadvice" transaction-manager="myTransaction">
        <tx:attributes>
            <tx:method name="get*" read-only="true"/>
            <tx:method name="list*" read-only="true"/>
        	<tx:method name="add*" propagation="REQUIRED"/>
			<tx:method name="del*" propagation="REQUIRED"/>
			<tx:method name="edit*" propagation="REQUIRED"/>
            <tx:method name="*"/>
        </tx:attributes>
	</tx:advice>
	<aop:config>
		<aop:pointcut id="bizmethod" expression="execution(* com.bfly.ec.service.impl.*.*(..))"/>
		<aop:advisor pointcut-ref="bizmethod" advice-ref="myadvice"/>
	</aop:config>

	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="com.bfly.ec.mapper"/>
	</bean>
		
	<import resource="applicationContext-*.xml"/>
</beans>


代码:
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import com.bfly.common.page.Pager;
import com.bfly.ec.entity.GoodsMsg;
import com.bfly.ec.mapper.GoodsMsgMapper;
import com.bfly.ec.service.IGoodsMsgService;

public class GoodsMsgServiceImpl implements IGoodsMsgService {

	@Resource
	private GoodsMsgMapper goodsMsgMapper;
	
	public int addGoodsMsg(GoodsMsg goodsMsg) {
		return goodsMsgMapper.saveGoodsMsg(goodsMsg);
	}
	public Map<String, Integer> getGoodsPercent(int goodsId){
		Map<String, Integer> map=goodsMsgMapper.getGoodsPercent(goodsId);
		int count=map.get("countnum");
		int value=0;
		for (String key:map.keySet()) {
			if(key.equalsIgnoreCase("countnum"))
			{
				continue;
			}
			value=Math.round(map.get(key)/(float)count*100);
			map.put(key, value);
		}
		return map;
	}
	
	public int getCountMsg(int propId) {
		Map<String,Object> map=new HashMap<String, Object>();
		map.put("goodsId",propId);
		return goodsMsgMapper.getCountMsg(map);
	}
}

打印的日志:

18:26:16,546 DEBUG saveGoodsMsg:47 - ooo Using Connection [jdbc:sqlserver://127.0.0.1:1433;xopenStates=false;sendTimeAsDatetime=true;trustServerCertificate=false;sendStringParametersAsUnicode=true;selectMethod=direct;responseBuffering=adaptive;packetSize=8000;loginTimeout=15;lockTimeout=-1;lastUpdateCount=true;encrypt=false;disableStatementPooling=true;databaseName=bfly_ec;applicationName=Microsoft SQL Server JDBC Driver;, UserName=hulibo, Microsoft SQL Server JDBC Driver 3.0]
18:26:16,546 DEBUG saveGoodsMsg:47 - ==>  Preparing: insert into goods_msg(user_id,username,email,msg_title,msg_content,goods_start,msg_date,goods_id,status,type_id) values(?,?,?,?,?,?,?,?,?,?);
18:26:16,546 DEBUG saveGoodsMsg:47 - ==> Parameters: 1(Integer), hulibo(String), fsdfsd(String), 对 '高清液晶电视LCD-32L100AS购买即返1000积分'的评价(String), sdfsdfsd(String), 3(Integer), 2012-05-17 18:26:16.546(Timestamp), 5(Integer), 0(Integer), 67(Integer)
2012年5月21日 15:12
目前还没有答案

相关推荐

    Spring+Mybatis整合事务回滚

    花了一晚上时间终于搞出来了Spring整合Mybatis事务回滚(Mysql数据库),控制Service层中的多次插入操作,多次操作整体是一个事务。 里面有缘嘛和jar包,资源为war包,导入即可。运行Test类中的测试代码即可。 建表...

    Spring/SpringMVC/MyBatis整合+事务回滚

    在"Spring/SpringMVC/MyBatis整合+事务回滚"的主题中,我们将深入探讨如何将这三个框架整合起来,并实现事务的回滚功能。 首先,Spring框架是核心,它提供了依赖注入(DI)和面向切面编程(AOP)的能力,使得代码更...

    spring-mybatis集成jar包以及文档

    2. **配置数据源**:在 Spring 的配置文件(如 `applicationContext.xml`)中定义数据源,这是 Spring 和 MyBatis 交互的基础。可以使用 `org.springframework.jdbc.datasource.DriverManagerDataSource` 或其他高级...

    Java项目框架-SpringMVC+Spring+Mybatis集成开发环境

    SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+...

    SpringMVC+Spring+Mybatis集成开发环境

    在IT行业中,SpringMVC、Spring和Mybatis是三大核心框架,它们的集成使用是Java Web开发中的常见实践。这个集成开发环境旨在提供一个高效、灵活的开发平台,以实现业务逻辑与数据访问的分离,提高代码的可维护性和可...

    关于SpringMyBatis纯注解事务不能提交的问题分析与解决

    在使用Spring结合MyBatis框架进行开发时,有时会遇到事务管理方面的问题,特别是当项目采用纯注解的方式配置事务时,可能会出现事务无法正常提交的情况。这种问题通常会在不同的数据库类型(如MySQL和Oracle)上表现...

    spring整合mybatis时需要用到的配置文件

    在Spring和MyBatis的整合过程中,配置文件起着至关重要的作用。它们定义了Spring如何管理MyBatis的SqlSessionFactory,以及数据源、事务管理器等核心...理解并正确配置这些文件对于顺利集成Spring和MyBatis至关重要。

    spring+mybatis的声明式事务

    MyBatis本身并不提供事务管理,但在Spring环境下,MyBatis的SqlSession会自动被Spring事务管理器控制。当事务开始后,所有的SqlSession操作(如insert、update、delete)都会被包含在这个事务中,直到事务结束。 6...

    spring与mybatis整合实现事务配置

    1. **引入依赖**:在项目中添加Spring、MyBatis以及数据库驱动的相关jar包,如果使用的是Maven或Gradle,则需在pom.xml或build.gradle中配置相应的依赖。 2. **配置MyBatis**:创建MyBatis的配置文件`mybatis-...

    SSM(Spring+SpringMVC+MyBatis)多数据源配置框架

    4. **MyBatis配置**:每个数据源都需要对应的MyBatis配置,包括SqlSessionFactoryBean的创建,以及Mapper接口和XML配置文件的关联。 5. **代码结构**:通常,我们会为每个数据源创建一个独立的服务层和DAO层,以...

    spring整合mybatis多数据源

    在IT行业中,Spring框架与MyBatis的整合是常见的数据访问技术组合,它们可以提供灵活、高效的数据库操作。当我们需要处理多个数据源时,例如在分布式系统或读写分离的场景下,Spring整合MyBatis的多数据源切换就显得...

    springMVC+Spring+MyBatis集成

    Spring还提供了数据访问、事务管理、任务调度等模块,支持与各种持久化技术的集成,包括MyBatis。 3. MyBatis MyBatis是一个轻量级的持久层框架,它简化了SQL操作,将SQL语句与Java代码分离。开发者可以使用XML或...

    Spring3 整合MyBatis3 配置多数据源动态选择SqlSessionFactory详细教程

    Spring3 整合 MyBatis3 配置多数据源动态选择 SqlSessionFactory 详细教程 本教程主要介绍了 Spring3 整合 MyBatis3 配置多数据源动态选择 SqlSessionFactory 的详细教程。下面将详细介绍如何实现 Spring 整合 ...

    spring和mybatis整合配置

    3. **配置MyBatis**:创建MyBatis的配置文件(如:mybatis-config.xml),设置数据源、事务管理器等。同时,定义Mapper XML文件,其中包含SQL语句和结果映射。 4. **编写Mapper接口**:在Java代码中,创建Mapper...

    Spring+SpringMVC+Mybatis动态链接多数据源

    4. **Mybatis集成**:为每个数据源创建一个SqlSessionFactory,并在Mybatis的配置中指定对应的DataSource。 5. **业务层调整**:在Service层,根据业务逻辑选择对应的数据源进行操作,可以通过ThreadLocal等手段...

    spring_mybatis 整合jar包

    3. 配置MyBatis:创建MyBatis的配置文件(mybatis-config.xml),定义数据源、事务管理器和Mappers。 4. 编写Mapper接口和SQL映射文件:定义Mapper接口,编写对应的XML映射文件,指定SQL语句和结果映射。 5. 使用...

    spring mybatis atomikos 多库分布式事务demo

    在IT行业中,分布式事务是大型系统中不可或...接着,配置Spring的事务管理器,声明Atomikos作为全局事务管理器,并指定相应的事务属性,如超时时间、回滚规则等。在applicationContext.xml或对应的配置类中: ```xml ...

    Spring集成Mybatis所需jar包

    在Java开发领域,Spring框架和MyBatis框架的集成是常见的数据访问技术组合。Spring作为一个全面的轻量级应用框架,提供了依赖注入、事务管理、AOP(面向切面编程)等功能;而MyBatis则是一个优秀的持久层框架,它...

    Spring与Mybatis集成

    集成Spring和Mybatis,首先需要在Spring的配置文件中定义数据源、SqlSessionFactory和MapperScannerConfigurer。数据源是数据库连接的载体,SqlSessionFactory是Mybatis的核心对象,用于创建SqlSession,而...

    Spring MyBatis企业应用实战pdf书籍

    接下来,重点讲解了Spring与MyBatis的集成过程,包括Spring的DataSource配置、事务管理、以及MyBatis-Spring的使用,让读者了解如何在Spring环境中优雅地使用MyBatis进行数据访问。此外,书中还会涉及Spring MVC的...

Global site tag (gtag.js) - Google Analytics