Поскольку вы затронули тему методов жизненного цикла, позвольте мне поделиться тем, что я сделал, когда хотел создать адаптеры для различных сокет-ориентированных протоколов.
Я создал общий компонент под названием SocketServer, который прослушивает порт и принимает подключения. Как только соединение установлено, он передает объект Socket классу, реализующему SocketHandler, в отдельном потоке.
SocketHandler имеет такие методы, как
onSocket (Сокет-сокет);
в этом();
уничтожить ();
SocketServer имеет такие методы, как
StartServer ();
stopServer ();
Свойства сервера сокетов, такие как порт и экземпляр SocketHandler, можно легко настроить с помощью Spring.