Java GrizzlyServerFactory.createHttpServer和新GrizzlyWebServer Web服务器之间的差异

Java GrizzlyServerFactory.createHttpServer和新GrizzlyWebServer Web服务器之间的差异,java,rest,jersey,grizzly,Java,Rest,Jersey,Grizzly,我正在使用Jersey和嵌入式Grizzly web服务器创建RESTful web服务 我发现有两种方法可以创建嵌入式Grizzly web服务器。有人能告诉我这两者的区别吗 public static void main(String[] args) throws IOException, ConfigurationException, DBException, DaxException { GrizzlyWebServer gws = new GrizzlyWebServe

我正在使用Jersey和嵌入式Grizzly web服务器创建RESTful web服务

我发现有两种方法可以创建嵌入式Grizzly web服务器。有人能告诉我这两者的区别吗

public static void main(String[] args) throws IOException,  ConfigurationException,    DBException, DaxException {
    GrizzlyWebServer gws = new GrizzlyWebServer(8085, "/var/www");
    ServletAdapter jerseyAdapter = new ServletAdapter();

    jerseyAdapter.addInitParameter(
        PackagesResourceConfig.PROPERTY_PACKAGES,"com.merchant.services");
    jerseyAdapter.setServletInstance(new ServletContainer());

    gws.addGrizzlyAdapter(jerseyAdapter, new String[]{"/"});

    // let Grizzly run
    gws.start();
}  
第二种方法是:

ResourceConfig rc = new PackagesResourceConfig("com.merchant.services");
HttpServer httpServer = GrizzlyServerFactory.createHttpServer(BASE_URI, rc);
httpServer.start();
使用第一种方法,可以轻松配置web服务器。

1
grizzlywebservice
ServletAdapter
方法是支持JAX-RS以及
Servlet
过滤器

jersey+ServletContainer

这将为您提供足够的灵活性,以提供更复杂的配置

2. 如果您认为
ServletContainer
是一个附加依赖项,请使用第二个


jersey+简单Http服务器

谢谢您的回答。那么,我是否暗示底层Web服务器实现是相同的呢?GrizzlyWeb服务器是生产质量的web服务器吗?为什么我们应该在Tomcat或NETY上考虑GRZZY?我发现的一个主要区别是,使用JeSSE+简单HTTP服务器,您就无法通过HTTPServLeTebug访问通常需要的数据(例如,远程客户端IP地址)。Jersey的JIRA上有一个bug,表示有兴趣在HttpRequestContext中获取该信息,但在2年后它目前处于“打开/未解决”状态()。