欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring報錯:Error creating bean with name的問題及解決

 更新時間:2023年08月26日 15:17:39   作者:一勺菠蘿丶  
這篇文章主要介紹了Spring報錯:Error creating bean with name的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

解決Spring報錯:Error creating bean with name

在使用springboot構(gòu)建 oltu-oauth的時候啟動項目報錯

在網(wǎng)上找一下沒找到 ,之前項目對比發(fā)現(xiàn)忘記在WebApplication中少加了個注解

加上之后問題解決,查了下這個注解(橫線以下是對@MapperSecan的介紹):

之前是,直接在Mapper類上面添加注解@Mapper,這種方式要求每一個mapper類都需要添加此注解,麻煩。

通過使用@MapperScan可以指定要掃描的Mapper類的包的路徑,比如:

@SpringBootApplication
@MapperScan("com.lz.water.monitor.mapper")
// 添加對mapper包掃描
public class Application {
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);	}
}

同時,使用@MapperScan注解多個包

@SpringBootApplication  
@MapperScan({"com.kfit.demo","com.kfit.user"})  
public class App {  
    public static void main(String[] args) {  
       SpringApplication.run(App.class, args);  
    }  
} 

如果如果mapper類沒有在Spring Boot主程序可以掃描的包或者子包下面,可以使用如下方式進(jìn)行配置

@SpringBootApplication  
@MapperScan({"com.kfit.*.mapper","org.kfit.*.mapper"})  
public class App {  
    public static void main(String[] args) {  
       SpringApplication.run(App.class, args);  
    }  
} 

導(dǎo)入seata報錯:Error creating bean with name ‘dataSourceProxyConfig‘

先去找配置的 registry.conf和file.conf有沒有問題,如果沒有問題那么就是你yml中配置了數(shù)據(jù)源

?datasource:
? ? driver-class-name: com.mysql.jdbc.Driver
? ? url: jdbc:mysql://localhost:3306/gift_auth
? ? username: root
? ? password: xxx

同時在你這個服務(wù)中又配置了數(shù)據(jù)源  這里可以是mybatis-plus版也可以是mybatis版,導(dǎo)致和yml中配置的數(shù)據(jù)源沖突了。

package com.wangling.config;
import com.alibaba.druid.pool.DruidDataSource;
import com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean;
import io.seata.rm.datasource.DataSourceProxy;
import org.mybatis.spring.transaction.SpringManagedTransactionFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
@Configuration
public class DataSourceConfiguration {
? ? //mapper.xml路徑
? ? @Value("${mybatis-plus.mapper-locations}")
? ? private String mapperLocations;
? ? //手動配置bean
? ? @Bean
? ? @ConfigurationProperties("spring.datasource")
? ? public DataSource druidDataSource(){
? ? ? ? return new DruidDataSource();
? ? }
? ? @Bean
? ? public MybatisSqlSessionFactoryBean sqlSessionFactoryBean(DataSourceProxy dataSourceProxy) throws Exception {
? ? ? ? //處理MybatisPlus
? ? ? ? MybatisSqlSessionFactoryBean factory = new MybatisSqlSessionFactoryBean();
? ? ? ? factory.setDataSource(dataSourceProxy);
? ? ? ? factory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(mapperLocations));
? ? ? ? //事務(wù)管理工廠
? ? ? ? factory.setTransactionFactory(new SpringManagedTransactionFactory());
? ? ? ? return factory;
? ? }
? ? @Bean
? ? public DataSourceProxy dataSource() {
? ? ? ? return new DataSourceProxy(druidDataSource());
? ? }
}

所以在自定義配置源里面加入@Primary 默認(rèn)自定義配置先啟動

package com.wangling.config;
import com.alibaba.druid.pool.DruidDataSource;
import com.baomidou.mybatisplus.spring.MybatisSqlSessionFactoryBean;
import io.seata.rm.datasource.DataSourceProxy;
import org.mybatis.spring.transaction.SpringManagedTransactionFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
@Configuration
public class DataSourceConfiguration {
? ? //mapper.xml路徑 ?這里如果是mybatis就把mybatis-plus修改了同時修改yml中的配置
? ? @Value("${mybatis-plus.mapper-locations}")
? ? private String mapperLocations;
? ? //手動配置bean
? ? @Bean
? ? @ConfigurationProperties("spring.datasource")
? ? @Primary
? ? public DataSource druidDataSource(){
? ? ? ? return new DruidDataSource();
? ? }
? ? @Bean
? ? public MybatisSqlSessionFactoryBean sqlSessionFactoryBean(DataSourceProxy dataSourceProxy) throws Exception {
? ? ? ? //處理MybatisPlus
? ? ? ? MybatisSqlSessionFactoryBean factory = new MybatisSqlSessionFactoryBean();
? ? ? ? factory.setDataSource(dataSourceProxy);
? ? ? ? factory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(mapperLocations));
? ? ? ? //事務(wù)管理工廠
? ? ? ? factory.setTransactionFactory(new SpringManagedTransactionFactory());
? ? ? ? return factory;
? ? }
? ? @Bean
? ? public DataSourceProxy dataSource() {
? ? ? ? return new DataSourceProxy(druidDataSource());
? ? }
}

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 關(guān)于synchronized的參數(shù)及其含義

    關(guān)于synchronized的參數(shù)及其含義

    這篇文章主要介紹了synchronized的參數(shù)及其含義詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • 監(jiān)控Spring Boot 項目運行情況操作方法

    監(jiān)控Spring Boot 項目運行情況操作方法

    在實際開發(fā)中,經(jīng)常會遇到想要獲取到服務(wù)器應(yīng)用的運行情況的場景,在微服務(wù)架構(gòu)下對于每個應(yīng)用運行情況的監(jiān)控是保證系統(tǒng)高可用的關(guān)鍵,本文給大家介紹如何實現(xiàn)在Spring Boot的jar包中對系統(tǒng)的運行情況進(jìn)行監(jiān)控操作,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • Java中的流式編程問題

    Java中的流式編程問題

    這篇文章主要介紹了Java中的流式編程問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • SpringBoot中的配置類(@Configuration)

    SpringBoot中的配置類(@Configuration)

    這篇文章主要介紹了SpringBoot中的配置類(@Configuration),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 詳解Java圖形化編程中的鼠標(biāo)事件設(shè)計

    詳解Java圖形化編程中的鼠標(biāo)事件設(shè)計

    這篇文章主要介紹了Java圖形化編程中的鼠標(biāo)事件設(shè)計,是Java的GUI開發(fā)中的基礎(chǔ)部分,需要的朋友可以參考下
    2015-10-10
  • Springboot實現(xiàn)添加本地模塊依賴方式

    Springboot實現(xiàn)添加本地模塊依賴方式

    這篇文章主要介紹了Springboot實現(xiàn)添加本地模塊依賴方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • IDEA中如何查找jar包之間的依賴關(guān)系并忽略依賴的某個包

    IDEA中如何查找jar包之間的依賴關(guān)系并忽略依賴的某個包

    這篇文章主要介紹了IDEA中如何查找jar包之間的依賴關(guān)系并忽略依賴的某個包?本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • Java并發(fā)編程之常用的多線程實現(xiàn)方式分析

    Java并發(fā)編程之常用的多線程實現(xiàn)方式分析

    這篇文章主要介紹了Java并發(fā)編程之常用的多線程實現(xiàn)方式,結(jié)合實例形式分析了java并發(fā)編程中多線程的相關(guān)原理、實現(xiàn)方法與操作注意事項,需要的朋友可以參考下
    2020-02-02
  • JAVAE中servlet的概念及使用示例詳解

    JAVAE中servlet的概念及使用示例詳解

    servlet是一種實現(xiàn)動態(tài)頁面的技術(shù),他是由tomcat提供給程序員的一組API可以幫助程序員開發(fā)一個web程序,這篇文章主要介紹了JAVAE中servlet的概念及使用,需要的朋友可以參考下
    2024-05-05
  • 三分鐘快速掌握J(rèn)ava中枚舉(enum)

    三分鐘快速掌握J(rèn)ava中枚舉(enum)

    enum的全稱為enumeration, 是 JDK 1.5中引入的新特性,存放在 java.lang包中。下面這篇文章是我在使用enum過程中的一些經(jīng)驗和總結(jié),分享出來方便大家快速的掌握J(rèn)ava中枚舉(enum),有需要的朋友們下面跟著小編來一起看看吧。
    2016-12-12

最新評論