@ComponentScan、@EnableFeignClients和@MapperScan註解筆記
阿新 • • 發佈:2018-10-18
tsql 寫法 ESS 所有 sda pac 註意 exception 聲明
@ComponentScan:此註解是用來管理容器中的bean,即是管理項目中類的依賴關系, 註意此註解並不創建類的實例; 默認情況下此註解掃描本工程下的所有包, 但是在springBoot的分布式中如果需要用到別的微服務工程中的實例,那麽就要寫為如下的形式。註意要加上本工程。 因為當使用 basePackages時,此註解就不會使用默認的掃描路徑了。
@ComponentScan(basePackages = {"com.wisdombud.dth.boss.customer", "com.wisdombud.dth.boss.his", "com.wisdombud.dth.boss.product.srv", "com.wisdombud.dth.boss.product.mapper" })
@EnableFeignClients: 此註解的作用是掃描標記了@FeignClient的接口並創建實例bean,默認掃描並創建所在工程下的包。如果在springBoot的分布式中需要用到別 的微服務的工程的接口實例,那麽就要寫成如下的形式。註意此註解並不管理bean的依賴的關系
@EnableFeignClients( basePackages = { "com.wisdombud.dth.boss.customer", "com.wisdombud.dth.boss.his", "com.wisdombud.dth.boss.product.srv" })
@MapperScan: 此註解是掃描被此註解中聲明的mapper路徑下的*mapper.xml文件,讀取文件配置,並根據此文件中的mapper接口路徑創建bean實例。如下寫法。
/*** * 功能:客戶datasource 配置.<br/> * *date:2018 年10月11日 下午2:17:31<br/> * ** * * @author * joseph * @since * JDK 1.8 */ @Configuration @EnableConfigurationProperties @MapperScan(basePackages = "com.wisdombud.dth.boss.customer.mapper", sqlSessionTemplateRef = "custSqlSessionTemplate") public class DataSourceCustConfig { @Bean @ConfigurationProperties(prefix = "spring.jta.atomikos.datasource.cust") @Primary public AtomikosDataSourceBean custDataSource() { return new AtomikosDataSourceBean(); } @Bean @Primary public SqlSessionFactory custSqlSessionFactory(@Qualifier("custDataSource") DataSource dataSource) throws Exception { SqlSessionFactoryBean bean = new SqlSessionFactoryBean(); bean.setDataSource(dataSource); return bean.getObject(); } @Bean @Primary public SqlSessionTemplate custSqlSessionTemplate( @Qualifier("custSqlSessionFactory") SqlSessionFactory sqlSessionFactory) throws Exception { return new SqlSessionTemplate(sqlSessionFactory); } }
@ComponentScan、@EnableFeignClients和@MapperScan註解筆記