netty(3)—源码NioEventLoopGroup 一、概念 NioEventLoopGroup对象可以理解为一个线程池,内部维护了一组线程,每个线程负责处理多个Channel上的事件,而一个Channel只对应于一个线程,这样可以回避多线程下的数据同步问题。 我们先回顾下 上篇博客的服务器代 ...
分类:
Web程序 时间:
2018-12-06 22:14:09
阅读次数:
241
参考:http://www.mybatis.org/mybatis-3/zh/configuration.html#plugins MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括: Executor (update, q ...
分类:
其他好文 时间:
2018-12-06 14:26:37
阅读次数:
160
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需 ...
分类:
数据库 时间:
2018-12-05 20:36:15
阅读次数:
171
前言 多线程编程中,为每个任务分配一个线程是不现实的,线程创建的开销和资源消耗都是很高的。线程池应运而生,成为我们管理线程的利器。Java 通过Executor接口,提供了一种标准的方法将任务的提交过程和执行过程解耦开来,并用Runnable表示任务。 下面,我们来分析一下 Java 线程池框架的实 ...
分类:
编程语言 时间:
2018-12-05 17:24:29
阅读次数:
131
目前spring框架是j2ee比较常用的项目开发技术,只需在web.xml文件中进行少许配置即可,代码如下所示:<!--spring的配置文件--><context-param><param-name>contextConfigLocation</param-name><param-value>cl ...
分类:
编程语言 时间:
2018-12-05 17:22:42
阅读次数:
365
1. Single Thread Executor:只有一个线程的线程池,因此所有提交的任务是顺序执行。 代码:Executors.newSingleThreadExecutor() 2. Cached Thread Pool:线程池里有很多线程需要同时执行,老的可用线程将被新的任务触发重新执行,如 ...
分类:
编程语言 时间:
2018-12-05 16:25:35
阅读次数:
209
//Retry机制 public static class RetryExecutor { /// /// 重试零个参数无返回值的方法 /// /// 执行方法方法 /// 重试间隔,单位秒 /// 重试次数 public static void Execute(... ...
【参考文章】:Mybatis-Executor解析 1. Executor的继承结构 2. Executor(顶层接口) 定义了执行器的一些基本操作; 3. BaseExecutor BaseExecutor是一个抽象类,采用模板方法的设计模式。 它实现了Executor接口,实现了执行器的基本功能 ...
分类:
其他好文 时间:
2018-12-05 00:19:08
阅读次数:
152
Causedby:java.lang.NoSuchMethodError:javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String;引入了一个hsfpom文件后后,翻到异常堆栈最下面发现是:ServletContext没有getVirtualServerName方法,原因是pom冲突,解决方案:在hsf里面先排除就得s
分类:
编程语言 时间:
2018-12-02 22:46:43
阅读次数:
596
虽然项目用不上,先备份吧,控制多线程执行顺序有两种方法 1.通过join方法保证多线程的顺序性的特性 join:让主线程等待子线程结束后才能继续执行 2.ExcutorService executor = Excutors.newSingleTheadExcutor():FIFO ...
分类:
编程语言 时间:
2018-12-01 15:15:33
阅读次数:
153