我從Netty的框架擴展類型的具體類型:注入春天具體類是需要繼承的框架型
public class ServerHandlerImpl extends ChannelInboundHandlerAdapter implements ServerHandler
ChannelInboundHandlerAdapter實現ChannelInboundHandler
當我創建ServerHandlerImpl,我想用Spring來注入它。我知道我可以使用具體類型。但我不確定是否有從接口注入的方法。
ServerHandler接口現在是空的:
public interface ServerHandler {
}
當我嘗試從接口注入型,
@Autowired
private ServerHandler serverHandler;
@Override
protected void initChannel(Channel ch) throws Exception {
pipeline.addLast(serverHandler);
}
它不會編譯,因爲addlast僅是尋找一個類型實現ChannelInboundHandler,這是我的具體類型,但接口沒有。人們在這些情況下做什麼?
這是因爲java代理是如何工作的......例如,你可以創建一個服務來存儲ChannelInboundHandlerAdapter實例(ChannelInboundService),當你需要的時候自動裝載這個服務,並且從中獲取channelInboundHandlerAdapter引用。 – Dani