JAVA
文章平均质量分 93
Simple~~~
这个作者很懒,什么都没留下…
展开
-
ElasticSearch客户端使用
ElasticSearch客户端使用SpringCloud集成环境说明ES客户端说明POM依赖HighLevelClient与LowLevelClient官方参考文档差异对比客户端初始化基本增删改查SearchGetDeleteUpdateIndexBulk关于异步方法的一些说明SpringCloud集成环境说明JDK: 1.8SpringBoot版本:2.1.5.RELEASEElasticSearch版本:6.3.0ES客户端说明ElasticSearch默认有两个端口,9200和9300原创 2021-04-20 13:52:34 · 712 阅读 · 0 评论 -
记一次@Transactional事务无法回滚的原因
最近在做一个导入功能的时候为了保证导入数据的原子性,使用@Transactional添加事务控制,按理在运行出现异常的时候,数据会进行回滚,然而实际并没有,检查了一下,发现有两个没注意的问题。1.抛出的异常是checked异常 异常其实分为两种,unchecked异常和checked异常,unchecked异常就是继承自Error或者RuntimeExcepti...原创 2019-07-26 15:18:41 · 736 阅读 · 0 评论 -
mybatis-plus代码生成器使用及注意事项
首先贴上官方文档地址Mybatis-Plus代码生成器,具体的参数配置参考官方文档。Mybatis-plus的代码生成器是mybatis-plus组件的,并不是mybatis的,注意不要看错,这里会介绍代码生成器的主要用法以及需要注意的事项。1.添加maven依赖Mybatis-plus的代码生成器在3.0.3之后就独立出来,与mybatis-plus分开了,所以使用高版本的mybat...原创 2019-07-30 11:00:29 · 9172 阅读 · 0 评论 -
记Stream的toMap方法引发的问题
有时候需要将List中的对象转化为Map的key-value形式方便快速获取对应的value,例如要将元素中的id和name分别作为map的key和value,一般来说需要遍历List,一个个构造map,不美观也不方便,JAVA8中提供了Stream,其中的toMap方法可以快速的晚上上面的操作。 使用方式:Map<String,Object> map = li...原创 2019-07-19 11:18:50 · 3037 阅读 · 0 评论 -
多线程总结
线程与进程的简单理解 进程 在操作系统中,一个应用就是一个进程,是调度的基本单位,在原来单核cpu的环境下,并不存在多线程,但是系统却实实在在可以同时运行多个程序,实际上cpu是通过不断在这些进程间进行切换,一个cpu一次只能处理一个进程,但是它并不是等待这个进程结束之后才去处理下一个进程,而是在这些进程之间不断切换,但是切换的速度非常快,感觉不到,最终表现出来就是多个应用都...原创 2019-04-25 09:46:04 · 139 阅读 · 0 评论 -
jvm调优常用参数
jvm参数类型:(了解 不常用)-xint:解释执行-Xcomp:编译执行-Xmixed:混合模式,jvm自己决定使用哪种方式(重点)分为boolean类型:-XX:[+-]<name> 表示是否启用jvm的某个参数非boolean类型:-XX:<name> = <value> 表示name属性的值为value-Xms:初始对内存大小(...转载 2019-04-29 17:30:12 · 469 阅读 · 0 评论 -
分布式配置中心Config整合使用
Config的作用 Config是分布式配置中心,用来集中管理微服务的配置文件,一般情况下,应用的配置文件是放在项目中的,修改了之后需要重新启动,但是在微服务架构中,虽然应用的配置文件不如mvc那么多,但是随着服务数量的增加,每个服务都有自己的配置文件,按照一般的方法需要逐个修改重启,相当麻烦,通过Config可以将这些配置文件统一管理起来,并且可以动态刷新配置,不需要重启。 ...原创 2019-04-24 14:05:49 · 582 阅读 · 0 评论 -
API网关Zuul学习
Zuul的作用 Zuul是spring cloud中推荐使用的api网关,一般来说,服务是集群部署的,并且不会直接暴露到外网中直接调用,外部客户端想要调用服务无法直接调用服务的实际地址,实际情况也不允许这样做,这时候就需要通过一个称为网关的组件来处理客户端的请求,通过网关来进行分配,zuul的主要功能就是对所有的服务请求进行统一拦截管理,通过负载均衡分发服务请求,与Nginx类似,同时,...原创 2019-04-23 15:34:28 · 338 阅读 · 0 评论 -
Hystrix熔断器学习
什么是Hystrix Hytrix是微服务的中的熔断器,用来保护服务,当一个服务请求量过大导致服务不可用的时候,称为服务雪崩,hystrix提供服务熔断与降级功能,保证服务可用,提高用户体验。服务雪崩 一般来说每个服务都是一个独立的应用,服务请求由tomcat进行接收并处理,tomcat通过一个线程池来处理这些请求,但是线程池是由最大线程数限制的,当请求量过大,服...原创 2019-04-22 17:51:22 · 259 阅读 · 0 评论 -
Feign使用方法
什么是Feign Feign是微服务架构中的一种服务调用方式,通过声明方式进行微服务调用,Feign可以帮助我们更加便捷编写接口。Feign的使用 由三个部分组成:服务提供者,服务消费者,Feign客户端 服务提供者:服务接口,接口定义需要加上@RequestMapping注解public interface IFeignService { ...原创 2019-04-22 14:56:17 · 9336 阅读 · 1 评论 -
什么是Ribbon
Ribbon的作用 Ribbon是springcloud下的客户端负载均衡器,消费者在通过服务别名调用服务时,需要通过Ribbon做负载均衡获取实际的服务调用地址,然后通过httpclient的方式进行本地RPC远程调用。Ribbon原理 Ribbon负载均衡主要是轮询算法,分为以下几步: 1.根据服务别名,从eureka获取服务提供者的客户端列表 ...原创 2019-04-22 15:16:11 · 2792 阅读 · 0 评论 -
Spring知识点整理
Spring知识点整理IOC: 控制反转,创建对象的控制权翻转,不是由程序创建,而是通过Spring的容器进行创建,通过容器进行管理,不需要自己创建,使用的时候从容器中获取,比如通过配置文件、setter方法、注解都是IOC的应用 AOP: 切面编程,目的是为了将关注点与业务点分离解耦,就是将与业务无关,但是又会对多个对象产生影响的的公共逻辑进行抽取并封装在一个重用...原创 2019-04-19 12:46:25 · 125 阅读 · 0 评论