如何使用带有struts框架的委托模式将Struts Action类与执行业务逻辑的Java类分开?
答案 0 :(得分:0)
好的,假设你有一个界面可以产生一些商业逻辑,(例如问候用户):
<强> IBussinessLogic 强>
public interface IBussinessLogic{
public void greetUser(String username);
}
您使用实现该接口的类:
<强> BussinessLogic 强>
public class BussinessLogic implements IBussinessLogic{
public void greetUser(String username) {
System.out.println("Hello " + username + ".");
}
}
然后,在您的操作类中,您可以委派,不抱歉,必须委托您的业务逻辑类:
...
IBussinessLogic bl = new BussinessLogic();
bl.greetUser(myForm.getUsername());
...
请记住,一个动作有一些责任:控制流程,向前返回......但它们都不必是实现应用程序的业务逻辑。使用界面允许您在将来使用IBussinessLogic的不同实现重新连接应用程序,甚至使用依赖注入或其他技术。
这是委托模式的一个非常简单的例子。您的操作(委托人)信任委托(BussinessLogic)来完成任务。