ホームページ  >  記事  >  Java  >  springBoot mybatis パッケージのスキャン問題を解決する方法

springBoot mybatis パッケージのスキャン問題を解決する方法

WBOY
WBOY転載
2023-05-16 19:19:041490ブラウズ

springBoot mybatis パッケージ スキャン

@MapperScan(basePackages = {"com.zscat.*.dao","com.zscat.*.*.dao"})
@EnableTransactionManagement(proxyTargetClass = true)
@SpringBootApplication
@MapperScan(basePackages = {"com.zscat.*.dao","com.zscat.*.*.dao"})
public class   ShopServiceApplication {
    public static void main(String[] args) {
        SpringApplication application = new SpringApplication(ShopServiceApplication.class);
        application.run(args);
    }
}

springBoot は mybatis インターフェイス パッケージをスキャンできません

Spring Boot スタートアップ クラスにアノテーションを追加し、jar パッケージでインターフェイス ファイル パッケージ パスを指定するだけで済みます。 .

@MapperScan(basePackages = "com.xx.**.dao")

@Controller および @EnableAutoConfiguration アノテーションを使用する場合は、別のアノテーション @ComponentScan も追加する必要があります。

@Controller と @EnableAutoConfiguration にはアノテーションをスキャンする機能がなく、@ComponentScan は

springboot は @Component、@Service、@Repository、@Controller のスキャンに特別に使用されます

概要:

スプリングブートを使用してクラス構成スキャンを開始するための 2 つのアノテーション構成メソッド:

1、@Controller

   @EnableAutoConfiguration
   @ComponentScan

2, @SpringBootApplication

@SpringBootApplication アノテーションは、@Configuration、@EnableAutoConfiguration、および @ComponentScan

In と同等です。さらに、Service と DAO をスキャンできるように、公式の推奨に従って application.java (Startup クラス) もルート ディレクトリに配置する必要があります。そうしないと、アノテーションをスキャンできないという問題が発生します。

--- 更新日: 2018-10-14 ---

最近、最新の springboot 2.0.5.RELEASE バージョンを使用しました。新しいスキャン アノテーションが追加されました。新しいバージョンのspringboot アプリケーションは任意の場所に配置できます。

@ComponentScan(basePackages = {"com.oskyhang", "com.frames"})

アノテーションを追加するだけです。アノテーションでスキャンするパッケージを指定すると、スキャンできるようになり、より柔軟で便利になります。

以上がspringBoot mybatis パッケージのスキャン問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。