Springboot项目集成h2 databse遇到的异常
1.异常现象
Springboot集成h2 database,h2配置如下
spring.datasource.driver-class-name=org.h2.Driverspring.datasource.url=jdbc:h2:~/testspring.datasource.username=saspring.datasource.password=saspring.datasource.schema=classpath:db/*.sqlspring.datasource.initialization-mode=alwaysspring.datasource.continue-on-error=falsespring.h2.console.path=/h2-consolespring.h2.console.enabled=true
当spring.datasource.schema配置脚本时,就会抛出异常,具体异常信息为:
Caused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'sqlSessionFactory': Requested bean is currently in creation: Is there an unresolvable circular reference?
如果不配置spring.datasource.schema的值,也就不会初始化数据库脚本,也不会抛异常。
2.问题解决
由于能力不足,在网上导出搜索,搜索了整整一天终于解决了。这个异常的原因看名字就能大致猜出来:Bean对象当前正在创建异常。
由于公司用的RPC框架的注解的类都有这个异常抛出,普通@Service类都可以正常注入Bean。所以可以断定是公司RPC框架注解的问题,不能在Bean完全创建好后再注入导致的问题。
解决办法就是在注入的属性上添加@Lazy注解,表示暂时不注入对象,等到调用该属性(接口)时再注入Bean。类似下方代码
@公司RPC@Servicepublic class UserService{ @Lazy @Autowired private UserMapper userMapper; public User getById(String id){ return userMapper.getById(id); }}
原文转载:http://www.shaoqun.com/a/503914.html
cb体系:https://www.ikjzd.com/w/2063
欧苏丹:https://www.ikjzd.com/w/1756
Springboot项目集成h2databse遇到的异常1.异常现象Springboot集成h2database,h2配置如下spring.datasource.driver-class-name=org.h2.Driverspring.datasource.url=jdbc:h2:~/testspring.datasource.username=saspring.datasource.passw
韩国naver:韩国naver
吴佳:吴佳
亚马逊卖家销量不好的7大原因,你占了哪条?:亚马逊卖家销量不好的7大原因,你占了哪条?
清远清泉湾里面有什么好吃的呢?:清远清泉湾里面有什么好吃的呢?
泰迪熊兵马俑,你见过吗? - :泰迪熊兵马俑,你见过吗? -
没有评论:
发表评论