对ArrayList元素分组去重

通常使用`SQL`查询一批数据的时候,可以利用`SQL`中的`GROUP BY `语句对数据进行分组,但是有时候出于对性能的考虑,不会使用`GROUP BY`,而是先把数据捞出来后,使用代码,在内存中按照某个属性进行分组。 当然有时候还会对分组里面的数据进行去重,这个时候也可以利用覆盖对象的`hashCode`和`equals`方法,利用`HashSet`的去重特性来达到目的...
阅读(805) 评论(0)

对ArrayList按照某个属性进行分组

概述通常使用SQL查询一批数据的时候,可以利用SQL中的GROUP BY语句对数据进行分组,但是有时候出于对性能的考虑,不会使用GROUP BY,而是先把数据捞出来后,使用代码,在内存中按照某个属性进行分组。代码public class SkuVo { private Long skuId; private String productName; private Long br...
阅读(648) 评论(0)

对ArrayList进行分页

概述系统与系统之间的交互,通常是使用接口的形式。假设B系统提供了一个批量的查询接口,限制每次只能查询50条数据,而我们实际需要查询500条数据,这个时候可以对这500条数据做分批操作,分10次调用B系统的批量接口。如果B系统的查询接口是使用List作为入参,那么要实现分批调用的话,可以利用ArrayList的subList方法来处理。代码sublist方法的定义: List subLis...
阅读(1100) 评论(5)

从团队项目中获取技术知识点

概述 获取知识点的方式非常多,像阅读技术书籍,逛技术网站,看技术公众号等。但是想获取经受过考验,实实在在的知识点,或者叫有用的干货,也可以尝试从自己参与的项目中获取。一个项目一般都是由多个人一起协作开发的,每个人负责的模块也都不同,遇到的技术问题也都不同。一般来说,大部分人只是了解自己做的模块,而并不十分了解其他队友开发的模块。如果参与的项目是大型互联网项目,那就最好了。可以从这个项目里面学习到很多...
阅读(210) 评论(0)

程序员要注意身体健康

最近听说公司的几个同事都大病了一场,有的还进行了大的手术,差点跟阎王爷报道了。努力工作固然重要,但是一定注意身体,身体不好了,随着来的就是,工作和生活双失。我根据自己的实践,列举了几点习惯,可能可以帮助程序员调整一下工作和生活的节奏,从而达到生活和工作平衡,进而改进身体体质和健康。 1、请早睡 早睡都做不到的话,其他就都别谈了。像要跑步,要健身,要努力工作,如果没有早睡作为前提,通通没用的。只有...
阅读(1528) 评论(8)

思路:针对某个业务场景,独立增加服务器集群去处理大流量

随着用户数越多,系统需要承受的流量就更大。举个例子,一般的电商应用都会搞双11这种活动,这个时候用户都会先收藏自己喜欢的商品,以便活动开始的时候,及时的抢购。当用户抢购的时候,系统必须应付瞬时大流量的冲击。针对这种情况,有很多种方案,像限流、增加服务器、多级缓存、应用跨机房部署等等。 如果你清楚自己系统在哪种业务场景下会遭受瞬时大流量冲击,那么可以针对这种业务场景,单独增加服务器来应付。...
阅读(396) 评论(0)

利用DB生成业务主键

概述 利用DB生成业务主键,生成业务主键的方法各种各样,其中一种是利用DB表主键自增的方式来生成唯一性的业务主键,下文简单介绍一下。 代码 以MySql作为例子,操作DB的数据层是Mybatis。CREATE TABLE `key_gen` ( `business_no` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键',...
阅读(774) 评论(0)

Intellij 比Eclipse好在哪儿呢?

现在最流行的JAVA IDE当属intellij 和Eclipse了,我在伯乐在线开了一个讨论帖,讨论的非常火热,想了解两者之间的对比情况,可以参看一下,持续关注一下。IntelliJ IDEA 到底在哪几方面比Eclipse好呢?...
阅读(1951) 评论(0)

能够提高开发效率的Eclipse实用操作-第二篇

概述 最近网上一篇文章提到JAVA IDE中,Eclipse占比是41%,Intellij占比是46%。但是目前我依然不会选择Intellij作为日常的IDE。原因是周围的同事中,没有一个对Intellij非常熟悉,没有充分利用Intellij的特性来提高操作效率。相反,Eclipse中的各种操作,我算是属于用的精熟了。所以跟周围使用Intellij的同事相比,我用Eclipse 来操作代码,反而比...
阅读(1389) 评论(2)

测试的道理

转载王垠的一篇好文章。测试的道理...
阅读(204) 评论(0)

谈“测试驱动的开发”

转载王垠的一篇文章 : 谈“测试驱动的开发”...
阅读(159) 评论(0)

谈程序的“通用性”

转载王垠的一篇文章 : 谈程序的通用性...
阅读(158) 评论(0)

数据存储在多张表,缓存维度简单设计

概述 为了提升接口的响应速度,通常会使用中央缓存,比如增加一个memcache集群,用于存储热点数据。假设数据表是类似下面这样的:table a{ long id String name ......... ......... }table b{ long id long a_id String name ......... ........ }table c { long id long...
阅读(554) 评论(0)

互联网高级测试工程师至少具备的能力

业务熟悉 熟悉本系统 测试人员参与测试的系统的各种业务场景,必须做到精熟 。 跟本系统有通讯的上下游系统 跟本系统有通讯的上下游系统也非常熟悉。这样一旦系统出现问题,可以知道影响的范围。 熟悉公司主流程业务 熟悉公司主流程业务。 气场 逻辑思维好 掌控系统上线排期 熟悉测试技术...
阅读(3545) 评论(0)

JAVA并行编程之Fork/Join--开篇

JAVA fork/join...
阅读(854) 评论(0)
123条 共9页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:318793次
    • 积分:3484
    • 等级:
    • 排名:第9907名
    • 原创:118篇
    • 转载:5篇
    • 译文:0篇
    • 评论:163条
    博客专栏