使用grizzly网络服务器。它完全在 java 中实现,因此您具有完全的平台独立性,您可以直接从您的工作区启动它,而无需配置任何外部程序。静态部署资源很容易。您只需要javax.ws.rs.core.Application
像示例中那样派生和添加资源。
import java.util.HashSet;
import java.util.Set;
import javax.ws.rs.core.Application;
/**
* Application class that contains resources for the RESTful web service.
*
*/
public class MyApplication extends Application {
public Set<Class<?>> getClasses() {
Set<Class<?>> s = new HashSet<Class<?>>();
s.add(com.rest.test.SomeClass.class);
return s;
}
}
这是配置 servlet 适配器所必需的。也可以动态添加资源。但是我无法告诉您使用动态方法更新资源的速度有多快。无论如何,网上有足够的文档可用。
private static GrizzlyWebServer getServer(int port,
String webResourcesPath, String contextPath) {
GrizzlyWebServer gws = new GrizzlyWebServer(port, webResourcesPath);
ServletAdapter sa = new ServletAdapter();
/* here they are added statically */
sa.addInitParameter("javax.ws.rs.Application", "com.rest.MyApplication");
sa.setContextPath(contextPath);
sa.setServletInstance(new ServletContainer());
sa.setProperty("load-on-startup", 1);
gws.addGrizzlyAdapter(sa, new String[] { contextPath });
return gws;
}