本来没打算写博客的,但是想着知识是由每天的一点点积累来的,所以还是写一下吧!
今天我来介绍一下jetty的一个小例子!
- 下载jetty源码:http://central.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.4.0.v20161208/jetty-distribution-9.4.0.v20161208.zip
- 创建一个java工程,并将jetty的lib下面的包导入到工程中来;
- 建立一个TestController.java类,等下被Server调用:
package com.liqian.Learn;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.handler.AbstractHandler;
public class TestController extends AbstractHandler {
@Override
public void handle(String target, Request baseRequest, HttpServletRequest request,
HttpServletResponse response) throws IOException, ServletException {
System.out.println(target);
response.setContentType("text/html;charset=utf-8");
response.setCharacterEncoding("utf-8");
response.setStatus(HttpServletResponse.SC_OK);
baseRequest.setHandled(true);
PrintWriter out = response.getWriter();
if(target.equals("/favicon.ico"))
{
System.out.println(1);
out.println("404");
}
else
{
System.out.println(2);
out.println("hello jetty");
if(request.getParameter("name")!=null)
{
out.println(request.getParameter("name"));
}
}
}
}
创建JettyService.java类:
package com.liqian.Learn;
import org.eclipse.jetty.server.Server;
public class JettyService {
public static void main(String[] args) throws Exception
{
Server server = new Server(8989);
server.setHandler(new TestController());
server.start();
server.join();
}
}
运行该main函数启动服务,如下图所示:
打开浏览器访问:http://127.0.0.1:8989/?name=jetty可以看到下面结果
针对不同的请求执行不同的处理后台可以看到如下输出: