结合Spring实现设计模式与面向接口编程(不断更新中...)

 

在学设计模式的时候,遇到的一个比较大的问题就是,虽然设计模式可以解决很多的重用性、解耦和的问题,但是最后在类之间建立关系的时候,还是需要显示的编写代码,在代码修改的时候,还是需要修改比较大量的代码,现在结合Spring,设计好类结构以后,就可以进行容器外类依赖注入,这是非常好的思想,不仅在更深程度实现了解耦和,同时让程序员更关注业务,而不是实现,真正实现面向接口的编程,可以说,纯设计模式是将类关系延迟到子类,而在Spring中,我认为类关系延迟到了容器外,或者直接说延迟到了XML文件中(不仅仅是XML配置文件,还有注解),通过简单的配置文件修改,就可以修改程序整个的类依赖关系.在我们实际开发过程中,我们完全可以设计好接口的结构,完全不用管实现类,在接口设计合理后,再进行实现,那么只需要添加配置文件的内容就可以实现程序的运转

 

工厂模式:

我们很了解这个模式,对于面向接口编程的思想,我们只需要定义接口,然后利用Spring进行装配,实现结束以后,再将实现类的类名写入配置文件中去。

工厂模式类图

 

 

 

              applicationContext.xml文件结构图

 

 

客户端使用代码:

                                                     

 

如果我们需要更改工厂或者产品,我们就可以在配置文件,将红色线内的字符串进行修改就可以,完全不用修改任何代码,

 

 

单例模式:

在默认的情况下,Spring中的bean都是单例模式,只是这个单例,不是通过代码限制,而是通过Spring容器限制,也就是说如果你想通过Spring获得对象时,这个对象是单例的。

 

 结构型模式中的组合模式

类图:

 

 相信大家也都很熟悉这个设计模式,applicationContext.xml文件结构图:

 

 

代码如下:

                      

 

类代码如下:

IComponent:

                 

ITreeFactory:

                

Component:

               

Leaf:

                

TreeFactory:

               

Test:

                

执行结果:

              

桥接模式:

看过《精通Spring Java 轻量级架构开发实践》的人,可能会知道,里面有一个利用桥接设计模式设计的一个邮件发送的例子,虽然它没有直接说用什么设计模式,但是我画了一张类图,大家从这里也可以看出,不仅可以看出使用了桥接设计模式,也可以看出使用Spring的好处。

 

 

 

大家可以看到这是典型的桥接设计模式,更重要的是,结合这种设计模式和Spring,客户端只需要和Spring打交道,不了解具体的实现类,而且可以通过配置文件的修改,改变具体的实现类,而不用手动注入

本想将所有的设计模式使用Spring实现一遍,但发现这些设计模式都有共通点,我就介绍了几种,其他的也都是一样的设计。只需要记住,面向接口、松耦合、依赖注入.

下面这个是最基本的一些Spring配置,保留下来,以后用到Spring就可以省去一些必要的配置,方便我们编程,将配置的时候省去

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值