gpt4 book ai didi

java - 如何组织我的 servlet?

转载 作者:行者123 更新时间:2023-11-28 22:10:01 24 4
gpt4 key购买 nike

我正在查看以前的问题:
https://stackoverflow.com/questions/98334/creating-a-java-servlet-web-application
How many actions should a servlet perform?

这些线程中的答案相互矛盾;有人说每个页面使用一个 servlet,而其他人说整个应用程序只使用一个 servlet。

我也遇到了同样的问题。那么,我如何决定我的 servlet 是什么?如果我使用单个(或几个)“前端 Controller ”,我如何解析请求以将它们委托(delegate)给其他对象?例如,如果一个页面上有 3 个不同的表单,我如何区分它们的请求?如何区分来自不同页面的表单和请求?为每个表单 + 页面分配多个 servlet 映射?看参数名?对“请求类型”参数进行 URL 编码?

做事的方式有很多...

附言我宁愿不使用像 Struts 这样的框架——我想知道使用 Servlet API 执行此操作的最佳方法。我正在使用 Tomcat7。

最佳答案

首先,在不采用现有的情况下自行开发一个(前端 Controller )servlet(例如 Spring 的 DispatcherServlet、JSF 的 FacesServlet、Wicket 的 WicketServlet 等)是一项相当不错的工作。但是你最终会得到更简单、更好的可重用/可维护的业务代码。一般的 Web 应用程序上通常没有多个前端 Controller servlet。应该只有一个。

很难说您是否真的需要一个。如果您的 Web 应用程序中毕竟只有 3 个 Web 表单(因此只有 3 个 Servlet),并且从长远来看这不会改变,那么可能不值得花几天时间在自己的 MVC 框架上或深入学习现有的MVC框架。很难说边界在哪里。但是,如果您可以确定所讨论的 Web 应用程序将来需要扩展和/或增强,那么现在采用 MVC 模式(即单个前端 Controller servlet)确实比那时更好。

至少,如果你打算在本土发展,那么你可以在 this answer 中找到很多有用的见解。 .但是,重用现有框架最终会更好地维护,因为有更多机会找到一个已经从头到尾了解该框架的人,这样她/他就不需要学习另一个框架在能够维护您的网络应用程序之前。

关于java - 如何组织我的 servlet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4775757/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com