- 博客(14)
- 收藏
- 关注
转载 如何开始接手一个项目
项目好与不好,它就在那里;架构优雅或者丑陋,它就在那里;注释有或者没有,它还在那里;文档乱或者不乱,它始终都在那里。不论它是什么样子的,线上就那样跑着。一般来讲,项目分为两种:1、为业务服务的项目,比如公司内部项目、电商项目、各种 app 项目;2、为技术服务的项目,比如开源中间件项目(dubbo、spring cloud、各种数据库中间件、各种缓存方案等);首先说第二种项目,它专注于提供某一个或...
2018-05-31 11:27:41 2119
转载 从 volatile 说起,可见性和有序性是什么
上一篇文章说了 CAS 原理,其中说到了 Atomic* 类,他们实现原子操作的机制就依靠了 volatile 的内存可见性特性。如果还不了解 CAS 和 Atomic*,建议看一下这篇文章。并发的三个特性首先说我们如果要使用 volatile 了,那肯定是在多线程并发的环境下。我们常说的并发场景下有三个重要特性:原子性、可见性、有序性。只有在满足了这三个特性,才能保证并发程序正确执行,否则就会出...
2018-05-31 11:21:11 6171 1
转载 Spring AOP 和 动态代理技术
AOP 是什么东西首先来说 AOP 并不是 Spring 框架的核心技术之一,AOP 全称 Aspect Orient Programming,即面向切面的编程。其要解决的问题就是在不改变源代码的情况下,实现对逻辑功能的修改。常用的场景包括记录日志、异常处理、性能监控、安全控制(例如拦截器)等,总结起来就是,凡是想对当前功能做变更,但是又不想修改源代码的情况下,都可以考虑是否可以用 AOP 实现。...
2018-05-31 11:19:57 196
转载 三种线程安全的单例模式
就算你没有用到过其他的设计模式,但是单例模式你肯定接触过,比如,Spring 中 bean 默认就是单例模式的,所有用到这个 bean 的实例其实都是同一个。单例模式的使用场景什么是单例模式呢,单例模式(Singleton)又叫单态模式,它出现目的是为了保证一个类在系统中只有一个实例,并提供一个访问它的全局访问点。从这点可以看出,单例模式的出现是为了可以保证系统中一个类只有一个实例而且该实例又易于...
2018-05-31 10:37:13 4261
转载 Java动态代理机制详解(JDK 和CGLIB,Javassist,ASM) (清晰,浅显)
class文件简介及加载 Java编译器编译好Java文件之后,产生.class 文件在磁盘中。这种class文件是二进制文件,内容是只有JVM虚拟机能够识别的机器码。JVM虚拟机读取字节码文件,取出二进制数据,加载到内存中,解析.class 文件内的信息,生成对应的 Class对象: class字节码文件是根据JVM虚拟机规范中规定的字节码组织规则生成的、具体class文件是怎...
2018-05-30 17:48:55 335
转载 Java 利用枚举实现单例模式
引言单例模式比较常见的实现方法有懒汉模式,DCL模式公有静态成员等,从Java 1.5版本起,单元素枚举实现单例模式成为最佳的方法。Java枚举基本用法枚举的用法比较多,本文主要旨在介绍利用枚举实现单例模式的原理,所以这里也主要介绍一些相关的基础内容。 首先,枚举类似类,一个枚举可以拥有成员变量,成员方法,构造方法。先来看枚举最基本的用法:enum Type{ A,B,C,D;}123创...
2018-05-27 20:50:13 246
转载 浅谈使用单元素的枚举类型实现单例模式
通常情况下,我们写单例模式的时候无非就是三个步骤:构造器私有化,声明私有静态变量,提供静态获取实例的方法。简单说就是以下这种方式:class SingletonA { private static SingletonA instence = new SingletonA(); private SingletonA() { } public static Single...
2018-05-27 11:58:31 150
转载 fastjson使用(三) -- 序列化
https://blog.csdn.net/u011113654/article/details/50460787使用fastjson进行序列化,就是把JavaBean转换为JSON格式的数据。fastjson的序列化高度可控性,可以自己定制序列化。fastjson的定制序列化有很多中实现方式,主要有如下的方式:1.通过@JSONField定制序列化2.通过@JSONType定制序列化3.通过Se...
2018-05-25 11:40:33 601
转载 fastjson的@JSONField注解的一点问题
@JSONField看源码它可以作用于字段和方法上。引用网上说的, 一、作用Field @JSONField作用在Field时,其name不仅定义了输入key的名称,同时也定义了输出的名称。 但是我在使用中,发现并不如上所说。例如@JSONField(name="project_id")private Long ProjectID发现bean 转json的时候并是"project_...
2018-05-25 10:14:01 797
转载 fastJson注解@JSONField使用的一个实例
1.实体类package jsonArrayjsonObject.cn;import java.io.Serializable;import java.util.Date;import com.alibaba.fastjson.annotation.JSONField;import com.alibaba.fastjson.serializer.SerializerFeature;p...
2018-05-25 10:01:20 1160
转载 Dubbo和Spring结合配置文件内容解析为bean的过程
Dubbo 现在已经被很多公司广泛的使用,Dubbo的使用和特性本篇不做讲解,本篇讲解一下Dubbo和Spring结合配置文件内容解析为bean的过程!Dubbo是结合Spring来进行使用的,其中bean依赖Spring的IOC容器进行管理。Spring默认的Bean加载机制肯定是不能去加载Dubbo提供的Bean,那么Dubbo中的Bean是如何加载到Spring 容器的呢?下面进行介绍:一、...
2018-05-16 09:46:30 519
转载 Java程序初始化的顺序
java程序初始化工作可以在许多不同的代码块中来完成(例如:静态代码块、构造函数等),他们执行的顺序如下:父类静态变量父类静态代码块子类静态变量子类静态代码块父类非静态变量父类非静态代码块父类构造器子类非静态变量子类非静态代码块子类构造器public class Base { static{ System.out.println("Base static block");...
2018-05-14 08:43:33 167
转载 IDEA类和方法注释模板设置(非常详细)
IDEA自带的注释模板不是太好用,我本人到网上搜集了很多资料系统的整理了一下制作了一份比较完整的模板来分享给大家,我不是专业玩博客的,写这篇文章只是为了让大家省事。这里设置的注释模板采用Eclipse的格式,下面先贴出Eclipse的注释模板,我们就按照这种格式来设置:类注释模板: ...
2018-05-10 10:43:00 2448
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人