- 博客(20)
- 资源 (1)
- 收藏
- 关注
原创 行为性模式-模板方法模式
/ 定义执行顺序// 登录if (!// 爬虫// 生产海报(base64加密)@Overridelogger.info("模拟京东登录用户名:{},密码:{}",uId,password);@Overridelogger.info("模拟京东商品爬虫解析:商品名:{},商品价钱:{},商品URL:{}",reptileMap.get("name"),reptileMap.get("price"),skuUrl);@Override。
2024-09-25 17:31:35
818
原创 行为性模式-策略模式
策略模式可以解决大量if…else,用来封装同一种业务功能的不同算法实现。下面是通过策略模式用来封装商品优惠卷服务(满减、折扣、直减、n元购)
2024-09-24 10:29:20
219
原创 行为性模式-观察者模式
本文模拟摇号流程(1.调用外部摇号接口,2.发送摇号结果短信,3.记录摇号结果),先将1、2、3步骤在一个类中实现,后使用观察者模式将核心功能1与非核心功能2、3抽离出来实现(降低耦合、更好扩展)
2024-09-20 15:53:40
246
原创 行为性模式-备忘录模式
生产环境投产时为防止将本地或测试环境配置提交到线上会将配置文件单独抽离出来放到线上,投产之后如果发现有问题代码需要回滚至上个版本,配置文件也需要恢复到上个版本。本文使用备忘录模式来模拟配置文件回滚操作。
2024-09-18 17:39:04
297
原创 行为性模式-迭代器模式
定义迭代器接口类 Iterator,定义next()、hasNext()方法: 目的是进行遍历的时候如果有下一个对象就遍历下一个;(和list、set、queue定义迭代器接口类一样)提供Collection<E,T>接口,区别是相比于上面java自身Collection容器多了addLink()、removeLink()方法是因为除了维护员工对象集合还要维护一个员工部门集合;进行迭代器遍历;确认是否有下一个。
2024-07-31 21:16:36
609
原创 git 基本概念、基本操作
这会在当前目录下创建一个名为 “libgit2” 的目录,并在这个目录下初始化一个 .git 文件夹, 从远程仓库拉取下所有数据放入 .git 文件夹,然后从中读取最新版本的文件的拷贝。该命令将创建一个名为 .git 的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件,这些文件是 Git 仓库的骨干。如果你想在克隆远程仓库的时候,自定义本地仓库的名字,你可以通过额外的参数指定新的目录名,这会执行与上一条命令相同的操作,但目标目录名变为了 mylibgit。创建一个新的 README 文件。
2024-06-19 16:38:27
950
1
原创 行为性模式-责任链模式
责任链模式的核心是解决一组服务中的先后执行处理关系,就有点像你没钱花了,需要家庭财务支出审批,10块钱以下找闺女审批,100块钱先闺女审批在媳妇审批。
2024-05-02 17:51:42
54
2
原创 结构型模式-享元模式
将复杂对象拆分静态不变部分和动态变化部分,静态部分放在内存或redis中,使用的时候从内存或redis取出来复用,也就是说所有对象的静态部分在内存或redis中只保留了一份,动态变化部分一般放在redis中,使用的时候也从redis取出来和静态部分拼接起来。
2024-04-29 21:58:36
129
3
原创 结构性模式-门面模式/外观模式
StarterServiceProperties读取application.yml配置文件中配置内容,并将配置文件内容的值设置给StarterServiceProperties类的属性,StarterAutoConfigure类引入StarterServiceProperties类型的属性并在方法中获取StarterServiceProperties从配置文件获取的值设置给starterService类的属性。是一个条件注解,它表明只有在指定的类存在于类路径上时,才会应用配置。
2024-04-24 22:41:42
701
原创 结构性模式-组合模式
通过构造决策树来决策不同性别不同年龄的用户应该返回的内容,但是目前理解太浅,自我感觉设计太复杂有点过度设计并且初始化树代码太多容易出错,希望日后再看能有不一样的看法来理解这种设计。
2024-04-21 23:42:57
299
1
原创 结构性模式-装饰器模式
抽象类和通用单点登陆类实现共同接口,并引入接口类型属性并使用构造方法来给接口类型属性设值,最后通过接口类型属性调用通用单点登陆校验方法。
2024-04-17 23:41:44
733
1
原创 49-hashMap-01
输入: strs = [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]输出: [[“bat”],[“nat”,“tan”],[“ate”,“eat”,“tea”]]三.测试运行时间:6ms 内存:46.64M使用str.toCharArray()的方法把字符串转为数组,用Arrays.sort(charArray)方法将数组排序,String key = new String(charArray)使用排序后的数组生成字符串作为hashMap的key值(所有乱序字
2024-04-15 23:52:08
339
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人