日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
使用Jython編寫Servlet

眾所周知,servlet是java在服務器端程序設計 的重要組成部分,servlet執(zhí)行效率較高,適合做程序的邏輯處理,缺點是使用起來比較繁瑣,每個servlet必須在web.xml中聲明并且當修改部署后的servet后一般還需要reload容器,這種情況對于開速開發(fā)是很不利的,

本文介紹一種另外的serlvet開發(fā)方式:使用Jython編寫Servlet

本文假設 讀者熟悉某種應用服務器(如tomcat),java 和 python程序設計語言

在http://www.jython.org 上下載jython,假設為D:\jython-2.1

建立一個名稱為jython的web應用,把D:\jython-2.1\jython.jar copy到webapp下的WEB-INF\lib下,并配置web.xml如下:

 
 
 
  1. < servlet> 
  2. < servlet-name>PyServlet< /servlet-name> 
  3. < servlet-class> 
  4.  org.python.util.PyServlet  
  5. < /servlet-class> 
  6. < load-on-startup>11< /load-on-startup> 
  7. < init-param> 
  8.  < param-name>python.home< /param-name> 
  9.  < param-value>D:\jython-2.1< /param-value> 
  10. < /init-param> 
  11. < init-param> 
  12.  < param-name>python.path< /param-name> 
  13.  < param-value>D:\jython-2.1\Lib< /param-value> 
  14. < /init-param> 
  15. < /servlet> 
  16. < servlet-mapping> 
  17. < servlet-name>PyServlet< /servlet-name> 
  18. < url-pattern>*.py< /url-pattern> 
  19. < /servlet-mapping> 

現(xiàn)在編寫一個HelloWorld.py,如下:

 
 
 
  1. from javax.servlet.http import HttpServlet  
  2. class HelloWorld(HttpServlet):#需要類名和文件名 一致  
  3.  def doGet(self,request,response):  
  4.  response.setContentType("text/html;charset=utf-8");  
  5.  out = response.getWriter()  
  6.  print>>out,"< H1>Hello World by Jython Servlet!< /H1>"; 

啟動應用服務器 ,假設位于localhost,端口8080,訪問http://localhost:8080/jython/HelloWorld.py ,是不是看到了

“Hello World by Jython Servlet!”字符串 輸出呢?

正如 您所想象的一樣,Jython編寫Servlet無須在web.xml做任何聲明,PySerlvet會攔截所有.py請求并分發(fā)給各自的jython servlet,

并且在修改HelloWorld的實現(xiàn)后,立刻就可以看到變化,無須重啟 應用服務器,很方便吧!

注:編寫HelloWorld.py的時候請嚴格縮進 ,jython是一種以縮進區(qū)分代碼塊的語言,不正確的縮進是語法錯誤。這樣就完成了Jython編寫Servlet。


文章題目:使用Jython編寫Servlet
分享地址:http://www.5511xx.com/article/ccsdsos.html