啓動tomcat 同時啓動一個socket服務

現狀:在項目中,需要使用socket服務,來完成一個功能
目的:在啓動tomcat服務器的時候,同時啓動socket服務

共需要兩步:

第一步:寫一個類,實現ServletContextListener接口

import org.springframework.stereotype.Component;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;


@Component
public class SocketServiceLoader implements ServletContextListener {
    private SocketThread socketThread;
    @Override
    public void contextDestroyed(ServletContextEvent arg0) {
        if(null!=socketThread && !socketThread.isInterrupted())
        {
            socketThread.closeSocketServer();
            socketThread.interrupt();
        }
    }

    @Override
    public void contextInitialized(ServletContextEvent arg0) {
        // TODO Auto-generated method stub
        if (null == socketThread) {
            //新建線程類
            System.out.println("ppp");
            socketThread = new SocketThread(null);
            //啓動線程
            socketThread.start();
        }
    }

    }

第二步:在web.xml中配置監聽器

<listener>
        <listener-class>
            com.smh.sys.Utils.SocketServiceLoader
        </listener-class>
    </listener>

完成以上兩步,則啓動的時候,就能啓動socket服務,親測有效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章