
java
文章平均质量分 66
gaojin630
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java GC、新生代、老年代
转载自http://www.shaoqun.com/a/99944.html 堆内存 Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:新生代 (...转载 2018-10-02 09:09:57 · 250 阅读 · 0 评论 -
springboot + mybatis plus强大的条件构造器queryWrapper、updateWrapper
首先在这里写下官方文档的链接位置,官方文档说的很详细。如果还想知道在项目中的具体用法请往下看。一、条件构造器关系介绍介绍 :上图绿色框为抽象类abstract蓝色框为正常class类,可new对象黄色箭头指向为父子类关系,箭头指向为父类wapper介绍 :Wrapper : 条件构造抽象类,最顶端父类,抽象类中提供4个方法西面贴源码展示AbstractWrapper : ...转载 2019-03-22 21:16:42 · 6750 阅读 · 1 评论 -
Spring核心接口之InitializingBean
一、InitializingBean接口说明InitializingBean接口为bean提供了属性初始化后的处理方法,它只包括afterPropertiesSet方法,凡是继承该接口的类,在bean的属性初始化后都会执行该方法。package org.springframework.beans.factory;/** * Interface to be implemented by...原创 2019-03-01 17:53:38 · 194 阅读 · 0 评论 -
Executors 提供的各种类型的线程池
Executors 提供了各种类型的线程池,主要有以下工厂方法: public static ExecutorService newFixedThreadPool(int nThreads); 该方法返回一个固定线程数量的线程池。当有新任务提交时,如果线程池中有空闲线程,则立即执行;若没有,则新任务会被暂存在一个任务队列中,带有线程空闲时,变处理在任务队列中的任务。 publ...原创 2018-10-15 14:54:57 · 179 阅读 · 0 评论 -
java实现常用排序算法
数组排序问题是java工程师面试过程中很常见的问题之一,也是java程序员必备的知识。本文总结了用java实现常用的排序算法。注:数组从小到大排序1. 冒泡排序特点:效率低,实现简单,容易理解思想:每一次遍历,将待排序中最大的元素移到最后,剩下的为新的待排序序列,重复上述步骤直至排序完所有元素。代码实现:public void bubbleSort(int array[]...原创 2018-10-08 18:28:23 · 150 阅读 · 0 评论 -
核心线程池的内部实现
核心的几个线程池,newFixedThreadPool(), newSingleThreadExecutor()和newCachedThreadPool()方法,内部实现都是使用了ThreadPoolExecutor()实现。 public static ExecutorService newFixedThreadPool(int nThreads, ThreadFactory threadF...原创 2018-10-15 14:27:06 · 232 阅读 · 0 评论 -
有助于提高“锁”的几点建议
1.减少锁持有时间2.减小锁粒度 缩小锁定对象的范围,从而减少锁冲突的可能 (分割数据结构) 3. 读写分离锁替换独占锁(分割数据功能,读多写少的场合)4. 锁分离(如LinkedBlockingQueue的take()和put()方法,分别用各自的锁进行同步)5. 锁粗化一种例子,在每次循环时,都请求锁,释放锁, 更合理的做法是,在循环外请求一次锁,...原创 2018-10-15 14:08:47 · 212 阅读 · 0 评论 -
产生死锁的原因
产生死锁的原因主要是:(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。产生死锁的四个必要条件:(1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持条件:一个进...原创 2018-10-15 14:03:24 · 2855 阅读 · 0 评论 -
谈谈ConcurrentHashMap1.7和1.8的不同实现
ConcurrentHashMap在多线程环境下,使用HashMap进行put操作时存在丢失数据的情况,为了避免这种bug的隐患,强烈建议使用ConcurrentHashMap代替HashMap,为了对ConcurrentHashMap有更深入的了解,本文将对ConcurrentHashMap1.7和1.8的不同实现进行分析。1.7实现数据结构jdk1.7中采用Segment + ...原创 2018-10-07 17:27:25 · 269 阅读 · 0 评论 -
微服务架构 vs. SOA架构
微服务架构 vs. SOA架构版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。一、面向服务的架构SOA面向服务的架构是一种软件体系结构,应用程序的不同组件通过网络上的通信协议向其他组件提供服务。通信可以是简单的数据传递,也可以是两个或多个服务彼此协调连接。这些独特的服务执行一些小功能,例如验证付款、创建用户帐户或提供社交登录等。面向服务的架构不太关于如何对应用程序...转载 2018-10-06 14:48:35 · 245 阅读 · 0 评论 -
单链表中的倒数第k个元素
1. 两次遍历法为了找出倒数第k个元素,最容易想到的办法是首先遍历一遍单链表,求出整个单链表的长度n,然后将倒数第k个,转换为正数第n-k个,接下来遍历一次就可以得到结果。但是该方法存在一个问题,即需要对链表进行两次遍历,第一次遍历用于求解单链表的长度,第二次遍历用于查找正数第n-k个元素。2. 列举法如果沿从头至尾的方向从链表中的某个元素开始,遍历k个元素刚好到达链表尾,那么...原创 2018-10-04 16:07:36 · 496 阅读 · 0 评论 -
TCP、UDP、HTTP的区别
一.TCP/IP代表传输控制协议/网际协议,指的是一系列协组。 可分为四个层次:数据链路层、网络层、传输层和应用层。在网络层:有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。在传输层:中有TCP协议与UDP协议。在应用层:有FTP、HTTP、TELNET、SMTP、DNS等协议。 TCP和UDP使用IP协议从一个网络传送数据包到另一个网络。把IP想像成一种...原创 2018-10-03 20:07:11 · 630 阅读 · 0 评论 -
Mysql的四种引擎介绍
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。MySql的核心就是存储引擎。存储引擎查看MySQL给开发者提供了查询存储引擎的功能,我这里使用的是MySQL5.1,可以使...转载 2018-10-03 01:09:29 · 409 阅读 · 0 评论 -
二叉树及其三种遍历方式
1.二叉树的常用性质<1>.在二叉树的第i层上最多有2 i-1 个节点 。(i>=1)<2>.二叉树中如果深度为k(有k层),那么最多有2k-1个节点。(k>=1)<3>.若二叉树按照从上到下从左到右依次编号,则若某节点编号为k,则其左右子树根节点编号分别为2k和2k+1;<4>.二叉树分类:满二叉树,完全二叉树满二叉...原创 2018-10-02 20:45:45 · 251 阅读 · 0 评论 -
ConcurrentHashMap实现原理及源码分析
转载自https://www.cnblogs.com/chengxiao/p/6842045.htmlConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),ConcurrentHashMap在并发编程的场景中使用频率非常之高,本文就来分析下Concurre...转载 2018-10-02 14:55:09 · 131 阅读 · 0 评论 -
HashMap实现原理及源码分析
转载自http://www.cnblogs.com/chengxiao/p/6059914.html#t1 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashMa...转载 2018-10-02 10:25:14 · 163 阅读 · 0 评论 -
nginx有时无法转发自定义header头内容的问题
使用nginx做负载均衡或http代理时,碰到http header不转发的问题。配置里只有转发设置原始ip和host的proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-Server $host;但我自定义的header却...原创 2019-04-04 14:13:03 · 2230 阅读 · 0 评论