最近在整理数据结构方面的知识, 系统化看了下Java中常用数据结构, 突发奇想用动画来绘制数据流转过程. 主要基于jdk8, 可能会有些特性与jdk7之前不相同, 例如LinkedList LinkedHashMap中的双向列表不再是...
阅读(21) 评论(0)
最近业务需要出一份Java Web应用源码安全审查报告, 对比了市面上数种工具及其分析结果, 基于结果总结了一份规则库. 本文目录结构如下:  检测工具 FindSecurityBugs 基于class文件...
阅读(24) 评论(0)
本文主要讲并行优化的几种方式, 其结构如下:   锁优化 减少锁的持有时间 例如避免给整个方法加锁 1 public synchronized void syncMethod(){ 2...
阅读(21) 评论(0)
本文主要讲解几种常见并行模式, 具体目录结构如下图.   单例 单例是最常见的一种设计模式, 一般用于全局对象管理, 比如xml配置读写之类的. 一般分为懒汉式, 饿汉式. 懒汉式: 方法上加synchronized...
阅读(39) 评论(0)
线程池优势 在业务场景中, 如果一个对象创建销毁开销比较大, 那么此时建议池化对象进行管理. 例如线程, jdbc连接等等, 在高并发场景中, 如果可以复用之前销毁的对象, 那么系统效率将大大提升. 另外一个好处是可以设定池化对象的上限...
阅读(33) 评论(0)
本文主要介绍jdk中常用的同步控制工具以及并发容器. 同步控制工具类 ReentrantLock可重入锁 Condition Semaphore信号量 ReadWriteLock读写分离锁 CountDownLatch倒数计时器 C...
阅读(34) 评论(0)
目录 CAS原理 AtomicInteger Unsafe AtomicReference AtomicStampedReference AtomicIntegerArray AtomicIntegerFieldUpdater 无锁的...
阅读(32) 评论(0)
 目录 基本原则 场景一: 批评时 场景二: 鼓励时 场景三: 委托任务时 场景四: 表扬时 场景五: 汇报和交流 场景六: 辅导与评价   基本原则 以积极的心态引导别人, 发掘组内成员闪光点. 主动积极时...
阅读(41) 评论(0)
本文暂不讲JMM(Java Memory Model)中的主存, 工作内存以及数据如何在其中流转等等, 这些本身还牵扯到硬件内存架构, 直接上手容易绕晕, 先从以下几个点探索JMM 原子性 有序性 可见性 指令重排 CPU...
阅读(37) 评论(0)
目录 线程状态切换 终止线程(stop) 中断线程(interrupt) 挂起(suspend) 和 继续执行(resume) 等待线程结束(join) 和 谦让(yield) sleep 线程优先级 守护线程 线程的同步操作(syn...
阅读(42) 评论(0)
目录 异常处理 类型转换器 数据验证 文件上传与下载 拦截器  异常处理 Spring MVC中, 系统的DAO, Service, Controller层出现异常, 均通过throw Exception向上抛出, 最后...
阅读(35) 评论(0)
MVC注解式开发即处理器基于注解的类开发, 对于每一个定义的处理器, 无需在xml中注册. 只需在代码中通过对类与方法的注解, 即可完成注册. 定义处理器 @Controller: 当前类为处理器 @RequestMapping: 当前...
阅读(40) 评论(0)
  SpringMVC是隶属于Spring Web中的一部分, 属于表现层的框架. 其使用了MVC架构模式的思想, 将Web层进行职责解耦, 使用请求-响应模型简化Web开发 SpringMVC通过中央调度器Dispatch...
阅读(47) 评论(0)