首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在java中使用开闭原则调用网页操作?

如何在java中使用开闭原则调用网页操作?
EN

Stack Overflow用户
提问于 2013-02-21 22:20:44
回答 1查看 79关注 0票数 0

我有一个网页,用户可以在其中填写和提交表单:

代码语言:javascript
复制
 <form id=email...
 send email ....
 <input type="hidden"id="method" value="sendemail"...
 />
  .............

 <form id=writeindatabase
 some data
      ............
 <input type="hidden"id="method"  value="writeindatabase"...

在服务器端:

代码语言:javascript
复制
if (method.compareTo("sendemail")==0) {
 doSendEmail(....
}
else if (method.compareTo("writeindatabase")==0) {
  doWriteInDatabase(....

 ..............................

我不喜欢这个架构,因为它违反了open close principle。有没有可能通过重构来解决这个问题?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-21 22:43:55

您可以以结构化、安全的方式使用反射,或者使用类似的命令模式。

  • Reflection:创建一个Map<String, Method>,将每个可接受的方法名称映射到一个反射模式对象,您可以在查看它之后使用该对象up.
  • Command Method以类似于上面的方式使用一个Map<String, Callable<?>>。通过调用适当的服务方法,将Callable实例化为实现call的匿名内部类。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15004576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档