摘要:
static final class Node { //共享模式,资源可以同时去拿 static final Node SHARED = new Node(); //独占模式,只能有一个线程去拿 static final Node EXCLUSIVE = null; //表示当前线程被中断了,在队列 阅读全文
摘要:
事务同步管理器 1、TransactionSynchronizationManager 操作多个方法 Spring 是如何来进行事务处理的呢?Spring 对于事务的管理都是基于 TransactionSynchronizationManager,下面我们就来简单的分析一下这个类。 Transact 阅读全文
摘要:
执行比较耗时的操作时,尤其是那些依赖一个或多个远程服务的操作,使用异步任务可以改善程序的性能,加快程序的响应速度。forkjoin思想,任务拆分,异步或同步操作,最后join合并结果集; CompletableFuture中4个异步执行任务静态方法 public static <U> Complet 阅读全文
摘要:
新的语言特性常常让现存的编程模式或设计黯然失色。比如, Java 5中引入了for-each循环,由于它的稳健性和简洁性,已经替代了很多显式使用迭代器的情形。Java 7中推出的菱形操作符(<>)让大家在创建实例时无需显式使用泛型,一定程度上推动了Java程序员们采用类型接口(type interf 阅读全文
摘要:
昨晚喝酒摇骰子,喝了不少酒。为了少喝点写个简单代码计算下摇色子概率。 规则: 1、一点可以当成1点或者其他任意点数。 2、每人蛊中有5个骰子。 3、从低往高叫全场最少有多少个数字num点数。 double p = 0; while (num <= dice){ p += Math.pow(1 / 6 阅读全文
摘要:
public class EmailEvent extends ApplicationEvent { private String address; private String text; public String getAddress() { return address; } public 阅读全文
摘要:
常见的运算符有与(&)、或(|)、异或(^)、取反(~)、左移(<<)、右移(>>是带符号右移 >>>无符号右移动)。下面来细看看每一种位运算的规则。 按位取反~ 规则:二进制的0变成1,1变成0。 |= public static strictfp void main(String[] args) 阅读全文
摘要:
最重要的三个注解,@Configuration,@EnableAutoConfiguration,@ComponentScan #@EnableAutoConfiguration注解 selectImports#getAutoConfigurationEntry#getCandidateConfig 阅读全文
摘要:
Java中该注解的说明:@PostConstruct该注解被用来修饰一个非静态的void()方法。被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,init()方法之前执行。 通常我们会是在Spri 阅读全文
摘要:
LockSupport是一个线程阻塞工具类,所有的方法都是静态方法,可以让线程在任意位置阻塞,当然阻塞之后肯定得有唤醒的方法。 public static void park(Object blocker); // 暂停当前线程 public static void parkNanos(Object 阅读全文