java 嵌入式的Web服务器jetty使用例子
来源:互联网 发布:mmd h 动作数据 编辑:程序博客网 时间:2024/05/22 01:41
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>cn.com.songjy</groupId> <artifactId>jettydemo</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>jetty-demo Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-servlet-api</artifactId> <version>7.0.27</version> </dependency> <dependency> <groupId>org.hprose</groupId> <artifactId>hprose-java</artifactId> <version>1.5.2</version> </dependency> <dependency> <groupId>org.jiepu</groupId> <artifactId>thrift-api</artifactId> <version>1.0</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.7</version> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-server</artifactId> <version>7.6.0.RC4</version> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-webapp</artifactId> <version>7.6.0.RC4</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty</artifactId> <version>6.1.26</version> </dependency> <dependency> <groupId>org.mortbay.jetty</groupId> <artifactId>jsp-2.1-jetty</artifactId> <version>6.1.26</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.0.4</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies> <build> <finalName>jettydemo</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build></project>
package cn.com.songjy.jetty;import com.alibaba.fastjson.JSON;import org.eclipse.jetty.server.Request;import org.eclipse.jetty.server.Server;import org.eclipse.jetty.server.handler.AbstractHandler;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;//http://wiki.eclipse.org/Jetty/Tutorial/Jetty_HelloWorldpublic class HelloWorld extends AbstractHandler{ public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { System.out.println(target); System.out.println(JSON.toJSONString(baseRequest.getAuthentication())); System.out.println(JSON.toJSONString(request.getParameterMap())); System.out.println(JSON.toJSONString(response.getLocale())); response.setContentType("text/html;charset=utf-8"); response.setStatus(HttpServletResponse.SC_OK); baseRequest.setHandled(true); response.getWriter().println("<h1>Hello World success</h1>"); response.getWriter().println("session=" + request.getSession(true).getId()); } public static void main(String[] args) throws Exception { Server server = new Server(9999); server.setHandler(new HelloWorld()); server.start(); server.join(); }}
package cn.com.songjy.jetty;import org.eclipse.jetty.server.Server;import org.eclipse.jetty.webapp.WebAppContext;//不使用jetty.xml配置文件启动//http://hbiao68.iteye.com/blog/2111007public class SimpleServerStart { //http://127.0.0.1:9999/simple/ //http://127.0.0.1:9999/simple/servlet public static void main(String[] args) { try { // 服务器的监听端口 Server server = new Server(9999); // 关联一个已经存在的上下文 WebAppContext context = new WebAppContext(); // 设置描述符位置 context.setDescriptor("./src/main/webapp/WEB-INF/web.xml"); // 设置Web内容上下文路径 context.setResourceBase("./src/main/webapp"); // 设置上下文路径 context.setContextPath("/simple"); context.setParentLoaderPriority(true); server.setHandler(context); // 启动 server.start(); server.join(); } catch (Exception e) { e.printStackTrace(); } }}
package cn.com.songjy.jetty;import cn.com.songjy.jetty.servlet.HelloServlet;import org.eclipse.jetty.server.Server;import org.eclipse.jetty.servlet.ServletContextHandler;import org.eclipse.jetty.servlet.ServletHolder;//无配置启动servletpublic class OneServletContext{ public static void main(String[] args) throws Exception { Server server = new Server(8080); ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS); //context.setContextPath("/demo"); context.setResourceBase("./src/main/webapp"); context.addServlet(new ServletHolder(new HelloServlet()),"/demo/*"); //context.addServlet(new ServletHolder(new HelloServlet("Buongiorno Mondo")),"/it/*"); server.setHandler(context); server.start(); server.join(); }}
package cn.com.songjy.jetty;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.mortbay.jetty.Connector;import org.mortbay.jetty.Handler;import org.mortbay.jetty.NCSARequestLog;import org.mortbay.jetty.Server;import org.mortbay.jetty.handler.ContextHandlerCollection;import org.mortbay.jetty.handler.DefaultHandler;import org.mortbay.jetty.handler.HandlerCollection;import org.mortbay.jetty.handler.RequestLogHandler;import org.mortbay.jetty.nio.SelectChannelConnector;import org.mortbay.jetty.webapp.WebAppContext;import org.mortbay.xml.XmlConfiguration;import org.xml.sax.SAXException;import java.io.BufferedInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.util.Properties;public class JettyDemo {private static final Log log = LogFactory.getLog(JettyDemo.class);private static final Properties config = new Properties();static {BufferedInputStream bufferedInputStream = null;try {bufferedInputStream = new BufferedInputStream(JettyDemo.class.getClassLoader().getResourceAsStream("jetty.properties"));config.load(bufferedInputStream);} catch (IOException e) {log.error(e.getMessage(), e);} finally {try {if(null != bufferedInputStream)bufferedInputStream.close();} catch (IOException e) {log.error(e.getMessage(), e);}}}//http://127.0.0.1:9999/demo/public static void main(String[] args) throws Exception {jetty_start();//start_jetty();}public static void start_jetty() throws SAXException, IOException,FileNotFoundException, Exception {Server server = new Server();// 指定自定义的jetty.xml路径XmlConfiguration configuration = new XmlConfiguration(Server.class.getClassLoader().getResourceAsStream(config.getProperty("jetty.xml")));configuration.configure(server);server.start();}//http://127.0.0.1:9999/demo/index.jsppublic static void jetty_start() {try {String jetty_home = "demo";// 这个就是你的项目发布时候的名字//用户访问记录HandlerCollection handlers = new HandlerCollection();ContextHandlerCollection contexts = new ContextHandlerCollection();RequestLogHandler requestLogHandler = new RequestLogHandler();handlers.setHandlers(new Handler[]{contexts,new DefaultHandler(),requestLogHandler}); NCSARequestLog requestLog = new NCSARequestLog("./target/jetty-yyyy_mm_dd.request.log");requestLog.setRetainDays(90);requestLog.setAppend(true);requestLog.setExtended(false);requestLog.setLogTimeZone("GMT");requestLogHandler.setRequestLog(requestLog);Server server = new Server();Connector connector = new SelectChannelConnector();connector.setPort(Integer.parseInt(config.getProperty("jetty.port")));server.setConnectors(new Connector[] { connector });WebAppContext webapp = new WebAppContext();webapp.setContextPath("/" + jetty_home);// 上下文路径 比如说/demo// webapp.setResourceBase("./WebRoot");// 你的资源文件所在的路径 一般都在这下面webapp.setResourceBase(config.getProperty("resourceBase"));// webapp.setDefaultsDescriptor("./WebRoot/etc/webdefault.xml");webapp.setDefaultsDescriptor(config.getProperty("webdefault.xml"));server.setHandler(webapp);server.addHandler(handlers);server.start();server.join();} catch (InterruptedException e) {log.error(e.getMessage(), e);} catch (Exception e) {log.error(e.getMessage(), e);}}}
下载:
2 0
- java 嵌入式的Web服务器jetty使用例子
- main方法启动jetty java嵌入式web服务器jetty的使用
- jetty 嵌入式web服务器使用
- Java Web 学习笔记之八:嵌入式web服务器Jetty的基本使用
- Java使用Jetty实现嵌入式Web服务器及Servlet容器
- Java使用Jetty实现嵌入式Web服务器及Servlet容器
- Java使用Jetty实现嵌入式Web服务器及Servlet容器
- JAVA里使用Jetty作为轻量级嵌入式的Web容器
- 使用Jetty作为嵌入式服务器
- 嵌入式jetty的使用
- Jetty学习【一】 Jetty的嵌入式使用
- Java版WEB服务器Jetty
- 出色的Web服务器Jetty
- 出色的Web服务器Jetty
- Java使用Jetty实现嵌入式的Servlet容器
- 使用嵌入式web服务器
- JETTY嵌入式Web容器的开发
- jetty 嵌入式服务器介绍
- JavaScipr Attr 对checkbox失效问题
- POI导出EXCEL经典实现
- 严重: Exception starting filter struts2 java.lang.NullPointerException
- 解决 百度地图+slidingmenu 切换Fragment闪黑屏问题
- hdu1754I Hate It(线段树)
- java 嵌入式的Web服务器jetty使用例子
- 缓冲区溢出分析第07课:MS06-040漏洞研究——静态分析
- POJ-3468-线段树-A Simple Problem with Integers
- 文本二叉树
- 挂载和卸载u盘(centos)
- 关于女人强势表现和强势心理
- Spring注解详解
- 缓冲区溢出分析第08课:MS06-040漏洞研究——动态调试
- java加密技术比较好的博客地址