Servlets是Java编写Web应用程序的唯一方式吗?
不,Servlets只是使用Java编写Web应用程序的最便捷方式。如果你想一下:什么是Web应用程序?非常简单,它是一个可以接收HTTP请求并发送HTTP响应的应用程序。实现这一目标的常见模型包括:
还有其他变化(例如(1)的FastCGI)。Servlets是(2)的一个例子。99%的Java Web应用程序和框架使用servlets的原因是servlets是标准的(它们有由Sun认可的规范和参考实现),并且它们如此低级,以至于几乎可以在它们之上构建任何你想要的东西。
关于Servlet是否是编写Java Web应用程序最方便的方式存在争议。它们确实已经存在了很长一段时间,但也有其他选择;例如,请看Restlet: http://www.restlet.org/