Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java独立程序与JSP通信_Java_Jsp_Sockets_Tomcat_Servlets - Fatal编程技术网

Java独立程序与JSP通信

Java独立程序与JSP通信,java,jsp,sockets,tomcat,servlets,Java,Jsp,Sockets,Tomcat,Servlets,存在以下程序: 1.我有一个java应用程序,它每隔一两秒钟接受一次生物势数据,并将其存储在数据库中。这是一个socket服务器,它从多个客户端接收数据,并生成一个新线程来处理它以存储在数据库中。 2.我在tomcat服务器上有一个jsp页面,它从数据库(由应用程序1存储)中读取历史客户机数据,并将其显示在页面上 上面1.)中的套接字服务器程序未在tomcat服务器内部运行 现在的新要求是:在jsp页面上实时显示所有人工数据 现在的问题是: 我现在需要将实时数据从套接字服务器(独立)传递到运行在

存在以下程序: 1.我有一个java应用程序,它每隔一两秒钟接受一次生物势数据,并将其存储在数据库中。这是一个socket服务器,它从多个客户端接收数据,并生成一个新线程来处理它以存储在数据库中。 2.我在tomcat服务器上有一个jsp页面,它从数据库(由应用程序1存储)中读取历史客户机数据,并将其显示在页面上

上面1.)中的套接字服务器程序未在tomcat服务器内部运行

现在的新要求是:在jsp页面上实时显示所有人工数据

现在的问题是: 我现在需要将实时数据从套接字服务器(独立)传递到运行在tomcat服务器上的jsp

可能的解决办法:

方法1:在tomcat中运行套接字服务器,而不是单独运行,并将频繁传入的数据存储在java对象中,以便jsp可以每秒访问该对象并将其显示在图形上

问题:独立java应用程序不需要包含在tomcat服务器中,除非jsp需要访问实时数据。而且,我读到这不是最好的方法

方法2:将独立java应用程序作为web服务公开,并使用REST体系结构与jsp通信

问题:使用此方法的复杂性在于它没有WebSocket或服务器发送事件(SSE)提供的自动更新最新数据的灵活性。jsp必须每秒钟轮询一次新数据,这也不是一个很好的选择

我需要关于哪种方法更好地完成任务的建议。还是有第三条我完全错过的更好的路

我有一个java应用程序,它每天都接受生物潜能数据 第二个或两个,并将其存储在数据库中

您已经得到了答案:只需在jsp页面中显示此数据库中所需的数据。这将是最简单的解决方案


我不理解您试图显示实时数据,但JSP本身并不是为实时输出而设计的,无论如何,您都会有延迟,因为您的数据库中已经有了所需的数据-无需将其传输到Tomcat服务器。

如果他们只有一个数据库,您只需从jsp读取数据库的内容,并使用javascript/jquery在N秒/s内刷新页面,否则请使用轮询。非常感谢您,非常感谢Alex和Ker p pag。我没有考虑从数据库中提取数据,认为每秒钟取一次数据的频率在数据库上会太密集。但是这个解决方案比我的选择要干净得多。