3 奥雷里亚诺

已隐藏 高级软件工程师

暂无相关简介

等级
TA的排名 15w+

基于spring-beans的深复制工具类

ABParser/** * @program: ABParser * @description: 要拷贝字段的目标对象不可以是抽象类、接口,或者只有参构造方法, * 否则在targetClass.newInstance()时会报java.lang.InstantiationException * 【依赖】org.springframework.spring-beans * @auth...

2019-12-03 13:52:26

springboot优雅的使用线程池

简单两部即可定义Executorimport lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Bean;import org.springframework.context.a...

2019-11-21 11:26:34

springboot简单的分表插件

业务上做了水平分表,公司基础架构没有提供分表中间件,开源的中间件用起来门槛高,有较大的学习成本。自己基于springboot+mybatis+jsqlparser实现了一个简单的分表插件。笼统来说就是拦截SQL,分析SQL,替换tableName,返回重写后的SQL给Mybatis项目里引入maven依赖: <dependency> <g...

2019-11-11 16:21:32

Redis事务

客户端状态redis客户端执行命令时分为非事务状态和事务状态。Redis通过MULTI,EXEC,WATCH等命令实现事务功能。事务的实现一个事务从开始到结束会经历三个阶段:事务开始命令入队事务执行事务开始MULTI命令的执行标志着事务的开始。MULTI命令可以会将客户端从非事务状态切换至事务状态。命令入队默认客户端处于非事务状态,该状态下客户端发送的命令会立即被服务器执行...

2019-10-30 20:31:31

SpringBoot+Mybatis+Druid多数据源配置

1.MAVEN配置<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId></dependency><dependency><groupId&...

2019-10-24 17:24:47

Java 1.8 Stream流

Stream 流是 Java 8 新提供给开发者的一组操作集合的 API,将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选、排序、聚合等。元素流在管道中经过中间操作(intermediate operation)的处理,最后由终端操作 (terminal operation) 得到前面处理的结果。stream分类顺序流:顺序流是按照顺序对集合中...

2019-09-07 17:17:28

ES 2.x查询

You Know, for Search精确查询 term:全匹配分词。切记term是包含而不是相等的意思精确查询多个 terms:后跟数组参数。可以看作是多个term组合查询。组合过滤查询 bool:bool可嵌套,构造复杂的filter过滤器{ "bool" : { "must" : [], ==and "should" : [], ...

2019-08-29 17:52:55

Java操作PDF

制作pdf使用iReport-5.6.0(需要jdk1.7环境)软件制作pdf模板,一般会生成jrxml格式文件生成pdf项目中引入依赖包,如下: <!-- jasperreports Start --> <!-- 该包的作用完成ireport中Preview按扭功能。通过该包可以通过java来ireport生成模板(.jrxml或.jasper)填充数据源...

2019-07-26 13:49:07

Redis主从复制

前言Redis服务器之间可以通过slaveof命令或slaveof选项进行数据复制.Redis的复制功能分为同步和命令传播两个操作.同步:用于将从服务器的数据库状态更新至主服务器当前所处的数据库状态.命令传播:主从服务器状态不一致时,让主从服务器的数据库重新回到一致状态.同步client发送sync命令给从服务器,要求从服务器复制主服务器数据时的执行过程如下图:从服务器向主服...

2019-06-20 19:27:06

Redis过期键

前言Redis是一个键值对(key-value pair)数据库服务器,服务器中的每个数据库都由一个redis.h/redisDb结构表示,redisDb结构中dict字典保存了数据库中的所有键值对,当我们给某个键值添加过期时间时(expire或pexpire),redisDb结构会开辟一个expires的字典用来保存dict字典中所有过期键的过期时间.expires过期字典中的键值是一个指针...

2019-06-12 18:39:03

阻塞队列

JAVA种常见的7种阻塞队列.1.ArrayBlockingQueueArrayBlockingQueue是一个用数组实现的有界阻塞队列.该队列按照FIFO的原则对元素进行排序.2.LinkedBlockingQueueLinkedBlockingQueue是一个用链表实现的有界阻塞队列.该队列的默认和最大长度长度为Integer.MAX_VALUE,按照FIFO的原则对元素进行排序.3...

2019-06-11 20:50:12

等待/通知机制

等待/通知机制,是指一个线程A调用对象O的wait()方法进入等待状态,另一个线程B调用对象O的notify()或notifyAll()方法,线程A收到通知后从对象O的wait()方法返回.等待/通知机制用来完成等待方和通知方中间的交互工作./** * @Auther: xieyuhui * @Date: 2019-06-05 08:55 * @Description: 等待通知demo...

2019-06-05 09:36:17

Java多线程的上下文切换

Java多线程会频繁的创建和切换上下文,这样的操作会影响多线程的执行速度.##上下文切换JAVA虚拟机的多线程是通过线程轮流切换并分配CPU时间片的方式实现的.CPU通过给每个线程分配CPU时间片来让线程执行代码,时间片是CPU分配给线程执行的时间,CPU通过不停的切换线程,并给线程时间片让它执行指令,这个时间片非常非常的短,一般是几十毫秒,让我们感觉多个线程在同时执行.CPU通过这种...

2019-05-27 21:46:37

Mac系统Java各种环境的安装和配置

整理了一份Java开发人员必备的各类环境的安装说明和教程.帮助自己快速且正确的准备好开发环境,工欲其善必先利其器.iTerm2安装 iTerm2 终端工具 : https://www.iterm2.com/安装配置 zsh:zsh 一般 Mac 已经自带了,无需额外安装。可以用 cat /etc/shells 查看 zsh 是否安装,如果列出了 /bin/zsh 则表明 zsh 已经安装了...

2019-04-03 12:34:29

数学知识复习

简单复习下计算机科学中数学的一些概念知识.方便学习数据结构和算法.(以下一些图片和文字来自百度百科)指数幂运算aⁿ中的a的次数.指数是幂运算aⁿ(a≠0)中的一个参数,a为底数,n为指数,指数位于底数的右上角,幂运算表示指数个底数相乘。当n是一个正整数,aⁿ表示n个a连乘。当n=0时,aⁿ=1。指数的定义对数如果 b=aⁿ ,即 a 的 n 次方等于 b ( a>0 且 a...

2019-03-27 19:29:58

Redis的数据结构

1.前言Redis(REmote DIctionary Server)数据库每个键值对(key-value)都是对象构成的,其中key总是一个字符串对象;value可以是字符串对象 string列表对象 list哈希对象 hash集合对象 set有序集合对象 zset五种中的某一种.本文会对以上五种类型的对象进行介绍,并剖析这些对象底层使用的数据结构.2.数据结构2.1简单...

2019-02-19 17:12:25

Java多态

Java是一门OOP(Object Oriented Programming)语言,OOP具备3个特征:继承,封装和多态.下面从JVM角度简单介绍一下多态的一些体现,重载和重写的实现原理.重载/** * @Auther: xieyuhui * @Date: 2019-02-02 10:25 * @Description: 重载 * sayHello()是一个重载方法,参数类型不同,...

2019-02-02 15:28:41

GC常见算法整理

整理下gc常见的回收策略

2019-01-16 21:11:43

UML Diagram汇总

总结了下UML(Unified Modeling Language)常见的Diagram

2019-01-03 11:04:56

Netty的核心组件

最近在学习netty,初步认识了一下netty的核心组件。Netty主要的构件:Channel回调Future事件和ChannelHandlerChannelChannel是Java NIO的一个基本构造。代表一个到实体的开放连接,如读操作和写操作。 可以把Channel看作是传入(入站)或者传出(出站)数据的载体。因此,它可以被打开或者被关闭,连接或者断开连接...

2018-08-23 17:04:40

查看更多

勋章 我的勋章
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获得
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。