博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring中用到哪些设计模式
阅读量:6249 次
发布时间:2019-06-22

本文共 732 字,大约阅读时间需要 2 分钟。

1.工厂模式,这个很明显,在各种BeanFactory以及ApplicationContext创建中都用到了;

2.模版模式,这个也很明显,在各种BeanFactory以及ApplicationContext实现中也都用到了;

3.代理模式,在Aop实现中用到了JDK的动态代理;

4.单例模式,这个比如在创建bean的时候。

5.Tomcat中有很多场景都使用到了外观模式,因为Tomcat中有很多不同的组件,每个组件需要相互通信,但又不能将自己内部数据过多地暴露给其他组件。用外观模式隔离数据是个很好的方法。

6.策略模式在Java中的应用,这个太明显了,因为Comparator这个接口简直就是为策略模式而生的。一文中,详细讲了Comparator的使用。比方说Collections里面有一个sort方法,因为集合里面的元素有可能是复合对象,复合对象并不像基本数据类型,可以根据大小排序,复合对象怎么排序呢?基于这个问题考虑,Java要求如果定义的复合对象要有排序的功能,就自行实现Comparable接口或Comparator接口.

7.原型模式:使用原型模式创建对象比直接new一个对象在性能上好得多,因为Object类的clone()方法是一个native方法,它直接操作内存中的二进制流,特别是复制大对象时,性能的差别非常明显。

8.迭代器模式:Iterable接口和Iterator接口 这两个都是迭代相关的接口,可以这么认为,实现了Iterable接口,则表示某个对象是可被迭代的;Iterator接口相当于是一个迭代器,实现了Iterator接口,等于具体定义了这个可被迭代的对象时如何进行迭代的

暂时总结那么多,以后发现持续更新。。。。。。

转载地址:http://rxria.baihongyu.com/

你可能感兴趣的文章
.NET Core采用的全新配置系统[9]: 为什么针对XML的支持不够好?如何改进?
查看>>
通过反射克隆对象,对象复制(克隆)工具类
查看>>
走红日本 阿里云如何能够赢得海外荣耀
查看>>
Live Messenger/MSN 最小化到托盘区
查看>>
2017CCPC秦皇岛现场赛——L - One-Dimensional Maze
查看>>
【译】使用 currentColor 属性写出更好的 CSS 代码
查看>>
手把手教你写Linux设备驱动---input子系统(一)--input事件应用程序的读写实现(基于友善之臂4412开发板)...
查看>>
为什么总是优衣库?前高管曝成功秘密
查看>>
云计算落地衍生云存储 数据中心大变革
查看>>
如何登陆进入Unix体验中心的PE860/FreeBSD系统?
查看>>
CPU Segments
查看>>
如何用数据分析给直播行业再添一把火?
查看>>
AI与IoT为主要发力点,带你看看2016 Hot Chips大会究竟发生了什么?!
查看>>
Java中使用CompletableFuture处理异步超时
查看>>
《21世纪机器人》——DeutchConn第5晶圆厂,装载码头:重启前5小时
查看>>
《中国人工智能学会通讯》——4.28 数据挖掘技术在电子数据取证中的应用
查看>>
【模式识别国家重点实验室】深度学习教你 “以貌取人”
查看>>
搞定全渠道用户体验不是梦,看这家零售巨头怎样做
查看>>
小程序分销商城开发功能
查看>>
数据中心的区块链硬件可能不会解决任何问题
查看>>