我是 Web 开发新手,只是想知道 java servlet 的最佳实践。每个 servlet 是否应该只执行一个操作,即用于登录的 servlet、用于注册的 servlet 等,还是应该通过传递不同的参数来告诉 servlet 执行哪个操作来组合类似的操作?
Cheers
您永远不应该传递参数来告诉 servlet 执行不同的操作。您所做的就是将 2 个 servlet 合并为一个,这会变得更难以管理。您将需要每个“操作”都有一个 servlet。
应避免的例子如下:
/App/Servlet1?action=编辑
if (request.getParamater("action").equals("edit")) {
//update fields
} else if (request.getParamater("action").equals("view")) {
//just query
}
当您想要重新设计任何东西时,这往往会进一步导致很多问题。您将希望拥有单独的 servlet,因为它解耦了您的逻辑,以便您可以轻松地更改它,而不是耦合不应该与之相关的各种复杂代码。另外,看看关注点分离 http://en.wikipedia.org/wiki/Separation_of_concerns.
修改/编辑:
我现在要这么说(很久以后才给出原来的答案)...您可以保留“多个操作”概念并将其放入单个 servlet(控制器)中。该控制器可以并且应该委托给各个操作处理程序。我认为这在关注点分离方面是相同的,并且比我原来的答案更清晰。换句话说,不要在 servlet 中实现任何内容,仅将其用于路由。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)