我有一个Java独立应用程序,其中包含以下内容:
现在我想做一个客户端可以更新数据库的网页。我知道我有两个选择:java web services和servlets。我更喜欢使用servlet,因为java Web服务需要安装软件,这会阻止某些设备使用该应用程序。
我的问题是:我是否必须重写我的服务器的大部分代码来实现servlet,或者它只是添加和更改我的服务器代码的一些东西?
答案 0 :(得分:0)
您已有一个服务器组件正在处理来自客户端的请求。您只需要使用HTTP服务器对其进行扩展,该服务器将接受并处理来自HTTP客户端的请求。
您可能希望在容器中运行,例如Tomcat。如果你走这条路,你将需要实现一个ServletContextListener来在启动/关闭时初始化/清理你现有的应用程序。
然后,您将使用容器(例如,Tomcat)启动整个服务器(现有和新的Web端点)。您可能希望将Web内容命中一个端口(例如,80或443)以及其他端口以用于现有客户端连接。
对于您希望通过HTTP提供的每个现有请求处理程序,您将需要重构代码,以便通过单个方法实现所有数据验证和业务逻辑(您可能已将其写为此开始的方式)。然后添加一个Web服务来处理HTTP请求,并让它调用与现有服务器实现调用相同的方法。
您可能需要考虑使用其中的众多Web服务框架之一(例如,Jersey)。