sandubuhan 2020-06-25 10:14 采纳率: 20%
浏览 1076

thymeleaf获取回传数据问题

用hui-admin,springboot,thymeleaf写了个后台管理,遇到了个问题。
1.首先数据库里有一个评论表和一个用户表,评论表的用户id和用户表id相关联,而且评论表里没有用户名字这个字段
图片说明
图片说明
2.想实现的功能是:在前端展示评论表里的所有数据,并且通过外键来展示每个评论的所属用户名,效果如下
图片说明
3.目前遇到的问题是,后面的接口回传的数据,无论是存在session还是model里,前面都只能接收comment里的数据,展示评论内容,而无法展示相关联的用户名字。目前知道是因为没有将名字和评论表绑定导致的。但是怎么解决呢。我尝试,在后台使用List>,可这样前面还是无法获取.

    public String fbAll(Model model,
                        HttpSession session
                        ){


        QueryWrapper<Comment> wrapper = new QueryWrapper<>();
        wrapper.isNotNull("cUserId");

        List<Comment> comments = commentMapper.selectList(wrapper);
        session.setAttribute("comments",comments);

        List<Map> list = new ArrayList<>();
        Map<Integer,String> map = new HashMap<>();

        for (Comment comment : comments) {

            Integer cUserId = comment.getCUserId();
            String  uNames  = commentMapper.queryByCId(cUserId);

            map.put(cUserId,uNames);
            list.add(map);

        }
//      session.setAttribute("namelists",list);
            model.addAttribute("namelist",list);



        return "feedback-list";
    }


前面的

图片说明

  • 写回答

1条回答 默认 最新

  • Json-Huang 2020-06-25 10:56
    关注

    不建议通过评论内容查询用户id(cUserId),有可能存在评论不是唯一的,会导致查询的用户id为多个。
    提供简单方法参考,即通过一个关联sql来实现,即在commentMapper.xml文件中使用类似如下
    sql,新增个包含返回字段的dto类,并在commentMapper.java中新增方法,返回类型List<新增的dto>

    SELECT c.cId,u.uName,c.Content  from 用户表 as u, 评论表 as c
    where u.uid = c.cUserId
    
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题,请各位专家解答!
  • ¥20 笔记本电脑 处理器是AMD的r7
  • ¥15 clash节点timeout
  • ¥15 需要在vitis下实现彩调视频图像累加,并输出
  • ¥15 解决不了的LNK2019错误
  • ¥20 MATLAB仿真三相桥式全控整流电路
  • ¥15 EDA技术关于时序电路设计
  • ¥15 百度文心一言流式返回sse失败
  • ¥15 由于远程方已关闭传输流,身份验证失败
  • ¥15 rt-detr,PCB,目标检测