自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺談開源Servlet容器Jetty

開發(fā) 后端
如果讓一個(gè)人說出一種開源的servlet容器,他的回答可能是Apache Tomcat。但是,Tomcat并不是孤單的,我們還有Jetty。

Jetty是一個(gè)使用Java語言編寫的開源的servlet容器,它為基于Java的web內(nèi)容如JSP和servlet提供運(yùn)行環(huán)境。Jetty作為可選的servlet容器只是一個(gè)額外的功能,而它真正出名是因?yàn)樗亲鳛橐粋€(gè)可以嵌入到其他的Java代碼中的servlet容器而設(shè)計(jì)的。這就是說,開發(fā)小組將Jetty作為一組Jar文件提供出來,因此你可以在你自己的代碼中將servlet容器實(shí)例化成一個(gè)對(duì)象并且可以操縱這個(gè)容器對(duì)象。

Jetty在servlet容器中算不上一個(gè)新面孔,它從1998年就已經(jīng)嶄露頭角。Jetty的發(fā)布遵循了Apache 2.0的開源協(xié)議,你可以在免費(fèi)軟件和商業(yè)軟件中使用Jetty。

下面將介紹在MyEclipse 6.5下使用jetty的全過程。

環(huán)境:Windows XP + JDK 1.6.11 + MyEclipse 6.5 + jetty-7.0.0pre3

1. 打開myEclipse, 新建java工程Jetty,建立webapps和 logs文件夾(和src同級(jí)),在src下建立config、servlet及test文件夾,在webapps建立manage目錄作為web工作目錄。

2. 將${ROOT}\jetty-7.0.0pre3\lib下的三個(gè)jar包加入工程的classpath,將${Root}:\jetty-7.0.0pre3\lib\jsp-2.1下的四個(gè)jar包加入工程的classpath,copy ${ROOT}\jetty-7.0.0pre3\etc下的jetty.xml, webdefault.xml和realm.properties到src\config下,同時(shí)copy ${ROOT}\jetty-7.0.0pre3\contexts下的test.xml到src\config下并改名為manage.xml。

3. 修改jetty.xml, manage.xml,將這些配置文件中帶有jetty.xml、webdefault.xml及realm.properties的路徑改為src\config,并在webapps/manage下新建index.jsp。

4. 在test目錄下新建Start.java,代碼如下:

1 import org.mortbay.jetty.*;
2
3 import java.io.*;
4
5 import org.mortbay.jetty.handler.*;
6
7 import org.mortbay.xml.*;
8
9 public class start {
10
11 public static void main(String args[]) {
12
13 Server server = new Server(8080);
14
15 server.setHandler(new DefaultHandler());
16
17 XmlConfiguration cfg = null;
18
19 try {
20
21 cfg = new XmlConfiguration(new FileInputStream("./src/com/greysh/config/jetty.xml"));
22
23 cfg.configure(server);
24
25 server.start();
26
27 System.out.println("Jetty Started ...");
28
29 } catch (FileNotFoundException e) {
30
31 e.printStackTrace();
32
33 }
34
35 catch (IOException e) {
36
37 e.printStackTrace();
38
39 } catch (Exception e) {
40
41 e.printStackTrace();
42
43 }
44
45 }
46
47 }

運(yùn)行Start類,用IE訪問http://localhost:8080/, 點(diǎn)擊/manage ---> org.mortbay.jetty.webapp.WebAppContext@1275d39{/manage,file:/D:/Program%20Files/MyEclipse%206.5/workspace/Jetty/webapps/manage/} ,此時(shí)Jetty就可以成功運(yùn)行了。

如果要在Jetty中運(yùn)行servlet,操作過程如下:

<!--[if !supportLists]-->1. <!--[endif]-->在webapps/manage下建立WEB-INF, 并新建web.xml用于配置servlet, 同時(shí)將contexts下的webdefalut.xml的內(nèi)容copy到web.xml里。

<!--[if !supportLists]-->2. <!--[endif]-->修改contexts下的manage.xml,在webapps目錄下寫jsp程序,并在servlet目錄下寫相應(yīng)的servlet處理程序,同時(shí)在web.xml里進(jìn)行配置。

<!--[if !supportLists]-->3. <!--[endif]-->運(yùn)行Start類,用IE訪問http://localhost:8080/, 點(diǎn)擊/manage ---> org.mortbay.jetty.webapp.WebAppContext@bb05de

到此Jetty運(yùn)行servlet成功

【編輯推薦】

  1. Java程序開發(fā)中的簡(jiǎn)單內(nèi)存分析
  2. Java中靜態(tài)數(shù)組與動(dòng)態(tài)數(shù)組
  3. 淺談Java中的編碼理論
責(zé)任編輯:彭凡 來源: SDN
相關(guān)推薦

2012-10-31 14:31:12

開源

2013-01-31 10:11:03

開源

2009-07-07 08:46:18

JettyServlet容器

2012-03-21 12:57:29

JavaJettyServlet

2014-03-11 14:41:23

2009-07-08 17:04:25

user cache

2015-12-07 09:46:26

swift編程開源

2009-07-09 14:56:23

Servlet讀取

2009-07-09 11:27:59

Servlet容器

2013-03-11 14:13:06

JettyJava

2009-07-06 10:25:14

Java Web Se

2019-04-15 09:19:52

MongoDB開源協(xié)議

2015-07-09 10:55:59

開放容器項(xiàng)目DockerCon云計(jì)算

2021-12-31 09:04:39

軟件設(shè)計(jì)開發(fā)函數(shù)

2010-05-05 09:22:10

Canonical開源軟件

2011-06-28 08:41:09

架構(gòu)師

2009-07-03 18:07:31

Servlet的運(yùn)行環(huán)

2010-08-23 10:22:28

視頻采訪Paul紅帽

2014-08-27 09:54:23

Beetl開源

2009-07-09 10:25:05

Servlet的Web
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)