![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
errizh
2019突破!
展开
-
JAVA Timer使用不当造成的问题
背景:项目中用Jmeter模拟上万个Tcp client,每一个client要定时给Server发送心跳。在Java中要定时执行一个任务,有很多童鞋自然会想到用Timer,但是Timer如果使用不当,会造成以下问题:1.每new一个Timer会启动一个线程,如果使用在循环或者递归当中,很容易造成JVM报如下错误: java.lang.OutOfMemoryError: unable to crea...原创 2018-03-26 19:35:26 · 3993 阅读 · 0 评论 -
JAVA-SPI基础
最近在学习Dubbo框架,顺便看到了它对JDK的spi做了些优化,以前在学习netty时就知道spi了。以下转自:https://www.cnblogs.com/java-zhao/p/7617143.htmldubbo-spi是在jdk-spi的基础上进行重写优化,下面看一下jdk-spi。一、作用为接口自动寻找实现类。二、实现方式标准制定者制定接口 不同厂商编写针对于该...转载 2019-01-23 11:45:53 · 165 阅读 · 0 评论 -
spring data Jpa(一)
最近的项目中持久层用到了 spring data jpa,以前都是用的hibernate和mybatis,记录学习一下 :什么是spring data jpa?spirng data jpa是spring提供的一套简化JPA开发的框架,按照约定好的【方法命名规则】写dao层接口,就可以在不写接口实现的情况下,实现对数据库的访问和操作。同时提供了很多除了CRUD之外的功能,如分页、排序、复杂...转载 2019-01-24 12:10:01 · 121 阅读 · 0 评论 -
【java 基础】使用Java8 Stream简化列表数据过滤
下半年跳槽换了一份工作,在cetc10的工作环境上网不太方便,到现在blog一篇都没更新又懈怠了,深刻检讨啊 - -!上个月项目遇到需要对后端DAO返回的List数据按业务需要进行数据过滤,保留符合条件的条目。很直观的想法就是,foreach遍历list,可能需要嵌套循环,这种代码看起来有点lowjava 8的Stream流,提供有方便的map、filter方法,可以简化编码逻辑,具体...原创 2018-12-02 09:20:49 · 3544 阅读 · 0 评论 -
Spring Aop 与AspectJ
最近在做的springboot Web 项目用到了spring aop记录业务日志,发现添加一个@Aspect注解就可以方便实现,究其原理如下:Spring AOP 与ApectJ 的目的一致,都是为了统一处理横切业务,但与AspectJ不同的是,Spring AOP 并不尝试提供完整的AOP功能(即使它完全可以实现),Spring AOP 更注重的是与Spring IOC容器的结合,并结合该优势...原创 2018-05-31 06:33:17 · 237 阅读 · 0 评论 -
关于JAVA集合使用双大括号初始化
最近使用Springboot,有些地方使用到了如下初始化HashSet、ArrayList的方式:ArrayList<String> friends = new ArrayList<String>() {{ add("Harry"); add("Tony"); add("Tom"); }};这样看起来简洁了许多,不用先new再...原创 2018-05-10 22:43:45 · 3147 阅读 · 0 评论 -
SpringBoot入门1
初步看了一下springboot的demo,有以下几点比较直观:1.内嵌了Tomcat 不用再打包成war包部署了。2.配置采用YAML格式更加简洁,不用再配置繁琐的XML。3.可以很方便集成Spring MVC、mybatis等。官网介绍:Spring Boot makes it easy to create stand-alone, production-grade Spring based ...原创 2018-04-18 17:32:27 · 202 阅读 · 0 评论 -
Fastjson在项目中使用遇到的问题
序列化类:public final class PushMsg { private final MsgType msgType; private String msgId; private String content; public PushMsg(MsgType msgType,String msgId,String content) { ...原创 2018-04-04 14:12:14 · 567 阅读 · 0 评论 -
Hello Netty
最近看了几个在用的开源项目httpServer实现部分,都是基于Netty实现的,而我是去年才知道它的,网上看了一下原来它最近几年在java服务端领域,特别是NIO中,应用很广泛!以下是知乎上的一篇问答:https://www.zhihu.com/question/24322387作为一个学Java的,如果没有研究过Netty,那么你对Java语言的使用和理解仅仅停留在表面水平,会点SSH,写几个...原创 2018-04-16 15:01:24 · 187 阅读 · 0 评论 -
dubbo-spi(1)
为什么dubbo不直接用jdk的spi机制,而是自己模仿实现了一个spi机制呢?jdk的spi会在一次实例化所有实现,可能会比较耗时,而且有些可能用不到的实现类也会实例化,浪费资源而且没有选择。另外dubbo的spi增加了对扩展点IOC和AOP的支持,一个扩展点可以直接setter注入其他扩展点。这是jdk spi不支持的。dubbo的spi文件定义在META-INF/dubbo/inte...转载 2019-01-23 12:02:33 · 145 阅读 · 0 评论