java
不太厉害的马小哥
这个作者很懒,什么都没留下…
展开
-
开发规范
规范一阿里开发规约-编程规约-控制语句-第六条 :超过 3 层的 if-else 的逻辑判断代码可以使用卫语句、策略模式、状态模式等来实现。if (conditionA) { 逻辑1} else if (conditionB) { 逻辑2} else if (conditionC) { 逻辑3} else { 逻辑4}这种代码虽然写起来简单,但是很明显违反了面向对象的 2 个基本原则:单一职责原则(一个类应该只有一个发生变化的原因):因为之后修改任何一个原创 2020-12-29 09:48:37 · 291 阅读 · 0 评论 -
开发常见注意点
开发常见注意点关于@Builder的使用结论先行这里重点说一下结论三。关于@Builder的使用结论先行1. @Builder无法直接使用字段默认值2. 需要在字段上使用@Default,才可以使用字段默认值3. @Builder会自动生成一个全参的构造函数其实这三个结论都比较简单,只是平时不了解的开发者便会忽略,从而导致异常发生。这里重点说一下结论三。@Builder 在使用后,会给对应的类默认加上全参构造函数,当与数据库交互返回对象时,若数据库返回的sql中缺少某个字段,便会出现异常。原创 2020-12-23 10:36:45 · 241 阅读 · 0 评论 -
Java打印下载文件
打印和下载其实是两个不同的概念。打印: 将pdf平铺在浏览器上;下载: 以文件的形式在浏览器下载。1.直接通过Response输出流写文件,浏览器表现为下载文件response.setContentType("application/x-download");response.addHeader("Content-Disposition", "attachment;filename="+...原创 2020-03-20 22:02:12 · 484 阅读 · 0 评论 -
调用list的clear方法和new一个新的list相比
再一次偶然的机会,看见了list.clear() 方法(ps:很少之前很少看API,只知道常用的,之后要准备看API了),觉得奇怪,便去深入源码研究了一下clear方法的特别之处。个人之前在循环中要么是每次new一个list集合,要么就是使 list=null,但是在大批量大数据量循环的时候,确实影响性能的开销。ArrayList 的 clear 方法源码如下:/** * Remo...原创 2019-11-11 09:45:11 · 3017 阅读 · 1 评论 -
log日志输出注意
1. 一个最基本的例子使用Logging框架写Log基本上就三个步骤引入loggerg类和logger工厂类声明logger记录日志下面看一个例子//1. 引入slf4j接口的Logger和LoggerFactoryimport org.slf4j.Logger;import org.slf4j.LoggerFactory;public class UserService {...原创 2019-10-25 16:12:23 · 2080 阅读 · 0 评论 -
开发接口需注意
后端开发接口应注意1.是否有参数校验;2.是否所有的情况都测试过了,如果可以请写单元测试;3.是否返回数据准确明朗,响应状态码是否正常;4.文档是否已经完备。...原创 2019-10-04 22:03:58 · 169 阅读 · 0 评论 -
Excel大数据量导出
之前用这个方式的导出,当数据量达到65535的时候i,便会报错,达到excel的最大限制,困扰了博主半天,Workbook wb = new HSSFWorkbook();查询了很久,发现有一个新的方法:Workbook wb = new SXSSFWorkbook();用这种导出时能达到大数据量级别,并且在导出10万条数据时,本地导出仅仅用了不到五十秒。图中采用的是ms:具体代...原创 2019-10-09 16:38:59 · 1188 阅读 · 0 评论