本篇文章給大家分享的是有關(guān)如何在springboot中注冊(cè)bean,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、電白網(wǎng)絡(luò)推廣、微信平臺(tái)小程序開發(fā)、電白網(wǎng)絡(luò)營(yíng)銷、電白企業(yè)策劃、電白品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供電白建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
@ComponentScan注冊(cè)指定包里的bean
Spring容器會(huì)掃描@ComponentScan配置的包路徑,找到標(biāo)記@Component注解的類加入到Spring容器。
我們經(jīng)常用到的類似的(注冊(cè)到IOC容器)注解還有如下幾個(gè):
@Configuration:配置類
@Controller :web控制器
@Repository :數(shù)據(jù)倉(cāng)庫(kù)
@Service:業(yè)務(wù)邏輯
下面代碼完成了EmailLogServiceImpl這個(gè)bean的注冊(cè),當(dāng)然也可以放在@Bean里統(tǒng)一注冊(cè),需要看@Bean那一節(jié)里的介紹。
@Component public class EmailLogServiceImpl implements EmailLogService { private static final Logger logger = LoggerFactory.getLogger(EmailLogServiceImpl.class); @Override public void send(String email, String message) { Assert.notNull(email, "email must not be null!"); logger.info("send email:{},message:{}", email, message); } }
@Bean注解直接注冊(cè)
注解@Bean被聲明在方法上,方法都需要有一個(gè)返回類型,而這個(gè)類型就是注冊(cè)到IOC容器的類型,接口和類都是可以的,介于面向接口原則,提倡返回類型為接口。
下面代碼在一個(gè)@Configuration注解的類中,同時(shí)注冊(cè)了多個(gè)bean。
@Configuration public class LogServiceConfig { /** * 擴(kuò)展printLogService行為,直接影響到LogService對(duì)象,因?yàn)長(zhǎng)ogService依賴于PrintLogService. * * @return */ @Bean public PrintLogService printLogService() { return new PrintLogServiceImpl(); } @Bean public EmailLogService emailLogService() { return new EmailLogServiceImpl(); } @Bean public PrintLogService consolePrintLogService() { return new ConsolePrintLogService(); } }
@Import注冊(cè)Bean
這種方法最為直接,直接把指定的類型注冊(cè)到IOC容器里,成為一個(gè)java bean,可以把@Import放在程序的八口,它在程序啟動(dòng)時(shí)自動(dòng)完成注冊(cè)bean的過(guò)程。
@Import({ LogService.class,PrintService.class }) public class RegistryBean { }
springboot一種全新的編程規(guī)范,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新Spring應(yīng)用的初始搭建以及開發(fā)過(guò)程,SpringBoot也是一個(gè)服務(wù)于框架的框架,服務(wù)范圍是簡(jiǎn)化配置文件。
以上就是如何在springboot中注冊(cè)bean,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。