- 博客(17)
- 收藏
- 关注
原创 布隆过滤器的方式解决缓存穿透问题
(1)新建一个maven工程,引入guava包<dependencies> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>22.0</version> </dependency>...
2021-01-21 11:25:23
139
原创 java中instanceof的用法和实战
java 中的instanceof 是一个二元操作符(运算符)运算符,由于是字母组成,所以是Java的保留关键字.它的作用是用来判断,instanceof 左边对象是否为instanceof 右边类的实例,返回一个boolean类型值。还可以用来判断子父类的所属关系。public void exportExcelFileReflect(SXSSFSheet sheet,List<String> properties, List<Object> list, int start.
2021-01-21 10:13:09
239
原创 线程池配置合理线程数
1.cpu密集型(例如while循环 )cpu密集的意思是该任务需要大量的运算,而没有阻塞,cpu一直全速运行。cpu密集任务只有在真正的多核cpu上才可能得到加速(通过多线程)而在单核cpu上,无论你开几个模拟的多线程该任务都不可能得到加速,因为cpu总的运算能力就那些cpu密集型任务配置尽可能少的线程数量一般公式:cpu核数+1个线程的线程池System.out.println(Runtime.getRuntime().availableProcessors()); //可以算出
2021-01-19 00:05:19
103
原创 线程池拒绝策略
拒绝策略RejectedExecutionHandler做一下详细的工作:在使用线程池并且使用有界队列的时候,如果队列满了,任务添加到线程池的时候就会有问题,针对这些问题java线程池提供了以下几种策略:(1)AbortPolicy(2)DiscardPolicy(3)DiscardOldestPolicy(4)CallerRunsPolicy(5)自定义...
2021-01-18 23:27:57
89
转载 java常用的几种线程池比较
1.为什么使用线程池诸如Web服务器、数据库服务器、文件服务器或邮件服务器之类的许多服务器应用程序都面向处理来自某些远程来源的大量短小的任务。请求以某种方式到达服务器,这种方式可能是通过网络协议(例如HTTP、FTP或POP)、通过JMS队列或者可能通过轮询数据库。不管请求如何到达,服务器应用程序中经常出现的情况是:单个任务处理的时间很短而请求的数目却是巨大的。构建服务器应用程序的一个简单模型是:每当一个请求到达就创建一个新线程,然后在新线程中为请求服务。实际上对于原型开发这种方法工...
2021-01-18 21:32:37
96
转载 Maven+SpringMVC+Dubbo 简单的入门demo配置
之前一直听说dubbo,是一个很厉害的分布式服务框架,而且巴巴将其开源,这对于咱们广大程序猿来说,真是一个好消息。最近有时间了,打算做一个demo把dubbo在本地跑起来先。先copy一段dubbo的介绍哈!DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量...
2018-09-11 15:57:40
215
转载 Eclipse格式化代码默认长度
eclipse 默认设置的换行长度, 格式化代码后,同一个方法里面参数也经常被,换行,非常难看。方法/步骤1.Java代码打开Eclipse的Window菜单,然后Preferences->Java->Code Style->Formatter->Edit ->Line Wrapping->Maximum line width:默认80加个0,改成20...
2018-08-28 10:07:26
594
转载 spring项目中使用监听器时获取spring中注入的service
1.在java web项目中我们通常会有这样的需求:当项目启动时执行一些初始化操作,例如从数据库加载全局配置文件等,通常情况下我们会用javaee规范中的Listener去实现,例如 1 2 3 4 5 6 7 8 9 public class ConfigListener implements ...
2018-08-17 13:45:17
1027
转载 Mybatis批量增加,删除,更新Oracle
最近需要用到Mybatis批量新增oracle数据库,刚开始在网上找到的方法是都是更新mySQL的,试了一下发现不适合Oracle,后来发现正确的oracle批量新增的sql是:<insert id="insertAttractionsBatch" parameterType="java.util.List">insert into ATTRACTIONS (ID, NAME...
2018-07-18 17:45:34
951
转载 mybatis 使用merge into
mybatis 使用merge into,跟一般的update写法相同:<update id="mergeinfo"> merge into user_type a using ( select #{name} as name, #{type} as type from dual ) b on (a.type = b.type)...
2018-07-16 16:57:44
20334
转载 Mybatis最入门---动态查询(choose,when,otherwise)
在UserInfoMapper.xml中,增加如下内容: <select id="findUserInfoByOneParam" parameterType="Map" resultMap="UserInfoResult"> select * from userinfo <choose> <when test...
2018-07-16 16:47:14
2275
转载 mybatis 中 foreach collection的三种用法
转载出处:https://www.cnblogs.com/fangyu19900812/p/6046209.html 参考:http://www.cnblogs.com/ruiati/p/6410339.html foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。foreach元素的属性主要有 item,index,collection,open,separat...
2018-07-16 16:19:41
178
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人