在列表中搜索列表并将其插入到地图中

Search for a list in a list and insert it into the map

我的class是一个

class Movie 
{
private String title;
private int year; 
private List<String> actorsSurnames;
}

我想在存储库中创建查询:

Map<String,List<String>> findByActorsSurnames(List<String> actorsList);

我想要一对电影和其中的演员。 结果示例:

"Titanic": [0]:"Winslet",[1]:"DiCaprio"
"Avatar":[0]:"Worthington"

是否仅在没有任何 java 代码的查询中才有可能?

基于 Documentation, supported return type don't have Map except for Vavr 库。

所以我对你的例子的最佳猜测是将查询 return 输入为 List<Movie> 然后进行转换:

List<Movie> findByActorsSurnames(List<String> actorsList);

然后在您的 java 代码中:

  ..
  for(Movie m: repository.findByActorsSurnames(list)){
  map.put(m.getTitle,m.getActorsSurnames);
  ..
  }
  ..