mybatis -spring 整合 .事物不起作用

发布于 2021-11-22 14:24:11 字数 324 浏览 849 评论 6

我最近需要配置一个 spring mvc -spring - mybatis  项目.但是有个很不好的就是,不管我与没有配置事物,他都一样能提交, 比如,我根本没有配置 <tx:advice> 也没配置 <tx:annotation-driven transaction-manager="transactionManager" /> ,没做任何事物配置, 调用 insert 方法的时候还是能插入数据 

而且事物是在 mapping (spring生成的 ,不是我写的)里面的,aop 能使用,



如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

背叛残局 2021-11-25 18:34:08
<!-- 配置数据源 -->
	<bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
		init-method="init" destroy-method="close">
		<property name="url" value="${jdbc_url}" />
		<property name="username" value="${jdbc_username}" />
		<property name="password" value="${jdbc_password}" />

		<!-- 初始化连接大小 -->
		<property name="initialSize" value="0" />
		<!-- 连接池最大使用连接数量 -->
		<property name="maxActive" value="20" />
		<!-- 连接池最大空闲 -->
		<property name="maxIdle" value="20" />
		<!-- 连接池最小空闲 -->
		<property name="minIdle" value="0" />
		<!-- 获取连接最大等待时间 -->
		<property name="maxWait" value="60000" />

		<!-- <property name="poolPreparedStatements" value="true" /> <property 
			name="maxPoolPreparedStatementPerConnectionSize" value="33" /> -->

		<property name="validationQuery" value="${validationQuery}" />
		<property name="testOnBorrow" value="false" />
		<property name="testOnReturn" value="false" />
		<property name="testWhileIdle" value="true" />

		<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
		<property name="timeBetweenEvictionRunsMillis" value="60000" />
		<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
		<property name="minEvictableIdleTimeMillis" value="25200000" />

		<!-- 打开removeAbandoned功能 -->
		<property name="removeAbandoned" value="true" />
		<!-- 1800秒,也就是30分钟 -->
		<property name="removeAbandonedTimeout" value="1800" />
		<!-- 关闭abanded连接时输出错误日志 -->
		<property name="logAbandoned" value="true" />

		<!-- 监控数据库 -->
		<!-- <property name="filters" value="stat" /> -->
		<property name="filters" value="mergeStat" />
	</bean>

陌上芳菲 2021-11-25 14:15:49
<context:component-scan base-package="com.sd">
		<!-- 不扫描 @Controller的类 -->
		<context:exclude-filter type="annotation"
			expression="org.springframework.stereotype.Controller" />
	</context:component-scan>
	<!-- 引入项目配置文件 -->
	<!-- <context:property-placeholder location="classpath:config.properties" 
		/> -->


	<bean id="aop" class="com.sd.test.aspect.TAspect"></bean>
	<aop:config>
		<aop:aspect ref="aop">

			<aop:pointcut id="pointcut"
				expression="execution(* com.sd..*.service..impl.*.*(..))" />
			<aop:before pointcut-ref="pointcut" method="say" />
			<aop:before method="say" pointcut-ref="pointcut" />
		</aop:aspect>
	</aop:config>
	<bean
		class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="locations">
			<list>
				<value>classpath:dataSourceConfig.properties</value>
			</list>
		</property>
	</bean>

天涯离梦残月幽梦 2021-11-25 13:06:18

但是我配置了声明式的事物,他还是一样呀!

成熟稳重的好男人 2021-11-25 08:04:08

回复
那就是你配置或者程序的问题了 贴出来看下

清晨说ぺ晚安 2021-11-25 03:39:22

回复
我贴出来了,你看看!

情绪失控 2021-11-22 22:02:07

默认的就是每条sql一个独立的事物并且自动提交哦

如果想要自定义得用声明式事物哦

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文