jetty內嵌web頁面服務入門
阿新 • • 發佈:2018-12-18
一個特別好的Demo,記錄一下
package wang.jettyTest2; import org.eclipse.jetty.server.Server; public class JettyServer { public static void main(String[] args) throws Exception { //訪問http://127.0.0.1:8989/?name=name Server server = new Server(8989); server.setHandler(new TestHandler()); server.start(); server.join(); } }
package wang.jettyTest2; 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 TestHandler extends AbstractHandler { @Override public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { //使用者請求的uri //http://localhost:8080/index.html?name=rolin -> target=/index.html System.out.println("target is :" + target); //設定http頭資訊 response.setContentType("text/html;charset=utf-8"); request.setCharacterEncoding("utf-8"); response.setStatus(HttpServletResponse.SC_OK); baseRequest.setHandled(true); //獲取向瀏覽器輸出的流 PrintWriter out = response.getWriter(); if("/favicon.ico".equals(target)){//jetty預設會在每次請求結束,再請求一次這個uri System.out.println("request /favicon.ico"); out.write("404"); }else{ System.out.println("request other!"); //out.print("{['name':'name','id':'id']}"); out.print("<h3>hello jetty!</h3>"); //其他請求引數 if(request.getParameter("name") != null) { out.print("<h3>your name is "+request.getParameter("name")+"!</h3>"); } } } }