
Java
文章平均质量分 67
Java笔记
GeGe&YoYo
关注个人成长.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
if...else如何消除?
先看看下面的代码。PayService类的toPay方法主要是为了发起支付,根据不同的code,决定调用用不同的支付类(比如:aliaPay)的pay方法进行支付。这段代码有什么问题呢?也许有些人就是这么干的。试想一下,如果支付方式越来越多,比如:又加了百度支付、美团支付、银联支付等等,就需要改toPay方法的代码,增加新的else…if判断,判断多了就会导致逻辑越来越多?很明显,这里违法了设计模式六大原则的:开闭原则 和 单一职责原则。开闭原则:对扩展开放,对修改关闭。原创 2023-02-28 14:58:11 · 193 阅读 · 0 评论 -
记录一次从15w条数据的excel导入到数据库优化过程
需要注意的是:使用多线程因为是异步的,所以任务还没执行完成接口就会返回了,而任务会在后台执行直接任务结束。我这里用的是EasyPoi,它对Poi做了一些封装处理,比Poi要快一点,这里我就直接使用EasyPoi来进行导入了。结论:可以发现改为批量保存后,插入15w条数据,大概平均在6s左右,平均单个接口耗时12.7S。这时我们也可以使用多线程,当15w的数据量任务过来以后,我分为10个线程来同时执行,也就是每一个线程只要执行3次就可以了。读取excel为1s,保存数据为2s,平均耗时3秒左右。原创 2023-02-27 14:07:22 · 918 阅读 · 0 评论 -
【持续更新中】随笔记录
记录一些看到的方法之类的,记录一下,方便以后取用。原创 2022-11-14 17:05:09 · 123 阅读 · 0 评论 -
fail-safe 机制与 fail-fast 机制分别有什么作用
fail-safe 和 fail-fast,是多线程并发操作集合时的一种失败处理机制。转载 2022-11-09 11:48:36 · 425 阅读 · 0 评论 -
Java实现生成和解析二维码
Java实现生成和解析二维码原创 2022-10-27 11:47:51 · 552 阅读 · 0 评论 -
java通过IP解析地理位置
在项目开发中,需要在登录日志或者操作日志中记录客户端ip所在的地理位置。目前根据ip定位地理位置的第三方api有好几个,淘宝、新浪、百度等,这三种其实也有些缺点的:淘宝,开始几次可以成功根据ip获取对应地理位置,但后面就莫名其妙开始不行,直接通过浏览器获取又可以;新浪,之前一直可以,但最近不知道为什么不行了,访问直接报错(可能api修改了或者取消了吧);百度,需要申请百度地图开发者平台的开发者账号,请求时接口中需要加上百度提供的秘钥等信息,好像不能定位国外的ip,但是针对国内的可以使用。原创 2022-10-27 12:10:39 · 3222 阅读 · 0 评论 -
Lombok @Data @Builder 一起使用问题
构造器@Builder模式能够在 JavaBean参数过多时显著提高JavaBean的装配效率,从而优化代码逻辑。整体情况来看,效果还是比较好的。原创 2022-10-28 11:11:39 · 780 阅读 · 0 评论 -
Java之BigDeciaml
Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更大或者更小的数进行运算和处理。一般情况下,对于那些不需要准确计算精度的数字,我们可以直接使用Float和Double处理,但是和会丢失精度。所以开发中,如果我们需要精确计算的结果,则必须使用BigDecimal类来操作。原创 2022-10-27 13:49:11 · 336 阅读 · 0 评论 -
ArrayList和linkedList的区别
ArrayList和LinkedList区别是什么原创 2022-07-29 08:35:31 · 7888 阅读 · 0 评论 -
String、String StringBuffer 和 StringBuilder 的区别是什么?
String、String StringBuffer 和 StringBuilder 的区别是什么?原创 2022-07-29 08:33:11 · 229 阅读 · 0 评论 -
equals与==的区别
equals与==的区别原创 2022-07-28 15:37:49 · 98 阅读 · 0 评论