自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 Java并发编程入门学习笔记

Java并发编程入门整理一、线程安全,学习并发编程的原因二、进程与线程的认识三、并行和并发的认识四、synchronized基础1、 synchronized基础用法分类2、synchronized基础理解代码示例3、synchronized优化原理 一、线程安全,学习并发编程的原因 1、数据共享性是线程安全的主要原因之一。如果所有的数据只是在线程内有效,那就不存在线程安全性问题,这也是我们在编程的时候经常不需要考虑线程安全的主要原因之一。但是,在多线程编程中,数据共享是不可避免的。最典型的场景是数据库中的

2020-09-12 11:58:38 516

原创 设计模式类型

单例(Singleton)模式:某个类只能生成一个实例,该类提供了一个全局访问点供外部获取该实例,其拓展是有限多例模式。 原型(Prototype)模式:将一个对象作为原型,通过对其进行复制而克隆出多个和原型类似的新实例。 工厂方法(Factory Method)模式:定义一个用于创建产品的接口,由子类决定生产什么产品。 抽象工厂(AbstractFactory)模式:提供一个创建产品族的接口,其...

2020-06-14 11:05:44 235

原创 Restful了解

1、什么是REST REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。Roy Fielding是HTTP规范的主要编写者之一, 他在论文中提到:“我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构。REST指的是一组架构约束条件和原则。”...

2020-05-06 19:21:51 285

原创 设计模式之原型模式

1.概念 1)定义 原型模式属于对象的创建模式。通过给出一个原型对象来指明所有创建的对象的类型,然后用复制这个原型对象的办法创建出更多同类型的对象。 2)结构 原型模式要求对象实现一个可以“克隆”自身的接口,这样就可以通过复制一个实例对象本身来创建一个新的实例。这样一来,通过原型实例创建新的对象,就不再需要关心这个实例本身的类型,只要实现了克隆自身的方法,就可以通过这个方法来获取新的对象,而...

2019-11-15 17:17:23 250

原创 Springboot整合ES地理位置查询

ES的地理位置查询 1、背景 店铺有实体类,在地图上搜索显示当前位置附近店铺,并显示距当前位置距离;当前位置由前端传参(经度与纬度)。 比如我们有很多的4s店,给用户一个app,在某个地方的时候,可以根据当前的地理位置搜索一下,自己附近的4s店。 (刚学会代码实现,做个笔记,原理和源码暂时没研究) 2、代码示例 /** * @description: 门店实体 **/ ...

2019-09-10 11:00:54 2889

原创 设计模式之适配器模式

1 2 3

2019-08-25 10:32:07 170

原创 设计模式之装饰者模式

装饰者模式 1、 2、 3、 4、

2019-08-13 15:14:17 171

原创 Java中ES基础配置

ES在Java中基础配置 1. 启动 elasticsearch启动 ,在bin包下启动elasticsearch.bat Kibana启动,在bin包下启动kibana.bat,然后访问localhost:5601 2.pom配置 spring-boot-start-data-elasticsearch <dependency> <groupId>org...

2019-08-07 09:03:10 3782

原创 设计模式之代理模式(动态代理)

代理模式之动态代理 参考:https://segmentfault.com/a/1190000009235245 https://blog.youkuaiyun.com/briblue/article/details/73928350 1、特点 (1) 在运行期,通过反射机制创建一个实现了一组给定接口的新类。 (2) 在运行时生成的class,必须提供一组interface给它,然后该class就宣称它实...

2019-07-30 17:06:19 218

原创 设计模式之代理模式

代理模式(基础) 1、概念 为其他对象提供一个代理以控制对某个对象的访问,即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能. 2、模式角色 抽象主题角色:声明真是主题和代理主题的共同借口,这样一来在任何可以使用真实主题的地方都可以使用代理主题。 代理主题角色:其包含有对真实主题的引用,从而可以在任何时候操作真实对象;代理主题角色提供...

2019-07-30 10:31:49 221

原创 设计原则之迪米特原则

设计原则之迪米特原则 1、 2、 3、 4、

2019-07-29 18:46:43 315

原创 设计模式之观察者模式

1 2 3

2019-07-26 11:34:51 143

原创 设计原则之接口隔离原则

接口隔离原则 1、概念 2、 3、代码演示 4、优缺点

2019-07-22 10:27:37 237

原创 设计原则之依赖倒置原则

依赖倒置原则 1、概念 依赖倒置原则(Dependence Inversion Principle)是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。 可理解为以下三种含义: 高层模块不应该依赖低层模块,两者都应该依赖其抽象; 抽象不应该依赖细节; 细节应该依赖抽象。 高层模块和低层模块容易理解,每一...

2019-07-09 11:29:51 196

原创 面向对象三大特性——多态

面向对象—多态 ———————————————— 1. 2. 3.

2019-06-29 14:44:48 1361

原创 面向对象三大特性——继承

面向对象三大特性——继承 —————————————————————————————— 1. 2. 3. 4.

2019-06-26 14:41:15 429

原创 设计原则之开闭原则

设计原则 一.概述 1.定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。 2.含义:一个软件应该通过扩展来实现变化,而不是通过修改已有的代码来实现变化的。 3.应对场景:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会在修改旧代码时引入新的错误,从而使我们不得不对整个功能进行重构,并且需要所有代码经过重新测试。 二.为什么遵守及使用? 1)开...

2019-06-26 14:14:53 283

原创 面向对象三大特性——封装

面向对象——封装 1、面向对象 (1)什么是面向对象?: 面向对象是一种编程思想 通俗的说:面向对象是一种思考问题的思维方式 (2)为什么使用面向对象以及它的作用 计算机语言为了更好的去描述现实生活中的事物,按照生活中的思考方式来定义,这样我们使用起来会更加方便 作用:将功能封装到对象里,强调的是具备某功能的对象; (3)面向对象的三个特征: 1.封装(Encapsulation) 2....

2019-06-14 15:14:24 349

原创 设计模式之策略模式

设计模式 1.概念 定义:定义一组算法,将每个算法都封装起来,并且使他们之间可以互换。目的相同,行为方式不同,促使我们使用策略模式。 2. 角色 环境(Context)角色:持有一个Strategy的引用,也就是发生的基本条件 抽象策略(Strategy)角色:这是一个抽象角色,通常由一个接口或抽象类实现。表明要做什么 具体策略(ConcreteStrategy)角色:包装了相关的算法或行为...

2019-03-19 18:16:25 142

原创 Sprngboot整合ES简单实现

简单集成ES 文中出现注解可在[https://blog.youkuaiyun.com/weixin_44008460/article/details/87549360] 1.maven依赖 <dependency> <groupId>org.springframework.boot</groupId> <arti...

2019-03-19 17:48:34 224

原创 ES:Head插件下载安装及数据导入

1. head插件下载及安装 下载安装head插件是为了更直观的看到数据的变化,并可以实现对数据的简单操作。elasticsearch5.0以下版本可以直接在elasticsearch目录下执行对应的命令安装head插件,但是5.0以上不支持直接安装,本篇介绍5.6.9以上head插件的安装步骤。 下载地址:https://github.com/mobz/elasticsearch-head ...

2019-03-19 16:32:26 2515

原创 RabbitMQ基础入门

RabbitMQ 一.简介 1.概念 RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。 Broker:简单来说就是消息队列服务器实体。 Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。 Queue:消息队列载体,每个消息都会被投入到一个或多个队列。 Binding:绑定,它的作用就是把exchange...

2019-03-19 16:14:56 240

原创 ES查询方法整理

ES查询2 ###1.多文档查询 标识符过滤器(ids):指定的标识符是文档的_id,为文档唯一标识 GET/…/…/_search multi Get:多字段查询可以设置多个文档查询条件,每个查询条件在结构上都比较类似 GET /_mget MultiGetResponse multiGetResponse = client.prepareMultiGet() ...

2019-03-19 15:40:09 2597

原创 ES查询方法及应用整理

ES查询2 ###1.多文档查询 标识符过滤器(ids):指定的标识符是文档的_id,为文档唯一标识 GET/…/…/_search multi Get:多字段查询可以设置多个文档查询条件,每个查询条件在结构上都比较类似 GET /_mget MultiGetResponse multiGetResponse = client.prepareMultiGet() ...

2019-03-19 15:35:11 1782

原创 设计原则之里式替换原则

里式替换原则 设计原则 1.概念及理解 原意:使用基类的指针或引用的函数,必须是在不知情的情况下,能够使用派生类的对象。 理解:父类能够替换子类,但子类不一定能替换父类。并且子类可以扩展父类的功能,但不能改变父类原有的功能。也就是说,在代码中可以将父类全部替换为子类,程序不会报错,也不会在运行时出现任何异常,但反过来却不一定成立。 应用:在继承类时,务必重写(Override)父类中所有的方法...

2019-02-24 16:42:39 265

原创 设计原则之单一职责原则

设计原则之单一职责原则 设计原则 1.概念与理解 原意:永远不应该有多于一个原因来改变某个类。 理解:对于一个类而言,应该仅有一个引起它变化的原因。说白了就是,一心不可二用,各司其职。这就好比一个团队,大家分工协作,互不影响,各做各的事情。 注意:当我们做开发时,如果发现有一个类拥有了两种的职责,那就问自己一个问题:为保证对象的高内聚与低耦合,可以将这个类分成两个类吗?如果真的有必要,那就分吧...

2019-02-24 16:17:57 192

原创 设计模式之工厂模式

工厂模式 简单工厂模式(静态工厂方法) 1.概念: 简单工厂模式(Simple Factory Pattern)属于类的创新型模式,又叫静态工厂方法模式(Static FactoryMethod Pattern),是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 2.角色结构: 1)抽象产品类:简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接...

2019-02-19 23:21:40 209

原创 ES基础知识

ES ES基础知识 1. ES配置集群 配置方式:直接修改conf/elasticsearch.yml/cluster-name:#默认即为elasticsearch,cluster-node:&amp;amp;quot;&amp;amp;quot; 查询集群即使用ES的REST API可实现功能 - 管理集群,节点,索引数据和元数据; - 执行创建,读取,更新和删除操作,以及根据索引查询; - 执行更深入的操作,比如分页、排序、过滤、脚本...

2019-02-17 18:57:25 752

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除