- 博客(5)
- 收藏
- 关注
原创 状态模式
状态模式在编程中,可能会遇到需要进行状态转变的代码,通常我们是定义一堆常量来定义各个状态,通过一个变量来记住当前的状态,但是这样做的话每次操作都得进行一堆的if-else判断,状态一多,代码就很复杂,维护起来也不好维护。这个时候就可以用到状态模式,它把各个状态都用类来表示,状态的动作以及转换交由各个状态自己来维护,这样就不必在主对象中写一堆if-else语句,各个状态分工也很明确。下面是结构图...
2018-12-17 23:43:26 299
原创 迭代器模式
迭代器模式说起迭代器,我们会比较熟悉,Iterator,出现在聚合里,提供了访问聚合中包含的对象的功能,迭代器提供了一系列相同的方法,比如hasnext()、next()等等,我们利用迭代器对聚合进行访问时,不需要知道聚合中如何存储存储一系列对象,我们只需要操作迭代器来进行访问。迭代器模式把访问聚合对象的功能抽取出来,如何访问对象由迭代器自己实现,使聚合对其包含对象的访问中解耦出来。下面是结...
2018-12-16 23:07:40 263
原创 组合模式
组合模式当一个对象具有整体与部分的联系时,可以使用组合模式什么是整体与部分的联系?例如文件跟文件夹,文件夹本身也可以看做是一个文件,其也具有文件名等文件所具有的属性,整体操作跟文件差不多,所以可以把文件夹跟文件看做是同一种东西,但是文件夹下又包含文件,这个文件夹是整体,文件则是部分。下面是结构图:可以看到File类跟Folder的方法都是一样的,但是file类是不支持addFile()这...
2018-12-15 23:25:24 254
原创 装饰者模式 跟 适配器模式
装饰者模式装饰者模式,为原对象增加功能时使用,装饰者模式是针对接口实现的,下面是装饰者模式的结构图。针对Compoment这个接口进行实现,ClassA跟Decorator都实现Compoment这个接口,确保覆写func()方法,装饰者本身是不提供功能的,它只是对原有功能的追加,所以装饰者必须要持有原有的对象,也就是持有Compoment的具体实现,这里ClassA就是具体实现。上图看到...
2018-12-10 22:11:16 290
原创 springBoot-SpringSecurity练习1
最近在学SpringSecurity,来拦截没有登录的用户,以及验证用户是否具有权限访问某个页面,照着网上做了个简单的练习。这里用的是Thymeleaf作为模板引擎,因为SpringBoot建议不要使用JSP,下面是SpringBoot的配置:server: port: 8080 servlet: context-path: /secureTestspring: dat...
2018-12-01 22:01:09 218
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人