1

我需要通过 Tomcat 的套接字实时传输二进制数据。

你可以ServerSocket在启动时在Tomcat上打开一个吗?如果是这样,你在哪里做?

4

2 回答 2

1

您可以使用ServletContextListener来执行此操作,更具体地说,在contextInitialized方法中。

基本示例:

public class ApplicationListener implements ServletContextListener {
    public void contextInitialized(ServletContextEvent event) {
         //handle the server socket connection here...
    }

    public void contextDestroyed(ServletContextEvent event) {
    }
}

请注意,如果contextInitialized方法抛出 any Exception,则 Web 应用程序根本不会部署。

于 2013-09-27T20:50:52.290 回答
-1

是的。定义一个 Tomcat 在应用程序启动时启动的 servlet。当加载 servlet 时,创建一个线程来打开 ServerSocket。

我过去曾这样做过,这样我就可以使用 Tomcat 的基础架构来创建自定义 TCP/IP 服务器进程。我还创建了一组 JSP 页面来管理暴露套接字的应用程序。

于 2013-09-27T20:52:05.653 回答