More actions
imported>Unknown No edit summary |
(Repair batch-0003 pages from live compare) |
||
| Line 50: | Line 50: | ||
---- | ---- | ||
[[Jython]] | [[Jython]] | ||
Revision as of 00:29, 27 March 2026
Jython 을 이용한 Servlet 코드 작성하기.
http://jywiki.sourceforge.net/ - 다양한 예제들. Image, JDBC 연동 등.
Resin 에서의 Setting
<web-app> 항목에 다음을 추가
<servlet> <servlet-name>PyServlet</servlet-name> <servlet-class>org.python.util.PyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>PyServlet</servlet-name> <url-pattern>*.py</url-pattern> </servlet-mapping>
요즈음(resin 3.08 기준)에는 이렇게 쓴다.
<web-app ..>
.
<servlet servlet-name="PyServlet"
servlet-class="org.python.util.PyServlet"/>
<servlet-mapping url-pattern="*.py" servlet-name="PyServlet"/>
.
.
</web-app>
resin/lib 디렉토리에 jython.jar 화일을 복사해준다.
예제 코드.
from javax.servlet.http import HttpServlet
class test(HttpServlet):
def doGet(self, req, res):
res.setContentType("text/html")
out = res.getOutputStream()
out.println("Testing...")
print >>out, ""
print >>out, ""
print >>out, "Hello World..."
print >>out, ""
print >>out, ""
out.close()
return
작동이 되면 성공.~
Problem
servlet 클래스의 경우는 수정시 바로바로 적용이 되나, import 되는 모듈을 수정하는 경우 바로 적용이 되지 않는다.
PyServlet 의 장점
[1002] 가 PyServlet 에서 생각하는 장점이라면, Servlet 의 특징으로, CGI와는 달리 인스턴스가 메모리에 남아있다는 점이다. 간단한 프로토타이핑을 할때 memory persistence 를 이용할 수 있게 된다. ZP 에서의 12줄 이야기와 같은 프로그램을 작성할 수도 있다.