摘要: 单列模式可以说是java设计模式中最常见的一种了,下面来聊下我对这个设计模式的一些认识吧 一、单例模式的定义 “ Java中单例模式的定义是:“一个类有且仅有一个实例,并且自行实例化向整个系统提供”。,具体说来就是一下3点。1、单例类只能有一个实例。2、单例类必须自己创建自己的唯一实例。3、单例类必 阅读全文
posted @ 2018-12-24 00:00 yao_1 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 最近在项目中遇到这样一个问题,对百万级的数据进行一个比对,大致有2个思路,一,将2个集合排序,将对象中需的属性取出拼接成字符串,然后对凭借的字符串进行摘要,最后对比2个集合的摘要值,二、重写对象中hash和equal,直接对比2个集合,比较其不同。对于2个方案,做了一些对比。对比的主要点集中在耗时, 阅读全文
posted @ 2018-12-21 23:43 yao_1 阅读(1309) 评论(0) 推荐(0) 编辑
摘要: 在分布式式系统中,为了分散访问压力,每个模块需要由多个节点组成集群,共同来提供服务,客户端根据一定的负载均衡策略来访问集群的各个节点,由此引入了一些问题,如在访问压力增大的情况需要要增加节点,或是集群其中的一个节点突然挂掉,如何将原有节点上的请求压力重新负载到新的节点集群上。 我们常用的负载均衡策略 阅读全文
posted @ 2018-12-10 00:00 yao_1 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 随着java技术的发展,分布式,集群一步步的走过来,java的配置是越来越繁琐了,而且多个节点的话也需要每个节点单独配置,java生态环境中各个大佬也在不断的优化解决这些问题,首先是由springboot开始兴起的“约定优于配置”这一概念,简化了大量配置,使得开发变得更有效率,只需配置与一般做法不同 阅读全文
posted @ 2018-12-03 00:00 yao_1 阅读(514) 评论(0) 推荐(0) 编辑
摘要: xxl-job是一个开源的任务调度平台(github地址https://github.com/xuxueli/xxl-job),且在分布式场景下有很好的支持性,可以对单个的任务单次执行,或者定时执行。在分布式场景下,可以选择不同的路由策略进行执行job,如指定第一个或最后一个执行器执行,轮询执行等等 阅读全文
posted @ 2018-11-25 23:39 yao_1 阅读(9351) 评论(0) 推荐(0) 编辑
摘要: lambda表达式是java8开始支持的一个特性,方便好用,使用lambda表达式进行编程可以明显提升开发效率,并且在执行效率上也有一定的优化。下面回顾一下lambda表达式的两部分常见用途。 一、针对函数式接口编程,匿名内部类的实现。 首先用个人语言来描述下函数式编程,就是接口中只含有一个接口方法 阅读全文
posted @ 2018-11-18 23:52 yao_1 阅读(215) 评论(0) 推荐(0) 编辑
摘要: java学习到一定阶段,设计模式是绕不开得东西,下面来简单聊下java23种设计模式之一的模板方法模式。 模板方法模式从定义上来说就是定义一个模板结构,将具体内容延迟到子类去实现。主要的作用就是在不改变模板结构的前提下在子类中重新定义模板中的内容。再用通俗一点的话讲,就是在父类里定义出一步一步要干什 阅读全文
posted @ 2018-11-11 23:47 yao_1 阅读(184) 评论(0) 推荐(0) 编辑
摘要: mybatis作为目前java较为常使用的orm框架,其中动态sql的参数的注入有${}与#{两种形式,下面来介绍一下他们之间的区别, #{}作为参数注入的方式时,从表象上来看,是在参数上添加了一个“”号,从实际执行情况来看,他其实是对原sql语句进行了预编译,留下的参数位置作为一个“”坑“,使用预 阅读全文
posted @ 2018-11-05 00:11 yao_1 阅读(1000) 评论(0) 推荐(1) 编辑
摘要: 在java中,有几个基本数据类型,在java的一切皆对象的思想下,他们好像显得比较特殊,比如我们直接一个int i=1;好像这个1并不是一个对象,其实这个是java采用了一种自动装箱和拆箱来实现,首先java的编译器对int i =1加上了Integer.valueOf(),使得实际编译前的这行代码 阅读全文
posted @ 2018-10-28 23:54 yao_1 阅读(384) 评论(0) 推荐(0) 编辑