Java
mOralinTegrity
我从来只失去过两样东西
展开
-
SpringMVC 简单使用
SpringMVC 用于接收前端请求并回送响应,DispatcherServlet负责根据请求的不同交与对应的Controller进行处理,Controller处理后回送View信息,ViewResolver 解析出相应的View视图然后DispatcherServlet响应给前端。项目结构图: lib: 前端展示信息index.jsp:<%@ page language="java" cont原创 2017-06-02 14:47:58 · 240 阅读 · 0 评论 -
concurrent-01(线程安全单例模式)
线程安全单例的三种实现方式1、饿汉式(未实现懒加载)public class singleton{ private static Singleton singleton = new Singleton(); private Singleton(){} public static Singleton getInstance(){ return singleton;原创 2017-08-30 10:27:09 · 247 阅读 · 0 评论 -
concurrent-02(实现生产者消费者模型)
生产者消费者问题是多线程中较经典的问题,使用synchronized方式实现如下:public class SyncImpl <T>{ private LinkedList<T> lists = new LinkedList<>(); //当前容量 private int cnt = 0; //设定最大容量为10 private static final int原创 2017-08-30 10:39:33 · 253 阅读 · 0 评论 -
concurrent-03(死锁)
简单程序模拟死锁public class DeadLock implements Runnable{ public boolean flag; static Object lockOne = new Object(); static Object lockTwo = new Object(); @Override public void run() {原创 2017-08-30 10:58:43 · 233 阅读 · 0 评论 -
concurrent-04(volatile关键字)
volatile保证内存可见性,禁止指令重排序(cpu的优化,保证结果一致的情况下对指令进行选择性执行),但同时,volatile不可保证操作的原子性public class Volatile { //volatile 内存可见性,禁止重排序 private /*volatile*/ boolean flag = true; private void run(){原创 2017-08-30 11:08:50 · 223 阅读 · 0 评论