• Java使用Jetty实现嵌入式Web服务器及Servlet容器


    下面介绍如何在Java应用程序中嵌入Jetty。 

    Jetty下载地址,本文写作时的最新版本是9.1.2,下载jetty-distribution-9.1.2.v20140210.zip: 

    https://www.eclipse.org/jetty/download.html

    注意Jetty 9需要JDK 7,如果使用JDK 6的话会出现错误:java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0。 

    在lib文件夹中找到下面五个jar文件: 

    jetty-server-9.1.2.v20140210.jar 
    jetty-io-9.1.2.v20140210.jar 
    jetty-http-9.1.2.v20140210.jar 
    jetty-util-9.1.2.v20140210.jar 
    servlet-api-3.1.jar

    public static void main(String[] args) throws Exception
    {
      Server server = new Server(8080);
      
      ResourceHandler resourceHandler = new ResourceHandler();
      resourceHandler.setResourceBase("D:/test");
    
      server.setHandler(resourceHandler);
      
      server.start();
    }
    运行Java程序,Jetty服务器启动。此时在浏览器中访问http://localhost:8080就可以浏览D:/test文件夹中的html页面或者其他文件。但是只能访问静态页面,上面的程序无法支持Servlet/JSP。 

    如果想要显示文件夹中的所有文件的列表,可以设置: 

    resourceHandler.setDirectoriesListed(true);
    效果: 

    这里需要另外加入下面的jar包: 

    jetty-servlet-9.1.2.v20140210.jar 
    jetty-webapp-9.1.2.v20140210.jar 
    jetty-xml-9.1.2.v20140210.jar 
    jetty-security-9.1.2.v20140210.jar 
    lib/jsp文件夹中的jar包 

    public static void main(String[] args) throws Exception
    {
      Server server = new Server(8080);
      
      WebAppContext webapp = new WebAppContext();
      webapp.setResourceBase("E:/apache-tomcat-7.0.47/webapps/TVPlay");
      
      server.setHandler(webapp);
      
      server.start();
    }
    设置一个Java Web应用程序的目录,访问http://localhost:8080,此时已经支持Servlet/JSP。 

    另外还可以使用war文件: 

    public static void main(String[] args) throws Exception
    {
      Server server = new Server(8080);
      
      WebAppContext webapp = new WebAppContext();
      webapp.setWar("C:/TVPlay.war");
      
      server.setHandler(webapp);
      
      server.start();
    }
    

      

     
    相关:
     
     
     
  • 相关阅读:
    为aptget设置http代理[转]
    tty&pty
    Overfencing
    ubuntu修改runlevel
    ls l文件类型[转]
    ubuntu文字界面与图形界面切换
    ubuntu没有/etc/inittab文件
    linux一些缩写的意思
    redhat server 5.4安装中文
    关闭linux警报
  • 原文地址:https://www.cnblogs.com/langtianya/p/5218034.html
Copyright © 2020-2023  润新知