注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

FlyingWind

 
 
 

日志

 
 
 
 

JDK6的新特性(五)轻量级Http Server   

2008-08-10 14:42:04|  分类: JAVA资料 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
'{:wto
5B7'_#?%{  
fuDI]$hG JDK6的新特性之五:轻量级Http Server  
/'9AIa&M JDK6 提供了一个简单的Http Server API,据此我们可以构建自己的嵌入式Http Server,它支持Http和Https协议,提供了HTTP1.1的部分实现,没有被实现的那部分可以通过扩展已有的Http Server API来实现,程序员必须自己实现HttpHandler接口,HttpServer会调用HttpHandler实现类的回调方法来处理客户端请求,在 这里,我们把一个Http请求和它的响应称为一个交换,包装成HttpExchange类,HttpServer负责将HttpExchange传给 HttpHandler实现类的回调方法.下面代码演示了怎样创建自己的Http Server 
<]o Ce[Z  
#k5|bPr:2 /** 
<p'6,}Ngu * Created by IntelliJ IDEA. 
*ui>3+K 8 * User: Chinajash 
BtU-p\M * Date: Dec 30, 2006 
5yx^KEd */ 
-/xa"$_*r public class HTTPServerAPITester { 
w5(0C1I   public static void main(String[] args) { 
j5Wmn]5     try { 
1bA00BO+J%         HttpServer hs = HttpServer.create(new InetSocketAddress(8888),0);//设置HttpServer的端口为8888 
CtTzC         hs.createContext("/chinajash", new MyHandler());//用MyHandler类内处理到/chinajash的请求 
 n / *         hs.setExecutor(null); // creates a default executor 
)n x"[ u(         hs.start(); 
1!3 y^P     } catch (IOException e) { 
tV2}FR'ed         e.printStackTrace(); 
OI1+B065     } 
-f+r1Uc   } 
B]1Y_pp_
IOI"gv "VZ  
Ty:0 qx>w class MyHandler implements HttpHandler { 
e"7@> -y- public void handle(HttpExchange t) throws IOException { 
'uyP]a,=5t     InputStream is = t.getRequestBody(); 
tu-L1vK (     String response = "<h3>Happy New Year 2007!--Chinajash</h3>"; 
MxVE!`QU     t.sendResponseHeaders(200, response.length()); 
wH]Kj:     OutputStream os = t.getResponseBody(); 
Yf Mv U8     os.write(response.getBytes()); 
tW">pLg._     os.close(); 
JrfUReO 
y1\YZJ
]aU>rkot  
运行程序后,在浏览器内输入http://localhost:8888/chinajash P'V b ,浏览器输出 
gvSOw  
Happy New Year 2007!--Chinajash
  评论这张
 
阅读(485)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017