Bean

Posted by Bruce Tsai

當設定配置完成後,開發時所需要的就是透過 Spring 的功能來幫助開發人員更快更容易的處理程式內容。而如何取得 bean 則是基礎中的基礎

透過 BeanFactory.getBean() 來取得 bean

  • 註:ApplicationContext 繼承了 BeanFactory 介面
ApplicationContext context = getContext();
MessageService service = (MessageService) context.getBean("messageService");

透過 @Autowired 注入 bean

  • 註:物件本身必須也是 bean
@Component
public class MessageService {
    @Autowired
    MessageRepository messageRepository;

    public MessageRepository addMessage(Message message) {
        messageRepository.add(message);
    }

    ...
}

常見錯誤

MessageService service = new MessageService();  // 未透過 spring 取得 bean
service.addMessage();  // MessageRepository 未注入,拋出 NullPointerException

results matching ""

    No results matching ""