摘要:
前面依次介绍了普通线程池和定时器线程池的用法,这两种线程池有个共同点,就是线程池的内部线程之间并无什么关联,然而某些情况下的各线程间存在着前因后果关系。譬如人口普查工作,大家都知道我国总人口为14亿左右,可是14亿的数目是怎么数出来呢?倘若只有一个人去统计,从小数到老都数不完。好比一个线程老牛破车干不了多少事情,既然... 阅读原文
2019-06-04 15:10:03 阅读(2355) 评论(0)
摘要:
SqlHelper发布——比Mybatis-PageHelper性能更高
起源
前段时间开启了一个新的项目,在选择分页插件时,发现github上很流行的一个是pagehelper,在百度上搜索了一下,使用量。由于项目紧急,所先拿来用了。但是我知道它并不适合我们。原因是它有如下几个缺点:
1) 对国产数据库支持不... 阅读原文
2019-06-04 14:46:02 阅读(2375) 评论(0)
摘要:
在java中,解决同步问题,很多时候都会使用到synchronized和Lock,这两者都是在多线程并发时候常使用的锁机制。
synchronized是java中的一个关键字,也就是说是java内置的一个特性。当一个线程访问一个被synchronized修饰的代码块,会自动获取对应的一个锁,并在... 阅读原文
2019-06-04 14:39:02 阅读(2205) 评论(0)
摘要:
什么时候可以使用Lambda?通常Lambda表达式是用在函数式接口上使用的。从Java8开始引入了函数式接口,其说明比较简单:函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。 java8引入@FunctionalInterface 注解声明该接口是... 阅读原文
2019-06-04 13:21:04 阅读(2244) 评论(0)
摘要:
一、RocketMQ
1、架构图片
2、角色分类
(1)、Broker
RocketMQ 的核心,接收 Producer 发过来的消息、处理 Consumer 的消费消息请求、消息的持 久化存储、服务端过滤功能等 。
(2)、NameServer
消息队列中的状态服务器,集群的各个组件通过它来了解全局的信息 。类似... 阅读原文
2019-06-04 12:22:04 阅读(2292) 评论(0)
摘要:
按我的个人理解,这个题目本身就问的有点问题,因为这3个关键字之间没啥关系,是相对独立的,我猜想这道题的初衷应该是想了解面试者对Java中final finally finalize的使用方法的掌握情况,只是因为3个关键字比较像,而成了现在网上流传的题目“Java中final finally finalize的区别”。... 阅读原文
2019-06-04 12:09:06 阅读(2100) 评论(0)
摘要:
ServerBootstrap的构造:
1 public class ServerBootstrap extends AbstractBootstrap<ServerBootstrap, ServerChannel> {
2 private static final InternalL... 阅读原文
2019-06-04 10:14:11 阅读(2163) 评论(0)
摘要:
struts2 拦截器(interceptor)简介:
拦截器(interceptor)是struts2框架的一个核心组件,struts2框架的大部分功能都是通过拦截器来完成的,例如数据校验、国际化、文件上传和下载等。
拦截器实现了动态拦截Action调用的功能。开发者可以定义一个拦截器在Action调用前后执行... 阅读原文
2019-06-04 09:14:02 阅读(2158) 评论(0)
摘要:
Thymeleaf模板引擎是springboot中默认配置,与freemarker相似,可以完全取代jsp,在springboot中,它的默认路径是src/main/resources/templates 静态文件css, js 等文件默认路径是src/main/resources/static,所有项目中... 阅读原文
2019-06-04 08:23:03 阅读(2389) 评论(0)
摘要:
1. 单例(Singleton)
Intent
确保一个类只有一个实例,并提供该实例的全局访问点。
Class Diagram
使用一个私有构造函数、一个私有静态变量以及一个公有静态函数来实现。
私有构造函数保证了不能通过构造函数来创建对象实例,只能通过公有静态函数返回唯一的私有静态变量。
Imple... 阅读原文
2019-06-04 07:40:04 阅读(3211) 评论(0)