摘要:一、原则: 高层模块不应该依赖低层模块,两者都应该依赖其抽象。抽象不应该依赖细节,细节应该依赖抽象。面向接口编程,不要面向实现编程。 二、作用: 1.可以降低类间的耦合性 2.可以提高系统的稳定性 3.减少并行并发引起的风险 4.提高代码的可读性和可维护性 三、实现: 1.通过面向接口的编程来降低类
阅读全文
摘要:一、描述: 将一个对象作为原型,通过对其进行复制而克隆出多个和原型类似的新实例。 二、特点: 用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。原型实例指定了要创建的对象的种类。用这种方式创建对象非常高效,根本无须知道对象创建的细节。 三、优点: (1)Java自带
阅读全文
摘要:一、原则: 继承必须确保超类所拥有的性质在子类中仍然成立。子类可以扩展父类的功能,但不能改变父类原有的功能。子类继承父类时,除添加新的方法完成新增功能外,尽量不要重写父类的方法。 二、作用: 1.里式替换原则是实现开闭原则的重要方式之一。 2.它克服了继承中重写父类造成的可复用性变差的缺点。 3.它
阅读全文
摘要:一、原则: 软件实体应当对扩展开放,对修改关闭。当应用的需求改变时,在不修改软件实体的源代码或者二进制代码的前提下,可以扩展模块的功能,使其满足新的需求。 二、软件实体包含哪些? 1.项目中划分出的模块 2.类与接口 3.方法 三、 作用: 1.对软件测试的影响。软件遵守开闭原则的话,软件测试时只需
阅读全文
摘要:设计模式,即Design Patterns,是指在软件设计中,被反复使用的一种代码设计经验。使用设计模式的目的是为了可重用代码,提高代码的可扩展性和可维护性。 可复用性,可维护性,可读性,健壮性,安全性 1995年,GoF(Gang of Four,四人帮)合作出版《设计模式:可复用面向对象软件设计
阅读全文
摘要:

需要动态生成如下的表头,涉及到横向、纵向单元格合并,效果图: 使用的是SXSSFWorkbook,可用于数据量很大的情景,会将数据放在硬盘上,防止堆内存溢出 代码如下: import lombok.extern.slf4j.Slf4j; import org.apache.poi.ss.usermo
阅读全文
摘要:业务场景是主要是查询或者导出某家分销商一个月内产生的退票退款订单数据。由于涉及到机密数据,因此不便展示效果图。只记录一下遇到的两个经典的问题以及解决思路以供参考。 出现的问题: 因为测试环境测试不出生产环境的问题,生产环境订单量较大,我看了一下订单加在一起有三千多万条,因此部署到生产环境之后导出功能
阅读全文