摘要: 关于单一指责这个原则我一直有一个想法,现在写下来,不知道对不对,欢迎指正。 单一指责是指一个类仅有一个引起其变化的原因。在工作过程中我常常想,这个原则应该是在实际使用场景中最难去遵循的原则,比如说我写了一个userService,通常我们会把insert,delete,等都写在一个service中。 阅读全文
posted @ 2018-11-11 15:07 Moine 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 上线了好久的项目今天突然出现cpu到达100% 的情况,先将项目紧急重启,恢复正常后登录服务器排查gc日志,发现存在内存泄漏的情况。 top命令查看进程情况,top -Hp pid查看线程,再jstack导出日志。过程匆忙,忘了截图 搜索jsatck日志看到许多线程阻塞在这一行代码 基本可以定位到问 阅读全文
posted @ 2018-11-10 22:56 Moine 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 在复习Java内存机制的过程中有一些新问题,自问自答,做个记录。新生代是java堆内存的一部分。堆内存分新生代和老生代两大块,也有把堆内存分为新生代老生代永久代(持久代)三块的说法。(不过这种说法应该逐渐被淘汰,因为从java7开始永久代就已经被移除了。)新生代继续细分,可以划分出Eden,Surv 阅读全文
posted @ 2018-10-13 15:41 Moine 阅读(487) 评论(0) 推荐(0) 编辑
摘要: 三月跳槽到杭州后写的一篇,精简了一下贴到这里。 想必大多数情况下1-3年经验的同学都只是第一次跳槽,第一次参加社招难免会有些忐忑,大家常说校招看潜力社招看实力,其实没必要那么慌张,因为1-3年的经验并不是完全没有潜力可开发,很多公司还是一样看重你的基础和进一步提升的潜力的。我3月跳槽时是不到两年的工 阅读全文
posted @ 2018-08-04 13:40 Moine 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 从17年末到18年初花了差不多三周的时间,将项目中最重要的模块之一--国际化资源管理,进行了彻底的重构。在掉了无数头发加了好多个晚上的班之后,终于改变了先前一个service解决所有逻辑的臃肿情况,代码的可读性,扩展性,模块功能的扩展性以及可用性等性能获得了很大的提升。我在这次重构中有着许许多多的思 阅读全文
posted @ 2018-01-17 23:12 Moine 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 项目中service类成为上帝类,所有工作都在一个类中完成已经成为了一个相当棘手的问题。这样的高耦合场景使得代码难以维护,难以阅读,在需求变更时修改起来极为不方便,几乎是每一次变更就需要重构。 学习设计模式可以尝试在项目中降低耦合,抽象业务场景,从而使得项目更好的扩展和维护。 策略模式:定义一系列的 阅读全文
posted @ 2017-12-26 23:29 Moine 阅读(1374) 评论(0) 推荐(0) 编辑
摘要: 我在使用apache poi导入导出Excel做项目过程中,遇到了许许多多的问题,在此简单罗列。 1、xls和xlsx的区分:poi将2003以前和2007以后的excel封装成了两个不同的实现:HSSFWorkbook和XSSFWorkbook,如果在导入时需要兼容两种格式,必须在代码中加以判断, 阅读全文
posted @ 2017-11-18 21:23 Moine 阅读(193) 评论(0) 推荐(0) 编辑