本來沒打算寫博客的,但是想着知識是由每天的一點點積累來的,所以還是寫一下吧!
今天我來介紹一下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可以看到下面結果
針對不同的請求執行不同的處理後臺可以看到如下輸出: