简单带时间字段类
package com.xxxxx.entity;
import java.time.LocalDate;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @author zws
* @since 2019-10-11
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class BsUpholdOrder extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 保养日期
*/
private LocalDate upholdDate;
/**
* 实际保养人
*/
private String upholdPerson;
}
BaseEntity 只是一个id 分页参数公共类,要不要无所谓。
骚操作开始:
public static void main(String[] args) {
List<BsUpholdOrder> orders = new ArrayList<>();
BsUpholdOrder order1 = new BsUpholdOrder();
order1.setUpholdPerson("张三1");
order1.setUpholdDate(LocalDate.now());
BsUpholdOrder order2 = new BsUpholdOrder();
order2.setUpholdPerson("张三2");
order2.setUpholdDate(LocalDate.now().withMonth(9));
BsUpholdOrder order3 = new BsUpholdOrder();
order3.setUpholdPerson("张三3");
order3.setUpholdDate(LocalDate.now());
BsUpholdOrder order4 = new BsUpholdOrder();
order4.setUpholdPerson("张三4");
order4.setUpholdDate(LocalDate.now().withMonth(8));
orders.add(order1);
orders.add(order2);
orders.add(order3);
orders.add(order4);
//分组 按月
Map<Integer,List<BsUpholdOrder>> groupByMonth = orders.stream().collect(Collectors.groupingBy(o -> o.getUpholdDate().getMonthValue()));
System.out.println(groupByMonth);
}