对于Java来说,ruby的rack或python的wsgi有什么等价物?以及路由库。
来自Python标准PEP 333:
相比之下,尽管Java有同样多的web应用程序框架Java的"servlet"API使应用程序成为可能使用任何Java web应用程序框架编写,可在任何web中运行支持servlet API的服务器。
http://www.python.org/dev/peps/pep-0333/#rationale-和目标
简短回答
Servlet在Java中相当于ruby的rack或python的wsgi。
深度回答
在Python中,WSGI(Web服务器网关接口)位于Python Web框架下,如Django、Flask、Bottle。
Servlet对Java的意义就像WSGI对Python的意义一样——这是web服务器的通用规范,允许web服务器和应用程序框架基于通用的API进行交互。
Java web框架是围绕前端控制器模式设计的,其中中央Servlet是传入请求的焦点。
Servlet组件通常完全集成在web框架内部,因此开发人员只需要与更高级别的组件交互,例如Spring MVC框架中的DispatcherServlet。
关于JAVA中的路由库:
如果您使用的是Spring框架,那么路由可以使用Spring MVC模块来完成,这是一个web应用程序框架,具有比简单路由更多的功能。
如果您使用的是J2EE,那么您可以使用Jersey,它是JAX-RS规范的一个实现。