jetty之嵌入式运行jetty
在文章什么是jetty中,提到jetty容器真正出名的地方是可以作为一个嵌入到java代码的servlet容器,即可以在java代码中实例化servlet对象并操作该对象。下面我们就先来学习
下如何把jetty嵌入到java代码中。
1. 建立一个maven项目
2. 在pom文件中加入jetty的依赖包
<dependency> <groupId>org.eclipse.jetty.aggregate</groupId> <artifactId>jetty-all</artifactId> <version>8.0.4.v20111024</version> <type>jar</type> <scope>provided</scope> </dependency>
3. 创建一个Handler类,处理所有浏览器请求
public class Handler extends AbstractHandler { public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html;charset=utf-8"); response.setStatus(HttpServletResponse.SC_OK); baseRequest.setHandled(true); response.getWriter().println("<h1>Hello World</h1>"); response.getWriter().println("Request url: " + target); } }
4. 创建一个App类,用来启动Jetty服务
public class App { public static void main(String[] args) throws Exception { Server server = new Server(8080); //设置访问端口 server.setHandler(new HelloHandler()); //设置请求处理类 server.start(); //启动jetty服务 server.join(); } }
5. 启动
运行App.main方法,然后在浏览器访问: http://localhost:8080/,如下图: