使用Jetty作为嵌入式服务器(2)


  publicstaticvoidmain(String[] args) throwsException {
      Serverserver = newServer(8080);
      ResourceHandlerresource_handler = newResourceHandler();
      resource_handler.setDirectoriesListed(true);
      resource_handler.setWelcomeFiles(newString[] { "index.html"});
      resource_handler.setResourceBase(".");
      HandlerListhandlers = newHandlerList();
      handlers.setHandlers(newHandler[] { resource_handler, newDefaultHandler() });
      server.setHandler(handlers);
      server.start();
      server.join();
  }
}
注意HandlerList包括ResourceHandler和DefaultHandler,后者主要用于当请求不匹配静态资源时返回404错误页面。
4. 嵌入Connectors
在前面的例子,创建Server实例时传入了一个端口号参数,程序内部会创建一个Connector的默认实例,在指定的端口上监听请求。然而,通常嵌入式的Jetty需要为一个Server实例显式地实例化并配置一个或多个Connector。
下述代码显示了如何实例化、配置并添加一个HTTP connector到Server中:
packageorg.eclipse.jetty.embedded;


importorg.eclipse.jetty.server.Server;
importorg.eclipse.jetty.server.ServerConnector;


/**
* A Jettyserver with one connectors.
*/
publicclassOneConnector {


  publicstaticvoidmain(String[] args) throwsException {
      Serverserver = newServer();
      ServerConnectorhttp = newServerConnector(server);
      http.setHost("localhost");
      http.setPort(8080);
      http.setIdleTimeout(30000);
      server.addConnector(http);
      server.setHandler(newHelloHandler());
      server.start();
      server.join();
  }

Jetty 的详细介绍请点这里
Jetty 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/a383f607cc72ed636ff925b87411d2c4.html