求助 Thymeleaf List中不同对象的数据拼接显示。

现有如下数据结构,一个用户有两个角色,两个角色名称,需要“,”拼接隔开显示,如:“管理员,用户1”
如下图显示样子:
图片说明

 {
  "userId": 25,
  "username": "lisi0",
  "age": 28,
  "roles": [
    {
      "roleId": 1,
      "roleName": "管理员",
      "roleDesc": "最大"
    },
    {
      "roleId": 2,
      "roleName": "用户1",
      "roleDesc": "第二"
    }
  ]
}

但目前我知道的Thymeleaf 写法只能输出userId、username等用户信息和roles整个集合,如下图:

图片说明

请教大神,Thymeleaf 如何写才能将roles中的两个roleName进行逗号拼接后显示在一个单元格内,如第一幅图那样显示。

0

2个回答

         var userObj =  {
                  "userId": 25,
                  "username": "lisi0",
                  "age": 28,
                  "roles": [
                    {
                      "roleId": 1,
                      "roleName": "管理员",
                      "roleDesc": "最大"
                    },
                    {
                      "roleId": 2,
                      "roleName": "用户1",
                      "roleDesc": "第二"
                    }
                  ]
        }
        var rolesObj = userObj.roles;
        var roleName = "";
        for (var i=0;i<rolesObj.length;i++){
            var role = rolesObj[i];
            roleName +=role.roleName+",";
        }
        roleName = roleName.substring(0,roleName.length-1);
        console.log(roleName);
0
terrychen98
terrychen98 这个是js的写法,现在需求是通过Thymeleaf进行页面渲染,其中有list中不同值进行拼接的问题,大神有好的办法不
9 个月之前 回复

首先,根据thymeleaf官方样例代码程序,
推荐在Controller层做

@ModelAttribute("users")
public List<User> populateUsers() {
        return this.userService.findAll();
    }

然后使用ORM框架做一对多的查询

User实体类中包含

List<Role> roles;

Controller中直接返回渲染模板的路径String
然后在表格中做如下添加:

<td th:if="${user.roles} != null">
    <span th:each="role: ${user.roles}">
            <span th:text="${role.roleName}">, </span>
    </span>
</td>
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
thymeleaf html中后台循环list集合数据 js动态合并单元格的做法
在开发过程中 我们从后台获取数据绑定list集合 但是我们需要实现跨行跨列 的表格。nn难点:nn属性拼接 th:class=&quot; 'type_' +${var.getOrderType()}&quot;使用‘+’;nn获取属性值  td[class^='type_']nn错误想法:nn我们第一个反应就是在td标签中rowspan。这个做法是错误的 他会导致数据错位,因为你每次都会循环同样一个&amp;lt;td r...
Thymeleaf基础 遍历List、Map、对象属性
n n n nn项目截图nnnnn图片.pngnncontrollernpackage com.neo.web;nnimport com.neo.entity.People;nimport org.springframework.web.bind.annotation.GetMapping;nimport org.springframework.web.bind.an...
Thymeleaf获取后台List传值
Listnpublic class CustomerController {nn @Autowiredn CustomerRepository customerRepository;nn @RequestMapping(&quot;/&quot;)n public String test(HttpSession session){n List&amp;lt;Customer&amp;gt; cu...
thymeleaf 解析数据的问题
数据源nn代码nn报错norg.springframework.expression.spel.SpelEvaluationException: EL1008E:nProperty or field ‘high_quality_provider_only’ cannot be found on object of type ‘org.json.simple.JSONObject’ - maybe ...
通过thymeleaf模板遍历Controller层传递来的数组对象,并通过超链接将对象的某个属性当作参数再传到Controller层
功能描述:将查询到的所有users传递到list_user.html页面,list_user.html页面展示所有user信息,通过超链接的方式传递user的userId属性到相应的Controller层的方法中实现删除该用户的功能。如下图:nnnn nn1.Controller层代码nnn@Controllernpublic class AdminController {nn @Autowire...
thymeleaf(4) - 条件判断
官方文档:https://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#conditional-evaluationnn nn以下是翻译的官方文档,建议自己阅读下文档。nn1. 简单条件:if和unlessnn有时候,我们需要仅仅在满足一定条件才显示代码片段。例如,在产品表格列中,当产品有评论信息的时候添加一个链接用于查看评论详情,...
thymeleaf中的条件判断用法
一.简单的条件:“if”和“unless”nn  th:if用法实例:nnntable>tr>th>NAMEth>th>PRICEth>th>IN STOCKth>th>COMMENTSth>tr>tr th:each="prod : ${prods}" th:class="${prodStat.odd}? 'odd'">td th:text="${prod.name}">Onionst
SpringBoot中使用Thymeleaf常用功能(三):测试Thymeleaf循环取数据
搭建环境请参考文章一在index.html中新建超链接:&amp;lt;a th:href=&quot;@{eachtest}&quot;&amp;gt;测试循环&amp;lt;/a&amp;gt;新建包com.ysh.thymeleaftest.domain,在此包下新建Dog.java,添加一些属性,并提供相应的setter和getter方法,再重写给属性赋值的构造方法以及默认的构造方法,实现Serializable接口。Dog.java:pa...
SpringBoot中thymeleaf显示数据举例
一.遍历数据举例nn1)、获取后端数据nnn//查询所有员工列表n @GetMapping(&quot;/emps&quot;)n public String list(Model mode){n Collection&amp;lt;Employee&amp;gt; employees = employeeDao.getAll();n mode.addAttribute(&quot;emps&quot;,empl...
Thymeleaf系列三 调用对象的成员变量值、Map值、List值、属性的方法 、ctx对象、param、session和application
1. 概述本文会对thymeleaf以下功能进行举例说明:n调用对象的成员变量的属性 n调用Map的对象的属性n调用List的对象的属性n调用属性的方法 n使用ctx对象nparam:获取request的请求参数 nsession:获取session的属性值 napplication:获取application的属性值
thymeleaf js中获取后台传到界面的值
<!-- th:inline="javascript" 这个重点 -->n<script th:inline="javascript">n /*<![CDATA[*/n var type = /*[[${type}]]*/;n alert(type);n /*]]>*/n</script>
Thymeleaf显示Map集合数据
select class="form-control zz-set-input-size" id="channel" style="">n option value="">请选择option>n option th:each="channel, channelS:${allChannels}" th:value="${channel.key}">div th:text="${chan
thymeleaf常用标签 thymeleaf:字符串Strings常见的使用方法
n判断是不是为空:null: nn&amp;lt;span th:if=&quot;${name} != null&quot;&amp;gt;不为空&amp;lt;/span&amp;gt; &amp;lt;span th:if=&quot;${name1} == null&quot;&amp;gt;为空&amp;lt;/span&amp;gt; n判断是不是为空字符串: “” &amp;lt;span th:if=&quot;${#strings.isEmpty(name1)}&quot;&amp;gt;
thymeleaf下拉框从后台动态获取集合数据并回显选中
&amp;lt;select name=&quot;supplierCode&quot; lay-search=&quot;&quot;&amp;gt;n &amp;lt;option value=&quot;&quot;&amp;gt;请选择供&amp;lt;/option&amp;gt;n &amp;lt;option th:selected=&quot;${res.supplierCode e
Spring mvc 中提交List表单
rn     在项目中有这样一个需要,在配置管理页面中允许用户动态添加key-value的键值对;也就是说,用户最终提交的表单中包含多少个键值对是无法预期的;这样我们就需要一个动态的表单提交的一个list对象。rn      前端代码如下:rn&amp;lt;div id=&quot;frame-main&quot;&amp;gt;rn&amp;lt;div id=&quot;frame-content&quot;&amp;gt;rn&amp;lt;h2&amp;gt;国际汇款配置新...
thymeleaf中使用layui 的自动化表格显示对象的某一属性值(格式化输出)
类似easyui 的formattern网上没找到方法,最后看的官方文档自己试着可以用了,时间 超链接 同理n分页返回blog list  blogType对象无法直接在表格中显示 需要使用 ,templet:nnnjsnn {{# if( d.blogType != null){ }}n {{ d.blogType.typeName }}n {{# } }}
thymleaf表单提交后台用List接收
首先后台接收对象不能是List,下面写法会说找不到List的get,set方法nnn@RequestMapping("/submitForm")n public String submitForm(List&lt;User&gt; list){n return "";n }nn那如何后台接收呢,需要创建一个接收对象,将List放里面即可nnnpublic class Data{n private...
SpringMVC4+thymeleaf3的一个简单实例(篇五:页面和MySql的数据交互-展示以及存储)
本篇介绍如何在SpringMVC中配置MySql,以及如何将页面数据保存到数据库并将其显示到页面。
thymeleaf 判断空值及拼接字符串
1.拼接字符串。'/img/xx/'为固定路径,后面的可变nnn&amp;lt;img id=&quot;img&quot; th:src=&quot;@{'/img/xx/'+${a.b.c}}&quot;&amp;gt;nn2.if 判断nnn&amp;lt;img id=&quot;img&quot; th:src=&quot;@{'/img/xx/'+${a.b.c}}&quot;&amp;gt;nn如果a或者b为空,则会报500错。nn加判断为空有简略的写法.在每一个对象后加?,即在点前加?nnn
Spring Boot中使用thymeleaf以及各种取值,判断,选择,截取等方式
Spring Boot中使用thymeleafnSpring Boot支持FreeMarker、Groovy、Thymeleaf和Mustache四种模板解析引擎,官方推荐使用Thymeleaf。nspring-boot-starter-thymeleafn在Spring Boot中使用Thymeleaf只需在pom中加入Thymeleaf的starter即可:n&amp;lt;dependency&amp;gt...
thymeleaf 动态列id 展示 总结;thymeleaf列ID自增,动态设置ID,表格操作总结;
持续更新贴·················分享一个项目用到的例子:一共用到了if、unless、text、id、onclick等属性,相当于是个入门级别的关于表格自增ID,耽搁了很长时间,在这里用了thymeleaf的th:id标签,要使用id属性,在each中一定要声明两个参数,在后面引用的时候text属性展示内容,id后面设置自增(注意语法),其实这个里面我没有取到index,也就是inde...
Thymeleaf-时间轴页面(List遍历)
因业务需要,需时间轴的形式展现任务简报,其中使用了Thymeleaf的遍历,前端对日期进行格式化等。nn代码:nnn&amp;lt;div class=&quot;cd-timeline-block&quot; th:each=&quot;milestones,stat:${thisMilestone}&quot;&amp;gt; n &amp;lt;span th:if=&quot;${milestones['approval_status']} eq '0'...
Thymeleaf条件判断
th:ifth:if属性求Bool值,只有true的时候其所在的标签及该标签中的内容才会被渲染到输出结果中<a href="comments.html"n th:href="@{/product/comments(prodId=${prod.id})}" n th:if="${not #lists.isEmpty(prod.comments)}">view</a>th:if=“express
Thymeleaf基础知识
以下一切均基于《Spring Boot 实战》一书Thymeleaf是一个Java类库,它是一个xml/xhtml/html5的模板引擎,可以作为MVC的Web应用的view层。Thymeleaf还提供了额外的模块与Spring MVC集成,所以我们可以使用Thymeleaf完全替代JSP。下面将列举几种常用的用法1.引入Thymeleaf<html xmlns:th="http://www.thy
springboot使用thymeleaf完成数据的页面展示
上一篇介绍了使用jsp完成数据的页面展示 ,但是springboot并不推荐使用jsp,会产生很多问题。官方推荐使用thymeleaf,这里我们将上一篇的jsp页面展示修改为使用thymeleaf,通过对比来熟悉thymeleaf,其实改动的地方并不大。nnnn第一篇springboot入门时介绍了项目的大致结构,当时图省事所有的类都放在一个包中,这里略做调整,然后再resource下新建文件夹...
thymeleaf 传递数据到js变量
thymeleaf js
thymeleaf常用的一些标签属性
用thymeleaf模版,总结了下经常用到的一些属性: n从后台传过来一个List,需要到前端页面显示,所以一般先进行判断——该List是否为空,然后才是加载内容,而有些页面加载的时候需要获取序号,具体代码如下:<th:block th:if="${not #lists.isEmpty(purchaseDemandList)}">n <li class="list-group-item row
【前端篇】如何使用Jquery获取Thymeleaf中的参数!
通过自己的研究发现的三种js获取Thumeleaf参数的方法 具体如下:nn1.第一种方法注:script标签中 th:inline 一定不能少,通常在取值的前后会加上不同的注释nnn&lt;p th:text="#{message}"&gt;default message&lt;/p&gt;n&lt;script th:inline="javascript"&gt;n var mes...
thymeleaf获取后台传到页面上的html标签
1、后台代码@RequestMapping(&quot;/enterPriseBusiness/add&quot;)n public String addEntBusinessInfo(Model model) {n model.addAttribute(&quot;title&quot;, &quot;企业中文名:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&quot;);n ...
使用thymeleaf时遇到的一些问题
最近一直在使用spring boot,所以自然而然的使用了thymeleaf,但是我想说习惯了jsp之后使用thymeleaf真实觉得不顺手,在使用thymeleaf中也遇到了一些问题,在这里记录一下,应该还是挺有用的,呵呵……问题一:org.xml.sax.SAXParseException: 元素类型 “input” 必须由匹配的结束标记 “” 终止。n 这是最简单的一个问题,用过的,都知道,
springboot--整合thymeleaf--实例01,返回一个list,用循环方式做屏显
表现层的技术rnrnJSP+EL+JSTLrnHTMLrnThymeleafrnFreemarkerrn等等rnrnThymeleaf框架rnrn是一个表现层的模板引擎rn有能务展示和处理数据rn界面节点和程序逻辑可以被共享,让界面、业务、技术等人员都能参考到项目中来rn支持6种模板处理模式rnHTMLrnXMLrnTEXTrnJAVASCRIPTrnCSSrnRAWrnrn使用过程rnrn1 添加依赖包rn2 处理HTML串,让其成为最后输出...
十一 Thymeleaf语法详解-获取作用域对象中的数据
n@Controllernpublic class DemoController {n @RequestMapping(&quot;/showInfo5&quot;)n public String showInfo5(HttpServletRequest request, Model model) {n request.setAttribute(&quot;req&quot;, &quot;HttpServletRequest&quot;);n req...
循环拼接List并以逗号间隔
npackage list;nnimport java.util.ArrayList;nimport java.util.List;nnpublic class list {n public static void main(String[] args) {n n n List&amp;lt;String&amp;gt; resultList = new ArrayList&amp;lt;String&amp;gt;();...
将获取的list记录数中某个属性的值作字符串拼接
一、需求nn        将查询语句中返回的记录数,转化为字符串,记录类型为nn             [{frole_id = Minister},{frole_id = Group},{frole_id = Employee}]nn二、方案nn           //1、首先查询记录数nn                 List&amp;lt;Map&amp;gt; roleData = dao.qu...
thymeleaf 嵌套迭代 的实现基于选项卡
利用th:each语法就可以实现嵌套迭代rn下面是一个基于bootstrap选项卡的实现,里面使用了从后台传来的两个对象, 一个是list 一个是list嵌套形式的rn第二个嵌套list需要第一个list的值作为选项卡的urlrn下面以一个简单的课程id 和课程详情为例rnrnrn当前位置: 组合培养计划->组合rnrnrnrnrnrn  th:text = "${plan}" rn  th:cl
thymeleaf的a标签跳转地址有多个参数时编写规则
thymeleaf的a标签跳转地址有多个参数时编写规则为nnnth:href=&quot;@{'doc/'+${modules.moduleId}+'/'+${item.gradeId}+'/list'}&quot;nn直接用引号分隔即可
thymeleaf list集合中的不同的map对象
一:nn首先通过vo把不同的对象封装起来。nn代码示例:nn我的vo对象:nnnpublic class ViewObject {n private Map&lt;String, Object&gt; objs = new HashMap&lt;&gt;();nn public void set(String key, Object value) {n objs.put(key, value);...
Thymeleaf判断集合是否为空
在使用thymeleaf判断,一个map集合的value(list集合)是否为空时候发现不行,不知为何,可以通过其他语法判断。nth:if="${#lists.isEmpty(map.value)}">nnn官方nnn有些知识点还是要参阅官网文档。
thymeleaf提交form表单传递bean
一、概述thymeleaf传递bean到springboot控制层,springboot控制层传递bean到thymeleaf页面。二、Bean对象public class Demo {n private String name;n private String password;nn public Demo() {n }nn public String getNam...
thymeleaf 在js标签获取java的值
nthymeleafnn关键点:nn&amp;lt;script th:inline=&quot;javascript&quot;&amp;gt;nnvar jsDiseaseList = /*[[${diseaseList}]]*/ null;nnn&amp;lt;script th:inline=&quot;javascript&quot;&amp;gt;n function addBussDisease(){n var did = $(&quot;#i...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 ios开发视频拼接 java学习list