- 博客(13)
- 收藏
- 关注
MySQL 时间日期类型和相关函数
MySQL 时间日期类型和相关函数 一、时间日期类型MySQL中的日期和时间类型类型字节最小值最大值零值DATETIME81000-01-01 00:00:009999-12-31 23:59:590000-00-00 00:00:00DATE41000-01-019999-12-310000-00-00...
2016-10-29 12:39:09 290
JVM 方法的调用
JVM 方法的调用 方法的调用不等于方法执行,方法调用阶段的目标是确定被调用的是哪一个方法,所有方法调用中的目标方法在Class文件里面都是一个常量池中的符号引用,在类加载阶段,会将其中一部分符号引用转化为直接引用,这种解析能成立的条件是:方法在程序运行前就有一个可确定的调用版本,并且这个方法的调用版本在运行期是不可改变的。这类方法的调用称为解析。调用方法的指令:invokesta...
2016-10-27 22:54:30 145
从JVM指令层面看try-catch-finally返回值问题
从JVM指令层面看try-catch-finally返回值问题 貌似很多人对下面的方法的返回值都比较迷糊:package cc.lixiaohui.demo; public class ReturnValueTest { public int test() { int a; try { ...
2016-10-22 13:12:33 128
Maven异常:Unsupported major.minor version 51.0
Maven异常: Unsupported major.minor version 51.0 遇到如下异常: 这个问题是因为maven版本与jdk版本要求不一致导致的。我这里maven是3.3,jdk是1.6,而3.3要求jdk1.7以上,版本对应要求如下:51.0对应的是1.7,调jdk版本不合理,因此换maven版本为3.2.x即可,在eclipse中: 即可 ...
2016-10-20 11:08:44 1706
MySQL 主从复制
MySQL 主从复制环境:win10(就配置主从来说linux和windows差别不大),MySQL-5.7.16 1.首先要两个MySQL实例,我这里分别是3307,3308,其中3307作为master,3308作为slave 2.修改master实例的配置my.ini,增加两行:[mysqld]log_bin = mysql-binserver_id = ...
2016-10-18 14:44:21 89
JVM 垃圾收集器
JVM 垃圾收集器 基本概念 Young Generation:新生代,hotspot vm中又细分为Eden和两个Survivor(from survivor和to survivor)Tenured Generation:老年代Minor GC:只GCyoung generation。Full GC、Major GC:一个意思,指GC整个heap,包括young...
2016-10-15 10:05:50 133
Java并发编程之线程池任务监控
Java并发编程之线程池任务监控 当我们提交runnable或者callable<?>到ThreadPoolExecutor时,我们是无法知道这些任务是在什么时候才真正的执行的,为了实现这个需求,我们需要扩展ThreadPoolExecutor,重写beforeExecute和afterExecute,在这两个方法里分别做一些任务执行前和任务执行后的相关监控逻辑,还有个te...
2016-10-12 14:27:44 362
JVM 栈帧
JVM 栈帧 一、栈帧 栈帧(Frame)是用来存储数据和部分过程结果的数据结构,同时也被用来处理动态链接(Dynamic Linking)、方法返回值和异常分派(Dispatch Exception)。 栈帧随着方法调用而创建,随着方法结束而销毁——无论方法是正常完成还是异常完成(抛出了在方法内未被捕获的异常)都算作方法结束。栈帧的存储空间分配在Java虚拟机栈之中,每一个...
2016-10-11 15:02:53 389
JVM GC算法
JVM GC算法基础概念 GC Roots: The objects that a program can access directly are those objects which are referenced by local variables on the processor stack as well as by any static variables that...
2016-10-10 15:27:25 120
Java并发编程之volatile的理解
Java并发编程之volatile关键字的理解 Java中每个线程都有自己的工作内存,类比于处理器的缓存,线程的工作内存中保存了被该线程使用到的变量的主内存的拷贝。线程读写变量都是直接在自己的工作内存中进行的,而何时刷新数据(指将修改的结果更新到主存或者把主存的变量读取覆盖掉工作内存中的值)是不确定的。 volatile关键字是修饰字段的关键字,貌似...
2016-10-08 16:47:20 90
简单组合java.util.Map<K,V>实现Map<K,P,V>
简单组合java.util.Map<K,V>实现Map<K,P,V> java.util.Map<K,V>为单键对单值,有时需要双键对单值,因此基于Map<K,V>可以简单实现一个Map<K,P,V>。 接口定义:package cc.lixiaohui.demo.javassist.proxy.util;i...
2016-10-06 12:06:46 195
Netty+WebSocket实现简单网页群聊
Netty+WebSocket实现简单网页群聊这两天看了下WebSocket的RFC文档,对WebSocket协议有了基本的认识,顺便写了篇博客做点笔记 WebSocket 协议。 例子说明:每个网页一个websocket连接,点发送消息后,消息会发送给除了自己之外的其它在线的websocket客户端,简单实现群聊 服务端采用Netty实现,Netty版本是4.1.2....
2016-10-02 12:59:13 355
Javassist实现动态代理
Javassist实现动态代理 动态代理模式简述:之所以会出现代理这种模式就是因为我们常有这么一种需求:在被代理类的方法调用前后执行一些其它的逻辑,这些逻辑不适合由被代理类来实现,那这些逻辑谁来实现?当然是代理类。那代理类是谁?从哪里来?代理类是我们利用字节码生成工具动态创建的,然后利用反射实例化而得到代理对象。 tips:这篇文章讲的不是动态代理模式的思想而是怎么实现(简单实现...
2016-10-02 12:56:52 381
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人