Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
实现Java映射的分页_Java_Spring_Spring Data Jpa_Paging - Fatal编程技术网

实现Java映射的分页

实现Java映射的分页,java,spring,spring-data-jpa,paging,Java,Spring,Spring Data Jpa,Paging,我有一张Java对象的地图,我想在UI中显示为页面: Map<Integer, CategoryFullDTO> list = new HashMap<>(); list.put(1, CategoryFullDTO.builder().id(1).title("item 1").build()); list.put(2, CategoryFullDTO.builder().id(2).title("item 2").bui

我有一张Java对象的地图,我想在UI中显示为页面:

 Map<Integer, CategoryFullDTO> list = new HashMap<>();

 list.put(1, CategoryFullDTO.builder().id(1).title("item 1").build());
 list.put(2, CategoryFullDTO.builder().id(2).title("item 2").build());
 list.put(3, CategoryFullDTO.builder().id(3).title("item 3").build());
Map list=newhashmap();
list.put(1,CategoryFullDTO.builder().id(1).title(“项目1”).build());
list.put(2,CategoryFullDTO.builder().id(2).title(“项目2”).build());
list.put(3,CategoryFullDTO.builder().id(3).title(“项目3”).build());
我使用以下方法创建Pages对象:

 final Page<Map<Integer, CategoryFullDTO>> page = new PageImpl<>(list);
final Page=new PageImpl(列表);
但是我得到
无法推断参数


如何将映射跳入列表并逐页获取?

如果
PageImpl
来自
springframework.data.domain
,则构造函数将
List
参数而不是
map
对象作为参数

所以你可以试试

Map Map=newhashmap();
map.put(1,CategoryFullDTO.builder().id(1).title(“项目1”).build());
map.put(2,CategoryFullDTO.builder().id(2).title(“项目2”).build());
map.put(3,CategoryFullDTO.builder().id(3).title(“项目3”).build());
列表=新的ArrayList();
列表。添加(地图);
最终页面=新页面导入(列表);
这对我很有用

final Page<Map> page = new PageImpl(new ArrayList(list.values()));
final Page Page=new PageImpl(new ArrayList(list.values());

我还想问一下如何从角度代码发送页码(页面大小)和项目总数?@PeterPenzov因为您使用的是spring,它不能作为参数传递给rest端点吗?(我不熟悉angular,但UI和后端之间的所有通信都应该通过端点进行,对吗?感谢您的解决方案!