项目使用mybatis进行动态数据库查询,架构为spring+mybatis+oracle,现迁移到RDS for PPAS数据库,更改配置配置如下:
重新编译后启动,发现存在大量如下日志:
21:18:09.010 [scheduler_Worker-9] DEBUG org.mybatis.spring.SqlSessionUtils - Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@6ce43d7d] 21:18:09.010 [scheduler_Worker-9] DEBUG o.s.jdbc.datasource.DataSourceUtils - Returning JDBC Connection to DataSource 21:18:09.010 [scheduler_Worker-9] DEBUG org.mybatis.spring.SqlSessionUtils - Creating a new SqlSession 21:18:09.010 [scheduler_Worker-9] DEBUG org.mybatis.spring.SqlSessionUtils - SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@7c811164] was not registered for synchronization because synchronization is not active 21:18:09.010 [scheduler_Worker-9] DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource 21:18:09.010 [scheduler_Worker-9] DEBUG o.m.s.t.SpringManagedTransaction - JDBC Connection [com.alibaba.druid.proxy.jdbc.ConnectionProxyImpl@186f74f3] will not be managed by Spring 21:18:09.010 [scheduler_Worker-9] DEBUG d.p.m.C.loadByDetailId - ==> Preparing: select manythings from co_bid_attachment where DETAIL_ID = ? 21:18:09.010 [scheduler_Worker-9] DEBUG d.p.m.C.loadByDetailId - ==> Parameters: A8D9A80F-E0FC-F499-B38B-24E3C6E470DE(String) 21:18:09.068 [scheduler_Worker-9] DEBUG d.p.m.C.loadByDetailId - <== Total: 0
请问应该要如何修复其中出现的“同步未激活”及“jdbc连接无法spring管理”的错误?
原提问者GitHub用户huangjj27
如果您在使用Spring时遇到无法管理Druid数据库连接的问题,可能是因为Spring未正确配置Druid数据源。以下是一些可能的解决方法:
1.检查Druid数据源配置
请检查您的Druid数据源配置是否正确。特别注意以下几个配置项:
url:数据库连接字符串。
username:数据库用户名。
password:数据库密码。
driver-class-name:数据库驱动类名。
initialSize:初始化连接池大小。
maxActive:最大连接池大小。
maxWait:等待连接超时时间。
validationQuery:连接验证语句。
如果这些配置项不正确,可能会导致Druid数据源无法正确初始化连接池,从而无法管理数据库连接。
2.配置Spring数据源
请在Spring配置文件中配置Druid数据源,例如:
xml
Copy
请注意将"dataSource"替换为您的数据源名称,以及将"jdbc:mysql://localhost:3306/test"、"root"和"password"替换为您的数据库连接信息。
3.配置Spring事务管理器
请在Spring配置文件中配置Druid数据源的事务管理器,例如:
xml
Copy
请注意将"transactionManager"替换为您的事务管理器名称,以及将"dataSource"替换为您的数据源名称。
4.根据需求添加其他配置
根据您的具体需求,您还可以在Spring配置文件中添加其他配置,例如数据源拦截器、过滤器、监听器、连接池监控等。
最后发现配置mapper所在路径即可,即在application-context.xml里的sqlSesstionFactory修改如下:
原回答者GitHub用户huangjj27
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。