小编Ken*_*ong的帖子

如何使用java 8将一组对象分组为排序列表?

我想获取一组对象(ObjectInstance在这种情况下),我想将它们分组为一个属性,并将结果列表排序在另一个属性上.

Set<ObjectInstance> beans = server.queryMBeans(null, null);
Map<String, List<String>> beansByDomain = beans.stream()
            .collect(groupingBy( (ObjectInstance oi) -> oi.getObjectName().getDomain(),
                                mapping((ObjectInstance oi) -> oi.getObjectName().getCanonicalKeyPropertyListString(),
                                toList() )));
Run Code Online (Sandbox Code Playgroud)

上面的表达式创建了正确的数据结构:Map键是ObjectInstance对象的域,其中值是属性列表的列表.我想要的是现在对列表进行排序,以确保它们按字母顺序排列.有没有办法在同一个表达式中执行此操作?

一个想法是添加.sort()权后.stream(),但真正保证工作?

java sorting lambda grouping java-stream

9
推荐指数
2
解决办法
9371
查看次数

在 spring-boot 1.4.x 中添加原因短语

如此此处所述,由于 Tomcat 的新版本,最新版本的 Spring Boot (1.4.x) 不会返回原因短语。

不幸的是,我受到一些我无法影响的遗留代码的限制,我需要将“OK”原因短语添加回我的回复中。知道如何做到这一点吗?如果它是一个标头,那么使用HttpServletResponseWrapper. 但是对于状态行,我什至找不到写入状态行的代码。

我真的不想(无限期地)降级到旧技术。希望有人知道一种方法可以将其添加回来。

java spring tomcat spring-boot

5
推荐指数
1
解决办法
1457
查看次数

标签 统计

java ×2

grouping ×1

java-stream ×1

lambda ×1

sorting ×1

spring ×1

spring-boot ×1

tomcat ×1