java小兵

JAVA

nginx.conf

=========================================================================== nginx.conf =============================================================...

2018-06-22 23:18:34

阅读数 83

评论数 0

Spring中的@Scope注解

Spring中的@Scope注解: 源码: @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface Scope { ...

2018-03-29 21:16:17

阅读数 379

评论数 1

GC日志

概念: Serial收集器中新生代的名称:DefNew (Default New Generation) ParNew收集器中新生代的名称:ParNew (Parallel New Generation) Parallel Scavenge收集器中新生代的名称:PSYoungGen GC...

2018-03-29 21:15:43

阅读数 128

评论数 1

复合索引&最左原则 -- 实战

建表语句: CREATE TABLE `t_user` ( `id` BIGINT(20) NOT NULL AUTO_INCREMENT, `bu_id` INT(20) NOT NULL, `name` VARCHAR(255) NOT NULL, `age` INT(11...

2018-03-29 21:03:09

阅读数 1808

评论数 1

Linux常用命令

常用命令 tail tail -f 文件名 tail -f 文件名1 文件名2 tail -num 文件名 # 查看文件的最后num行 grep grep 查找的字符串 grep 查找的字符串 -A n # 查找指定的字符串,并且将后面的n行也查出来。 grep 查找的...

2018-03-20 21:59:28

阅读数 221

评论数 0

git常用命令

概念: 工作区(Working directory):将一个文件夹通过git init设置成一个git可以管理的文件夹(即:创建本地仓库)时,这个文件夹里的内容就是工作区。 版本库(repository):在工作区中,有一个.git文件夹,这个.git文件夹就是版本库。 暂存区(s...

2018-02-17 08:21:06

阅读数 309

评论数 0

NIO的非阻塞通信

使用NIO完成网络通信的三个要点: 1)通道(Channel):负责连接 java.nio.channels.Channel 接口: |--SelectableChannel |--SocketChannel |--ServerSocketChan...

2017-11-12 23:40:14

阅读数 188

评论数 0

java中的队列同步器AQS -- AbstractQueuedSynchronizer

1)原理: 1)使用一个int成员变量表示同步状态(private volatile int state;),通过同步队列(一个FIFO双向队列)来完成同步状态的管理(即:线程的排队)。 2)当前线程获取同步状态失败时,同步器会将当前线程以及等待状态等信息构造成为一个节点(Node)并将其加...

2017-10-23 21:30:55

阅读数 304

评论数 0

java中的线程池

Java中的线程池 【1】使用线程池的好处: 1)降低资源消耗,通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 2)提高响应速度,当任务到达时,任务可以不需要等到线程创建就能立即执行。 3)提高线程的可管理性。线程池可以进行统一分配、调优和监控线程。 【2】构造方法: p...

2017-10-16 22:33:37

阅读数 192

评论数 0

采用延迟初始化来降低初始化类和创建对象的开销

在Java多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销。 CASE: public class Singleton{ private static Singleton instance = null; private Singleton(){ ...

2017-10-09 22:26:42

阅读数 553

评论数 0

java中锁的优化 -- JVM对synchronized的优化

java中锁的优化 -- JVM对synchronized的优化 1)锁消除 概念:JVM在JIT编译(即时编译)时,通过对运行上下文的扫描,去除掉那些不可能发生共享资源竞争的锁,从而节省了线程请求这些锁的时间。 举例: StringBuffer的append方法是一个同步方法,...

2017-10-09 22:12:12

阅读数 1498

评论数 0

java对象头

HotSpot虚拟机中,对象在内存中的布局分为三块区域:对象头、实例数据和对齐填充。 1)对象头:包括标记字段和类型指针两部分内容(注:如果是数组对象,则包含三部分内容): 1)Mark Word(标记字段):用于存储运行时对象自身的数据。 1>占用内存大小与虚拟机位长一致...

2017-10-09 21:32:33

阅读数 692

评论数 1

java中的注解

1)自定义注解: 1)定义注解: 语法:public @interface 注解名{} 举例: public @interface MyAnnotation{ String name() default "jack"; } 2)定义注解的属...

2017-08-28 22:12:17

阅读数 190

评论数 0

jdk工具--jstat

jstat:虚拟机统计信息监视工具(JVM Statistics Monitoring Tool) 说明:监视虚拟机的各种运行状态:类装载、内存、垃圾收集等运行数据。 格式:jstat [option] PID [interval] [count] 参数: option: ...

2017-08-24 23:52:39

阅读数 264

评论数 0

利用Spring的AbstractRoutingDataSource来解决多数据源的问题,eg:数据库的读写分离

利用Spring的AbstractRoutingDataSource来解决多数据源的问题,eg:数据库的读写分离 步骤: 1)在配置文件中定义多个datasource。 2)自定义一个DBContext类,并在其中封装一个静态的ThreadLocal变量(用来存储当前线程应该访问哪个数据库)...

2017-06-27 23:48:32

阅读数 468

评论数 0

Object类中的wait()方法和notify()方法

【Object类中的wait()方法和notify()方法】 wait(): public final void wait(long timeout) throws InterruptedException 参数:等待的时间,可选,不填则默认为0。 说明: 1>...

2017-06-04 10:54:31

阅读数 1179

评论数 0

Spring中,给静态变量初始化的问题

方案一:使用@PostConstruct注解 首先,声明一个静态变量staticTarget,静态变量staticTarget的类型要和非静态变量target的类型一致。 然后,在带有@PostConstruct注解的方法中,将target的值赋给staticTarget。 最后,在静态方...

2017-04-28 11:42:59

阅读数 4171

评论数 0

java中使用restful web service来传输文件

【1】上传大文件: 前端页面: 1)同步上传: 2)异步上传: 异步上传文件 ...

2016-11-09 19:18:59

阅读数 9200

评论数 3

JavaScript中的闭包

JavaScript中的闭包: 1)概念:有权访问另一个函数作用域中的变量的函数。 2)创建方式:在一个函数内部创建另一个函数,最常见的是在函数中返回一个匿名函数。 3)特点: 使用闭包有一个优点,也是它的缺点:就是可以把局部变量驻留在内存中,可以避免使用全局变量。 (全...

2016-08-22 00:05:02

阅读数 343

评论数 0

垃圾收集器回收对象的依据和时机

Java中的引用: 一、Java中将引用分为强引用、软引用、弱引用、虚引用4种,强度依次减弱。 二、判断对象是否存活的算法: 1)引用计数算法; 2)可达性分析算法(根搜索算法); 三、一个对象被回收要经过两次标记: 第一次标记:如果一个对象在进行可达性分析后没有发现与根对象间存在引用链,那么...

2015-11-07 15:00:11

阅读数 623

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭