thymeleaf关于Map的取值

Posted chenyameng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thymeleaf关于Map的取值相关的知识,希望对你有一定的参考价值。

thymeleaf关于Map的取值

需求:

技术图片

如图所示:需要按照分类去数据库中查询,比如查找文件表中标签是python类型的有几个,Java类型的又有个,然后存进map里面,然后再在前端通过thymeleaf获取到map

解决:

controller层:

public ModelAndView toDownLoadCenter(){
    //查询类型的文件有多少个
    ModelAndView modelAndView= new ModelAndView();
    Map<String,Long> fileTypeMap =  fileService.countByFileType();
    modelAndView.addObject("map",fileTypeMap);
    modelAndView.setViewName("/download");
    return modelAndView;
}

serviceImpl层:

@Override
public Map<String, Long> countByFileType() {
    Map<String,Long> map = new HashMap<>();
    String python = "Python";
    String java = "Java";
    String other = "Other";
    map.put(python,countFile(python));
    map.put(java,countFile(java));
    map.put(other,countFile(other));
    return map;
}
@Override
public Long countFile(String type){
    return fileRepository.countByFileTag(type);
}

前端:

<div class="extra content">
    <span class="right floated">
        最近更新:<span>2020</span>
    </span>
    <span>
        <i class="file icon"></i>
        共<span th:text="${map.get(‘Other‘)}">17</span>个文件
    </span>
</div>

总结:

如果是一个map的话,需要根据key值来取map的value值,采用th:text="${map.get(‘Other‘)}"来获取other的值。

具体可以参考stackoverflow

以上是关于thymeleaf关于Map的取值的主要内容,如果未能解决你的问题,请参考以下文章

Map集合中,关于取值和遍历的相关操作

Spring MVC 3.2 Thymeleaf Ajax 片段

关于java object对象中的map取值问题。。。

使用片段时 Intellij 无法正确识别 Thymeleaf 模型变量

Spring boot:thymeleaf 没有正确渲染片段

Thymeleaf前后端传值 页面取值与js取值