随笔分类 -  Java

大叔也学学java,跟跟风...
摘要:责任链,我感觉对就根据需求动态的组织一些工作流程,比如完成一件事有5个步骤,而第1步,第2步,第3步它们的顺序可以在某些时候是不固定的,而这就符合责任链的范畴,我们根据需求去设计我们的这些链条,去自己指定它们的执行顺序,下面看我的一个例子。 出现的对象 抽象责任 具体责任 抽象链条 具体链条 对象的 阅读全文
posted @ 2019-11-05 14:23 张占岭 阅读(1068) 评论(0) 推荐(2) 编辑
摘要:装饰器,顾名思义,就是把一个对象的功能进行扩展,添加新的装饰,让它具有新的特性和功能,在实现生活中,有很多装饰器实现的例子,比如人类可以跑,但有一个超人它不仅可以跑,而且还可以飞,这时在不改变原对象基础上,需要为超人添加飞的动作,就可以使用装饰模式。 抽象组件 具体组件 抽象装饰器 超人的装饰器 让 阅读全文
posted @ 2019-10-31 21:40 张占岭 阅读(287) 评论(0) 推荐(0) 编辑
摘要:设计模式可以使用我们在软件开发过程中更加灵活,软件的扩展更容易,软件的耦合度更低,设计模式不是在开发中刻意去用的,而是到了什么时候用什么模式的,不能强迫的使用它,应该是自然而然的想到它。 单例模式 在23种设计模式中,单例最为简单和纯粹,也是最容易理解的,即它在软件生命周期里,只有一个实例,就是说你 阅读全文
posted @ 2019-10-31 21:33 张占岭 阅读(331) 评论(0) 推荐(0) 编辑
摘要:在进行项目开发过程中,项目接口文档是很重要的一块内容,在java项目中我们可以用swagger,asciidoc,javadoc等方式来生产文档,而其中最基本的文档生成方式就是javadoc,它一般用在离线文档的生成上,我们需要按排它的规定来书写注释,从而最终生成文档。 # 标准化注释 1. @li 阅读全文
posted @ 2019-10-27 14:36 张占岭 阅读(1073) 评论(0) 推荐(0) 编辑
摘要:枚举实现单例 线程安全,调用效率高,不能延时加载,可以天然的防止反射和反序列化调用 静态内部类实现单例 线程安全,调用效率高,可以延时加载, 使用内部类的好处是,静态内部类不会在单例加载时就加载,而是在调用getInstance()方法时才进行加载,达到了类似懒汉模式的效果,而这种方法又是线程安全的 阅读全文
posted @ 2019-10-21 20:20 张占岭 阅读(349) 评论(0) 推荐(0) 编辑
摘要:限流一般可以根据客户端IP,请求的URL,用户登陆信息进行限制,每秒钟限制多次数,这从别一方面也提升了系统的性能,无用的并发没那么多了。 依赖包 zuul的配置 ratelimit限制配置 这样,服务a的限流就做好了! 阅读全文
posted @ 2019-10-17 19:31 张占岭 阅读(2389) 评论(0) 推荐(0) 编辑
摘要:之前写了关于读取自定义配置的文章 "springboot~yml里的自定义配置" ,而今天主要说一下对复杂配置信息的读取方法,我们简单的配置用@Value注解就可以了,而结构复杂的一般使用@ConfigurationProperties来实现,下面说一下。 配置信息 开启ConfigurationP 阅读全文
posted @ 2019-10-09 09:04 张占岭 阅读(3317) 评论(0) 推荐(0) 编辑
摘要:springboot里连接elk里的logstash,然后写指定index索引的日志,而之后使用kibana去查询和分析日志,使用elasticsearch去保存日志。 添加引用 添加配置 指定配置 logstash配置索引 kibana里建立索引 通过kiban菜单去建立索引:Management 阅读全文
posted @ 2019-09-13 18:23 张占岭 阅读(2737) 评论(0) 推荐(0) 编辑
摘要:在mybatis和mybatis plus里,如果你的实体字段是一个枚举类型,而在数据表里是整型,这时在存储时需要进行处理,默认情况下,会把枚举的元素名称拼接到SQL语句里,而由于数据表是int类型,所以在插入等操作时,就会出现异常! 添加枚举处理器 MappedTypes(value = {Yes 阅读全文
posted @ 2019-09-05 17:04 张占岭 阅读(5587) 评论(2) 推荐(0) 编辑
摘要:jvm虚拟机栈的作用 jvm虚拟机栈栈帧的组成 jvm虚拟机栈,也叫java栈,它由一个个的栈帧组成,而栈帖由以下几个部分组成 局部变量表 存储方法参数,内部使用的变量 操作数栈 在变量进行存储时,需要进行入栈和出栈 动态连接 引用类型的指针 方法出口 方法的返回 一段原程序代码 一 生成字节码文件 阅读全文
posted @ 2019-08-29 11:59 张占岭 阅读(1560) 评论(0) 推荐(0) 编辑
摘要:概念 LRU(Least Recently Used)最近最少使用算法是众多置换算法中的一种。 maxmemory Redis中有一个maxmemory概念,主要是为了将使用的内存限定在一个固定的大小。Redis用到的LRU 算法,是一种近似的LRU算法。 设置maxmemory 注意,在64bit 阅读全文
posted @ 2019-08-28 14:16 张占岭 阅读(2392) 评论(0) 推荐(0) 编辑
摘要:aop是面向切面编程的意思,它可以需要先选择一些切入点,然后对这些切入点进行拦截,注入统一的代码逻辑,这也是解耦的一种方式,也是为了避免重复的代码,让开发人员把关注点放在业务上。 引用包 添加切入点 测试 当我们访问controller下的接口下,在控制台中将输出方法执行前和执行后的结果 感想 事实 阅读全文
posted @ 2019-08-21 16:32 张占岭 阅读(1158) 评论(0) 推荐(0) 编辑
摘要:部署服务 docker run启动elastic服务 docker compose.yml的方式部署 elastic常用命令 查看集群是否健康 获取集群的节点列表 列出所有索引 建立名为customer的索引 向索引customer,类型为external,添加数据 获取数据 获取customer索 阅读全文
posted @ 2019-08-20 18:05 张占岭 阅读(1612) 评论(0) 推荐(0) 编辑
摘要:一次编译,到处运行 java一直宣传的口号是:一次编译,到处运行。那么它如何实现的呢?我们看下图: java程序经过一次编译之后,将java代码编译为字节码也就是 文件,然后在不同的操作系统上依靠不同的 进行解释,最后再转换为不同平台的机器码,最终得到执行。这样我们是不是可以推演,如果要在mac系统 阅读全文
posted @ 2019-08-20 11:46 张占岭 阅读(1357) 评论(0) 推荐(0) 编辑
摘要:当我们在JVM中运行一段程序代码,JVM初始运行的时候都会分配好 ,而JVM每遇到一个线程,就为其分配一个Program Counter Register(程序计数器), VM Stack(虚拟机栈)和Native Method Stack (本地方法栈),当线程终止时,三者(虚拟机栈,本地方法栈和 阅读全文
posted @ 2019-08-15 16:21 张占岭 阅读(502) 评论(0) 推荐(1) 编辑
摘要:回到大叔推荐博客索引 主要介绍java基础知识,非框架类及JVM相关的内容文章 java和Jvm目录 Java~关于开发工具和包包 Java~类,抽象类和接口 Java~时间戳小知识 Java~命名规范 java~google样式检查和命名规范 java~日期与字符串的转化 java~lambda表 阅读全文
posted @ 2019-08-10 15:25 张占岭 阅读(1531) 评论(1) 推荐(0) 编辑
摘要:垃圾收集策略与算法 程序计数器、虚拟机栈、本地方法栈随线程而生,也随线程而灭;栈帧随着方法的开始而入栈,随着方法的结束而出栈。这几个区域的内存分配和回收都具有确定性,在这几个区域内不需要过多考虑回收的问题,因为方法结束或者线程结束时,内存自然就跟随着回收了。 而对于 Java 堆和方法区,我们只有在 阅读全文
posted @ 2019-08-10 15:19 张占岭 阅读(536) 评论(0) 推荐(0) 编辑
摘要:feign面向方法签名的http调用,越来越受欢迎,类型于rpc的thrift,只需要关注方法签名和返回值即可,当然feign响应流对象时,需要我们做一下特殊处理,否则会出现异常。也有一些文章通过重写HttpMessageConvert来实现,但我测试后发现还是失败的。> Accept: image 阅读全文
posted @ 2019-08-05 19:23 张占岭 阅读(1751) 评论(0) 推荐(0) 编辑
摘要:参考文章:https://blog.csdn.net/qq_27828675/article/details/82466599 一 进行授权页 浏览器输入http://localhost:8081/oauth/authorize?response_type=code&redirect_uri=htt 阅读全文
posted @ 2019-08-02 15:20 张占岭 阅读(9514) 评论(0) 推荐(0) 编辑
摘要:简介 RSA非对称加密有着非常强大的安全性,HTTPS的SSL加密就是使用这种方法进行HTTPS请求加密传输的。因为RSA算法会涉及Private Key和Public Key分别用来加密和解密,所以称为非对称加密。Private Key和Public Key有互操作性,即用private key加 阅读全文
posted @ 2019-07-18 14:08 张占岭 阅读(2310) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示