java - 如何将 Map<String, String> 渲染到模板并在那里使用

标签 java map playframework-2.0

我正在尝试将键值映射渲染到模板,然后以这种方式显示在那里:

@(twittsIfollow: Map[String, String])
 .....
 @if(twittsIfollow != null) {
  @for((key, value) <- twittsIfollow) {
    @key
    @value
   } 
 }

它说,这是错误的。是否有映射键值的 Scala 标签?

这是我的方法:

public static Map<String, String> alltwitts(List<Long> otherIDs) {
    Map<String, String> results=new HashMap<String, String>();
    for (Long id: otherIDs) {
        Query selected_twitt = JPA.em().createQuery("select u.twitt from Twitt u where " + " u.whose = ?").setParameter(1, id);
        String twOwner = User.getOneUser(id);
        String twitt  = (String) selected_twitt.getSingleResult();
        results.put(twOwner, twitt);
    }

    return results;
}

然后我在这个地方渲染到模板:

Map<String, String> twittsIfollow = Twitt.alltwitts(IDusersIamFollowing);
return ok(microblog.render(twittsIfollow));

现在它说:[NonUniqueResultException: result returns more than one elements]

谢谢

最佳答案

简单

@for((key, value) <- twittsIfollow) {
  @key
  @value
}

顺便说一句,如果您使用的是 Scala,twittsIfollow 永远不应为 null。首选使用 Option

关于java - 如何将 Map<String, String> 渲染到模板并在那里使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11344874/

相关文章:

java - Spring JDBC : unable to get dataSource

c++ - std::map,指向映射键值的指针,这可能吗?

java - Playframework 2.0 onError 获取请求正文

scala - 在Play上使用HAML,Scaml或Jade

java - 角色2 骰子100000次,写出每次求和和掷骰子的次数并制作图表 - Java

java - 以图形方式显示图中两个顶点之间的最短路径

java - 如何将数据从 Java 客户端发送到 C++ 服务器?

matlab - 使用 Matlab 在世界地图上绘制纬度和经度网格

c++ - 等效于 std::map 的 remove_if

java - Play Framework (2.5) - JMX 端口可在 JVisualVM 中查看