利用 spring 的 bean 和策略模式优雅的写出可扩展的代码

  代码的的其中有个设计原则就是:开闭原则。

  我们在开发过程中经常会遇到这样的问题:就是往往需要有不同的计算方案,比如促销方案,打折。

  这个例子就是通过利用 spring 的对 bean 的管理,利用面向接口编程,写出来易于遵守开闭原则的代码,不再使用if  else  或者 swatch

 

# # 第一步是定义一个计算的接口

 

# # 第二步是将每一种计算方案来实现这个接口,并单独维护。这个来解决对源代码修改的问题。

  这一步需要注意的是,将写实现类,交给spring 来管理。注册成 bean 的形式

利用 spring 的 bean 和策略模式优雅的写出可扩展的代码_第1张图片

 

# # 第三步在 service 层,使用spring 管理 bean 的功能,来使用策略模式,进行选择计算方案。

  先注入 ,红色的是对应的定义好的接口的名称

 

   接着在下边调用:

 

# # 需要注意的地方在于 第二步bean 的名字,要和 第三步传的参数可以对应起来

 

 

 

你可能感兴趣的:(SSM框架,开发经验,代码的艺术)