
java
文章平均质量分 92
rolin-刘瑞
技术GEEK
展开
-
JVM类加载机制
目录总结类加载器自定义类加载器双亲委托模型加载过程详解1、加载2、链接3、初始化总结类从被加载到JVM中开始,到卸载为止,整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。其中类加载过程包括加载、验证、准备、解析和初始化五个阶段。类加载器类加载器的任务就是根据一个类的全限定名来读取此类的二进制字节流到JVM中,然后转换为一个与目标类对应的java.lang.Class对象实例。BootstrapClassLoader、ExtClas原创 2021-04-11 00:02:56 · 137 阅读 · 0 评论 -
表达式引擎Aviator
Aviator是一个轻量级、高性能的Java表达式执行引擎, 本文内容主要来自于官方文档更多干货 分布式实战(干货) spring cloud 实战(干货) mybatis 实战(干货) spring boot 实战(干货) React 入门实战(干货) 构建中小型互联网企业架构(干货) python 学习持续更新 ElasticSearch 笔记 kafka storm 实战 (干货) scala 学.转载 2020-06-14 22:06:16 · 1439 阅读 · 0 评论 -
Java单例模式——并非看起来那么简单
Java中单例(Singleton)模式是一种广泛使用的设计模式。单例模式的主要作用是保证在Java程序中,某个类只有一个实例存在。一些管理器和控制器常被设计成单例模式。 单例模式有很多好处,它能够避免实例对象的重复创建,不仅可以减少每次创建对象的时间开销,还可以节约内存空间;能够避免由于操作多个实例导致的逻辑错误。如果一个对象有可能贯穿整个应用程序,而且起到了全局统一管理控制的作用,...转载 2018-05-23 00:01:28 · 6057 阅读 · 0 评论 -
Java中的强引用,软引用,弱引用,虚引用
作者:winterSunshine链接:https://www.zhihu.com/question/37401125/answer/100981172来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1.概念解释强引用是使用最普遍的引用:Object o=new Object(); 特点:不会被GC将对象的引用显示地置为null:o=null; // 帮助垃...转载 2018-05-23 10:08:53 · 6147 阅读 · 0 评论 -
Apache Avro RPC 实例
Avro的模式主要由JSON对象来表示,Avro支持8种基本类型(Primitive Type)和6种复杂类型(Complex Type:records、enums、arrays、maps、unions 和fixed),基本类型可以由JSON字符串来表示。Avro支持两种序列化编码方式:二进制编码和JSON编码,使用二进制编码会高效序列化,并且序列化后得到的结果会比较小。 基本类型:null: ...转载 2018-06-03 21:43:42 · 6258 阅读 · 0 评论 -
一个人爬楼梯,可能走一步、两部、三步。编程,求他上一有n阶的梯级的走法-java实现
package youling.studio.test;import java.util.concurrent.atomic.AtomicInteger;public class Test07 { private AtomicInteger count = new AtomicInteger(0); public static void main(String[] args) { ...原创 2018-06-06 20:47:08 · 8879 阅读 · 0 评论 -
深入解析Java AtomicInteger 原子类型
在进行并发编程的时候我们需要确保程序在被多个线程并发访问时可以得到正确的结果,也就是实现线程安全。线程安全的定义如下:当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么这个类就是线程安全的。举个线程不安全的例子。假如我们想实现一个功能来统计网页访问量,你可能想到用count++ 来统计访问量...转载 2018-06-14 22:41:44 · 6247 阅读 · 0 评论 -
IntelliJ IDEA 2017.2 破解(注册)
下载IntelliJ IDEA 2017.2 下载地址:https://www.jetbrains.com/idea/安装,一律下一步,也可以按照自己的喜好,选择安装路径和位数。安装完成后,会提示以下内容选择License server,输入http://idea.iteblog.com/key.php,点ok待上一步完成后,即可看到已经完成了。 最后,点击快捷方式打开。如下图: 打开后,查看He...转载 2018-06-28 20:13:04 · 6483 阅读 · 1 评论 -
Java Mission Control-Java 性能分析工具
引言本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Java 任务控制器的时候提供帮助。第一篇:操作系统工具,第二篇:Java 内置监控工具。JMC 是在 JAVA 7u40 发布中加入的性能监控工具。使用过 JDK 6 中 JRockit JVM 的...转载 2018-08-28 18:50:09 · 8400 阅读 · 0 评论 -
Java并发之AQS详解
一、概述 谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)! 类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock/Semaphore/CountDownLatch...。 以下是本文的目录大...转载 2018-11-04 22:16:42 · 6021 阅读 · 0 评论 -
Java 浅析 Thread.join()
概要本文分为三部分对 Thread.join() 进行分析:1. join() 的示例和作用2. join() 源码分析3. 对网上其他分析 join() 的文章提出疑问 1. join() 的示例和作用1.1 示例1 // 父线程2 public class Parent extends Thread {3 public void run() {...转载 2018-11-09 00:03:00 · 8637 阅读 · 0 评论 -
Java并发编程中Semaphore的用法
Semaphore又称信号量,是操作系统中的一个概念,在Java并发编程中,信号量控制的是线程并发的数量。public Semaphore(int permits)1其中参数permits就是允许同时运行的线程数目;下面先看一个信号量实现单线程的例子,也就是permits=1:package concurrent.semaphore;import java.util.concurrent.Se...转载 2018-05-26 17:17:01 · 6129 阅读 · 0 评论 -
Java开发中的23种设计模式详解 - good推荐
总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两类:并转载 2018-01-06 17:58:48 · 6146 阅读 · 0 评论 -
记录一下八款开源 Android 游戏引擎
1、AngleAngle是一款专为Android平台设计的,敏捷且适合快速开发的2D游戏引擎,基于OpenGL ES技术开发。该引擎全部用Java代码编写,并且可以根据自己的需要替换里面的实现,缺陷在于文档不足,而且下载的代码中仅仅包含有少量的示例教程。最低运行环境要求不详。项目地址:http://code.google.com/p/angle/2、Rokonrokon是一转载 2013-06-25 14:56:46 · 6539 阅读 · 0 评论 -
myeclipse从数据反向生成bean java类
反向工程 逆向工程 开发项目涉及到的表太多,一个一个的写JAVA实体类很是费事。MyEclipse提供简便的方法:反向数据库 步骤大致如下: 第一步: window-->open Perspective-->MyEclipse Java Persistence 操作后会出现一个视图DB Brower:MyEclipse Derby 在空白区点击右键,新建一个原创 2014-06-08 17:00:53 · 7162 阅读 · 0 评论 -
JDK8 十大新特性
本教程将用带注释的简单代码来描述新特性,你将看不到大片吓人的文字。一、接口的默认方法Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法,示例如下:复制代码 代码如下:interface Formula { double calculate(int a); def转载 2014-06-12 22:33:41 · 8696 阅读 · 0 评论 -
java并发集合类
在Java类库中出现的第一个关联的集合类是 Hashtable。 Hashtable 提供了一种易于使用的、线程安全的、关联的map功能。然而,线程安全性付出代价是――Hashtable 的所有方法都是同步的。Hashtable 的后继者HashMap是作为JDK1.2中的集合框架的一部分出现的,它通过提供一个不同步的基类和一个同步的包装器Collections.synchronizedMap ,转载 2014-08-07 14:26:39 · 6653 阅读 · 0 评论 -
java并发集合ConcurrentHashMap详解加源码
集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程需要同时访问一个中间临界区(Queue),比如常会用缓存作为外部文件的副本(HashMap)。这篇文章主要分析jdk1.5的3种并发集合类型(concurrent,copyonright,queue)中的ConcurrentHashMap,让我们从原理上细致的了解它们,能够让我们在深度项目开发中获益非浅转载 2014-08-07 11:53:58 · 6691 阅读 · 0 评论 -
java把html标签字符转普通字符(反转换成html标签)
下面是java把html标签字符转换,我用了spring 包中的 org.springframework.web.util.HtmlUtils了解了源代码并且进步了使用,发现写得真不错...同时也可以,看看别人的工具是怎么写的,增长知识了TestHtmlUtilspackage test.org.springframework.web.util;import org.junit转载 2014-12-21 18:09:20 · 10489 阅读 · 0 评论 -
java 获取客户端的真实ip
直接上代码了: String ip = null; if (request.getHeader("X-Real-IP") ==null) { ip = request.getRemoteHost(); } else { ip = request.getHea原创 2015-05-21 12:07:17 · 6955 阅读 · 0 评论 -
synchronized 与 Lock 区别联系
最近在做一个监控系统,该系统主要包括对数据实时分析和存储两个部分,由于并发量比较高,所以不可避免的使用到了一些并发的知识。为了实现这些要求,后台使用一个队列作为缓存,对于请求只管往缓存里写数据。同时启动一个线程监听该队列,检测到数据,立即请求调度线程,对数据进行处理。 具体的使用方案就是使用同步保证数据的正常,使用线程池提高效率。 同步的实现当然是采用锁了,java中使用锁的两个基转载 2017-08-26 14:15:35 · 6110 阅读 · 0 评论 -
jetty内嵌web页面服务入门
前面说过jetty最广泛的应用是可以方便的嵌入到应用程序中,而不是作为应用服务器,下面就用最简单的demo来演示一个最简单的应用 1、下载并导入依赖 首先应该建立一个普通的java项目,然后把依赖包导进去 关于依赖包的获取,第一种方式是将前面下载的jetty服务器中lib目录中的jar包导入即可 另外是在jetty下载页面上,上面是jetty服务器的下载链接原创 2017-08-24 14:57:35 · 9423 阅读 · 0 评论 -
并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。注:什么叫线程安全?这个首先要明确。线程安全就是说多线程访问同转载 2017-09-15 15:31:41 · 5988 阅读 · 0 评论 -
作为一个java 程序员你需要了解的几款服务器软件
Tomcat是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。Tomcat由Apache-Jakarta子项目支持并由来自开放性源代码Java社区的志愿者进行维护。Tomcat Server是根据servlet和JSP规范进行执行的,因此我们就可以说Tomcat Server也实行了Apache-Jakarta规范且比绝大多数商业应用软件服务器要好。做原创 2013-06-14 13:23:16 · 9416 阅读 · 0 评论