嵌入jetty到Java代码
来源:互联网 发布:淘宝网上手机 编辑:程序博客网 时间:2024/05/18 03:57
在做Demo实例时,使用的jetty版本为8.x。为了避免麻烦,将所有的包都导入到MyEclipse的lib目录下。
实例1:自定义handler的服务器
package com.jetty.test01;import java.io.IOException;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 HelloHandler 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>"); }}
package com.jetty.test01;import org.eclipse.jetty.server.Server;public class SimplestServer{ public static void main(String[] args) throws Exception { Server server = new Server(8081); server.setHandler(new HelloHandler()); server.start(); server.join(); }}
访问路径:http://localhost:8080
实例2:通过xml文件配置服务器
<?xml version="1.0"?><!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd"><Configure id="FileServer" class="org.eclipse.jetty.server.Server"><Call name="addConnector"><Arg><New class="org.eclipse.jetty.server.nio.SelectChannelConnector"><Set name="port">8080</Set></New></Arg></Call><Set name="handler"><New class="org.eclipse.jetty.server.handler.HandlerList"><Set name="handlers"><Array type="org.eclipse.jetty.server.Handler"><Item><New class="org.eclipse.jetty.server.handler.ResourceHandler"><Set name="directoriesListed">true</Set><Set name="welcomeFiles"><Array type="String"><Item>index.html</Item></Array></Set><Set name="resourceBase">.</Set></New></Item><Item><New class="org.eclipse.jetty.server.handler.DefaultHandler"></New></Item></Array></Set></New></Set></Configure>
package com.jetty.test01;import org.eclipse.jetty.server.Server;import org.eclipse.jetty.util.resource.Resource;import org.eclipse.jetty.xml.XmlConfiguration;public class FileServerXml {public static void main(String[] args) throws Exception{Resource fileserver_xml = Resource.newSystemResource("fileServer.xml");XmlConfiguration configuration = new XmlConfiguration(fileserver_xml.getInputStream());Server server = (Server)configuration.configure();server.start();server.join();}}
访问路径:http://localhost:8080
实例3:文件服务器:
package com.chinahrt.zyn.jetty;import org.eclipse.jetty.server.Handler;import org.eclipse.jetty.server.Server;import org.eclipse.jetty.server.handler.DefaultHandler;import org.eclipse.jetty.server.handler.HandlerList;import org.eclipse.jetty.server.handler.ResourceHandler;import org.eclipse.jetty.server.nio.SelectChannelConnector;public class FileServer {public static void main(String args[]) throws Exception{Server server = new Server();SelectChannelConnector connector = new SelectChannelConnector();connector.setPort(8080);server.addConnector(connector);ResourceHandler resource_handler = new ResourceHandler();resource_handler.setDirectoriesListed(true);resource_handler.setWelcomeFiles(new String[]{"index.html"});resource_handler.setResourceBase(".");HandlerList handlers = new HandlerList();handlers.setHandlers(new Handler[]{resource_handler,new DefaultHandler()});server.setHandler(handlers);server.start();server.join();}}
访问路径:http://localhost:8080
实例4:创建Servlet
package com.jetty.test01;import org.eclipse.jetty.server.Server;import org.eclipse.jetty.servlet.ServletContextHandler;import org.eclipse.jetty.servlet.ServletHolder;public class OneServletContext {public static void main(String[] args) throws Exception{Server server = new Server(8085);ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);context.setContextPath("/");server.setHandler(context);context.addServlet(new ServletHolder(new HelloServlet()), "/*");context.addServlet(new ServletHolder(new HelloServlet("Buongiorno Mondo")), "/it/*");context.addServlet(new ServletHolder(new HelloServlet("Bonjour le monde")), "/fr/*");server.start();server.join();}}
package com.jetty.test01;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class HelloServlet extends HttpServlet {private static final long serialVersionUID = 246698127519451952L;private String greeting="Hello World";public HelloServlet(){}public HelloServlet(String greeting){this.greeting = greeting;}protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{response.setContentType("text/html");response.setStatus(HttpServletResponse.SC_OK);response.getWriter().println("<h1>"+greeting+"</h1>");response.getWriter().println("session="+request.getSession(true).getId());}}
访问路径:http://localhost:8080/,http://localhost:8080/it,http://localhost:8080/fr
实例5:
1 0
- 嵌入jetty到Java代码
- java webapp嵌入jetty
- jetty嵌入到web程序中
- 内嵌 jetty http/servlet 代码嵌入 jetty
- Java项目嵌入Jetty-Web服务器
- 将jetty嵌入到应用中的简单案例
- jsp嵌入java代码
- Groovy嵌入Java代码
- Jsp嵌入java代码
- 嵌入jetty--简单实现
- 嵌入jetty--指定connector
- Jetty开发指导:嵌入
- Jetty:部署到Jetty
- 将Python代码嵌入到C++程序
- jetty快速入门与嵌入使用 jetty
- jetty快速入门与嵌入使用 jetty
- jetty快速入门与嵌入使用 jetty
- jetty快速入门与嵌入使用 jetty
- ubuntu下安装apache
- 图像识别技术浅析
- Windows CMD 常用命令
- 在eclipse中部署spark源代码
- 设计模式------原型模式
- 嵌入jetty到Java代码
- 函数指针用法
- BufferedReader与BufferedWriter类——用于提高性能
- 在C++中子类继承和调用父类的构造函数方法
- tx2440 开发 电源问题检测
- HTML5调用本地摄像头
- 第一次的面试经历
- JVM调优总结 -Xms -Xmx -Xmn -Xss
- Django 学习