
在Spring中配置jdbc为什么不能用$问题
2017-05-22
展开全部
楼主在spring中配置jdbc时,引用的是dbcp.jar包,在dataSource.properties配置文件中,有MySQL用户名,楼主自然的选择了使用username,密码是root,
然后在spring的配置applicationContext.xml文件中去读取配置,代码检查了几遍都是对的,然而每次运行时都包这个错Cannot create PoolableConnectionFactory (Access denied for user 'ls'@'localhost' (using password: YES)) 然后我发现,ls,是我的电脑名,想到为什么会读我的电脑名的名字,后来检查发现,在加载读取配置文件的标签中
<context:property-placeholder location="classpath:dataSource.properties" /> 少了一条属性system-properties-mode="FALLBACK",
系统默认为system-properties-mode="ENVIRONMENT" 意思就是从系统环境中去读取,把电脑名当做mysql的用户名,修改之后,运行成功。
然后在spring的配置applicationContext.xml文件中去读取配置,代码检查了几遍都是对的,然而每次运行时都包这个错Cannot create PoolableConnectionFactory (Access denied for user 'ls'@'localhost' (using password: YES)) 然后我发现,ls,是我的电脑名,想到为什么会读我的电脑名的名字,后来检查发现,在加载读取配置文件的标签中
<context:property-placeholder location="classpath:dataSource.properties" /> 少了一条属性system-properties-mode="FALLBACK",
系统默认为system-properties-mode="ENVIRONMENT" 意思就是从系统环境中去读取,把电脑名当做mysql的用户名,修改之后,运行成功。
展开全部
首先检查sprint配置
目测没问题编写测试代码:插入条数据抛异运行测试代码结数据表数据确实没滚异前数据都提交数据表
再检查spring数据库配置xml
修改AOP设置pointcut节点怀疑expression配置确修事务依起作用
第三始网搜索
我注意我面临情况相似问题:
由于采用SpringMVC、 MyBatis故统采用标注声明Service、Controller
由于服务器启加载配置文件顺序web.xml—root-context.xml(Spring配置文件)—servlet-context.xml(SpringMVC配置文件)由于root-context.xml配置文件Controller先进行扫描装配service没进行事务增强处理原Service(没经事务加强处理故没事务处理能力)所我必须root-context.xml扫描Controller
Spring容器优先加载由ServletContextListener(应applicationContext.xml)产父容器 SpringMVC(应mvc_dispatcher_servlet.xml)产容器容器Controller进行扫描装配装配 @Service注解实例没经事务加强处理即没事务处理能力Service父容器进行初始化Service保证事务增强处理能力 容器Service exclude掉原事务处理能力Service文情况同bean定义两面优先
原能面提剩工作实践
修改spring-mvc.xml
12345
修改spring-common.xml (applicationContext.xml)
1234
修改spring-mybatis.xml
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<aop:pointcut id="transactionPointcut"
expression="execution(* com.sds..*service.*.*(..))" />
<aop:advisor pointcut-ref="transactionPointcut"
advice-ref="transactionAdvice" />
目测没问题编写测试代码:插入条数据抛异运行测试代码结数据表数据确实没滚异前数据都提交数据表
再检查spring数据库配置xml
修改AOP设置pointcut节点怀疑expression配置确修事务依起作用
第三始网搜索
我注意我面临情况相似问题:
由于采用SpringMVC、 MyBatis故统采用标注声明Service、Controller
由于服务器启加载配置文件顺序web.xml—root-context.xml(Spring配置文件)—servlet-context.xml(SpringMVC配置文件)由于root-context.xml配置文件Controller先进行扫描装配service没进行事务增强处理原Service(没经事务加强处理故没事务处理能力)所我必须root-context.xml扫描Controller
Spring容器优先加载由ServletContextListener(应applicationContext.xml)产父容器 SpringMVC(应mvc_dispatcher_servlet.xml)产容器容器Controller进行扫描装配装配 @Service注解实例没经事务加强处理即没事务处理能力Service父容器进行初始化Service保证事务增强处理能力 容器Service exclude掉原事务处理能力Service文情况同bean定义两面优先
原能面提剩工作实践
修改spring-mvc.xml
12345
修改spring-common.xml (applicationContext.xml)
1234
修改spring-mybatis.xml
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<aop:pointcut id="transactionPointcut"
expression="execution(* com.sds..*service.*.*(..))" />
<aop:advisor pointcut-ref="transactionPointcut"
advice-ref="transactionAdvice" />
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询