亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

春季多個imapAdapter

春季多個imapAdapter

繁星coding 2019-10-22 21:24:45
我是Spring的新手,我不喜歡代碼重復。我寫了一個工作正常的ImapAdapter:@Componentpublic class GeneralImapAdapter {    private Logger logger = LoggerFactory.getLogger(getClass());    @Autowired    private EmailReceiverService emailReceiverService;    @Bean    @InboundChannelAdapter(value = "emailChannel", poller = @Poller(fixedDelay = "10000", taskExecutor = "asyncTaskExecutor"))    public MessageSource<javax.mail.Message> mailMessageSource(MailReceiver imapMailReceiver) {        return new MailReceivingMessageSource(imapMailReceiver);    }    @Bean    @Value("imaps://<login>:<pass>@<url>:993/inbox")    public MailReceiver imapMailReceiver(String imapUrl) {        ImapMailReceiver imapMailReceiver = new ImapMailReceiver(imapUrl);        imapMailReceiver.setShouldMarkMessagesAsRead(true);        imapMailReceiver.setShouldDeleteMessages(false);        // other setters here        return imapMailReceiver;    }    @ServiceActivator(inputChannel = "emailChannel",  poller = @Poller(fixedDelay = "10000", taskExecutor = "asyncTaskExecutor"))    public void emailMessageSource(javax.mail.Message message) {        emailReceiverService.receive(message);    }}但是我想要大約20個這樣的適配器,唯一的區別是imapUrl。沒有代碼重復怎么辦?
查看完整描述

2 回答

?
米脂

TA貢獻1836條經驗 獲得超3個贊

我并不是在建議您需要動態渠道;我建議您可以使用該示例使用的相同技術,以創建由屬性驅動的具有相同配置的多個“ cookie切割器”實例。即AnnotationConfigApplicationContext從您的配置類創建一個新的;在其環境中加載實例的屬性,并通過刷新來創建上下文。從而避免代碼重復。

查看完整回答
反對 回復 2019-10-22
  • 2 回答
  • 0 關注
  • 704 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號