亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

jetty6 嵌入到 javaproject中

系統 1775 0

Jetty 是一個 開源的servlet容器 , 它為基于Java的web內容,例如JSP和servlet提供運行環境。

?

Jetty以其 高效、小巧、 可嵌入式 等優點深得人心,尤其是啟動速度Tomcat 6簡直望塵莫及。

?

Jetty作為可選的servlet容器只是一個額外的功能,而它真正出名是因為它是作為一個 可以嵌入到其他的Java代碼中的servlet容器而設計的 。這就是說,開發小組將Jetty作為一組Jar文件提供出來,因此你可以在你自己的代碼中將servlet容器實例化成一個對象并且可以操縱這個容器對象。

?

可以提供給客戶一個自己具有啟動,停止以及管理功能的應用程序:Jetty對于普通的HTTP服務(沒有servlet)只需要350k的內 存,這使得可以將其用在智能設備中。你可以提供基于web的控制面板并且具有Java web應用的所有功能而不用擔心那些獨立的容器所帶來的壓力。?

?

?一、在java project中添加jetty(直接copy官網中下載的文件)

?

1、下載 http://dist.codehaus.org/jetty/jetty-6.1.14/jetty-6.1.14.zip?

?

2、新建一個java project (jettytest)

?

3、在工程目錄下建jetty目錄,然后再在jetty目錄下新建etc(存放配置文件),lib(存放jetty的jar包),logs(存放web日志),webapps(存放多個或者一個web工程)四個目錄

?

4、在 JETTY_HOME/lib JETTY_HOME/lib/jsp-2.1 目錄(如果沒有JSP頁面則可以不需要)下的所有jar包

core-3.1.1.jar, ant-1.6.5.jar, jetty-6.1.14.jar, jetty-util-6.1.14.jar, jsp-2.1.jar, jsp-api-2.1.jar, servlet-api-2.5-6.1.14.jar

?

5、從JETTY_HOME/ect中拷貝如下文件 jetty.xml,webdefault.xml,realm.properties 到新建工程的etc目錄下

?

6、 修改jetty.xml的內容 ,讓其指定到webdefault.xml、webapps目錄、realm.properties、logs目錄的具體位置, 默認是在工程的最外層目錄,由于這兩是放到jetty目錄下面了,所以需要修改對應的目錄位置 。

??

          <Call name="addLifeCycle">
      <Arg>
        <New class="org.mortbay.jetty.deployer.WebAppDeployer">
          <Set name="contexts"><Ref id="Contexts"/></Set>
          <Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>
	  <Set name="parentLoaderPriority">false</Set>
	  <Set name="extract">true</Set>
	  <Set name="allowDuplicates">false</Set>
          <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set>
        </New>
      </Arg>
    </Call>

    <Set name="UserRealms">
      <Array type="org.mortbay.jetty.security.UserRealm">
        <Item>
          <New class="org.mortbay.jetty.security.HashUserRealm">
            <Set name="name">Test Realm</Set>
            <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set>
            <Set name="refreshInterval">0</Set>
          </New>
        </Item>
      </Array>
    </Set>

    <Ref id="RequestLog">
      <Set name="requestLog">
        <New id="RequestLogImpl" class="org.mortbay.jetty.NCSARequestLog">
          <Set name="filename"><SystemProperty name="jetty.logs" default="./logs"/>/yyyy_mm_dd.request.log</Set>
          <Set name="filenameDateFormat">yyyy_MM_dd</Set>
          <Set name="retainDays">90</Set>
          <Set name="append">true</Set>
          <Set name="extended">false</Set>
          <Set name="logCookies">false</Set>
          <Set name="LogTimeZone">GMT</Set>
        </New>
      </Set>
    </Ref>

    
?

?

? 7、在webapps目錄下,新建一個目錄manager(相當于是一個web工程的名稱),然后再在這個目錄下添加一個a.jsp文件( jetty會預編譯jsp為java文件,最終會編譯為class文件,需要導入JETTY_HOME/lib/jsp目錄下的jar包

?

8、添加一個啟動jetty的java文件

?

      package hb.jetty;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.mortbay.jetty.Server;
import org.mortbay.jetty.handler.DefaultHandler;
import org.mortbay.xml.XmlConfiguration;
import org.xml.sax.SAXException;

public class JettyServer {

	public static void main(String[] args) {
		Server server = new Server(8080);
		server.setHandler(new DefaultHandler());
		XmlConfiguration configuration = null;
		try {
			configuration = new XmlConfiguration(new FileInputStream("D:\\JavaProject\\jettytest\\jetty\\etc\\jetty.xml"));
		} catch (FileNotFoundException e1) {
			e1.printStackTrace();
		} catch (SAXException e1) {
			e1.printStackTrace();
		} catch (IOException e1) {
			e1.printStackTrace();
		}
		try {
			configuration.configure(server);
			server.start();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}
    

?

?9、在地址欄中輸入http://localhost: 8080/manager /,就能夠顯示出添加的jsp文件

?

如何在jetty中添加servlet

?

跟著上面的步驟來

1、在manger目錄中添加WEB-INF目錄,然后再在里面添加一個web.xml文件,里面的內容可以根據webdefault.xml文件中的內容拷貝過來,然后做相關的修改

?

      <?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	<display-name>myweb</display-name>
	
	<filter>
		<filter-name>filter2</filter-name>
		<filter-class>hb.jetty.Filter2</filter-class>
	</filter>
	
	<filter-mapping>
		<filter-name>filter2</filter-name>
		<url-pattern>/filter/*</url-pattern>
	</filter-mapping>
</web-app>

    

?

?

2、在地址欄總輸入如下內容 http://localhost: 8080 /manager/filter/

?

目錄解構圖

jetty6 嵌入到 javaproject中

?

二、不使用配置文件設置jetyy的工程目錄(配置文件用java代碼說明)

?

      import org.mortbay.jetty.Server;
import org.mortbay.jetty.webapp.WebAppContext;

public class JettyServer2 {

	public static void main(String[] args) throws Exception {
		//獲取工程的根目錄
		String relativelyPath=System.getProperty("user.dir");
		System.out.println(relativelyPath);
		
		Server server = new Server(8080);  
		  
        WebAppContext context = new WebAppContext();  
        context.setContextPath("/manager");  
//        context.setDescriptor("D:/JavaProject/jettytest/jetty/webapps/manager/WEB-INF/web.xml");  
//        context.setResourceBase("D:/JavaProject/jettytest/jetty/webapps/manager");  
        context.setDescriptor(relativelyPath + "/jetty/webapps/manager/WEB-INF/web.xml");  
        context.setResourceBase(relativelyPath + "/jetty/webapps/manager");  
        context.setParentLoaderPriority(true);  
        server.setHandler(context);  
  
        server.start();  
        server.join(); 
	}

}

    

?

jetty6 嵌入到 javaproject中


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久天堂在线 | 精品伊人 | 日本一区中文字幕 | 水蜜桃久久 | 日本美女久久 | 曰本色wa| 久久精品成人 | 久热中文字幕在线观看 | 亚洲国产字幕 | 中国一级全黄的免费观看 | 国产福利精品在线 | 日韩国产欧美在线观看 | 亚洲国产欧洲 | 精品哟啊呦v视频在线观看 精品哟哟国产在线观看 | 热伊人99re久久精品最新地 | 国产精品一区二区三区久久 | 亚洲一区二区三区免费看 | 久久涩综合| 亚洲 欧美 精品 中文第三 | 成人免费毛片一区二区三区 | 国产成人午夜精品影院游乐网 | 在线观看国产久青草 | 毛片在线播 | 伊人久久婷婷丁香六月综合基地 | 天码毛片一区二区三区入口 | sese综合| 久久这里只有精品首页 | 欧美成人剧情中文字幕 | 国产在线精品一区免费香蕉 | 成人综合久久精品色婷婷 | 欧美aaaa在线观看视频免费 | 97在线视频观看 | 呦女亚洲一区精品 | 国产福利视频在线 | 奇米777在线 | 日日摸日日碰夜夜97 | 久一在线视频 | 国产你懂的 | 亚洲欧美综合一区二区三区四区 | 成人久久18免费网 | 一级毛片免费在线观看网站 |