芒果味的球 2019-05-18 10:35 采纳率: 76.5%
浏览 655
已采纳

请问java怎么实现后端拼接出复杂json,前端ajax调用,拼接出复杂表格?

因为是复杂json,我有2个或者多个简单javabean类,将多个简单javabean 拼接成json这一步实现不出,
然后我想前端ajax应该能调用后端这个类 把json异步传给前端,但是当前端拿到数据之后,我不知道怎么给表格动态拼接。

表格类似:

姓名 | 性别 | 学科 | 高一上 | 高一下 | 高二上 | 高二下

张三 男 语文 90 80 60 70
数学 90 90 90 90
英语
物理
化学

生物

  • 写回答

3条回答 默认 最新

  • 珍妮玛•黛金 博客专家认证 2019-05-18 12:22
    关注
    
        //例如有一个实体类
        public class StudentGrade{
    
            //姓名
            private String name;
            //姓名(0=男;1=女)
            private Integer sex;
            //学科
            private String subject;
            //高一上学期分数
            private Float lastSemesterFirstGrade;
            //高一下学期分数
            private Float nextSemesterFirstFrade;
            //高二上学期分数
            private Float lastSemesterSecondGrade;
            //高二上学期分数
            private Float nextSemesterSecondFrade;
    
            //get set
        }
    
        @Controller
        @RequestMapping("studentGrade")
        public class StudentGradeController{
    
            @Resource
            private XxxService xxxService;
    
            @RequestMapping(value="/getStudentGradeData",method = RequestMethod.POST)
            public String getStudentGradeData(){
                            //通过接口获取的list数据,然后转json
                List<StudentGrade> list = xxxService.getStudentGradeData();
                JSONArray json = JSONArray.fromObject(list);
                return json.toString();
            }
        }
    
            //ajax
            $.ajax({
                 type: "POST",
                 url: "xx/studentGrade/getStudentGradeData",
                 data: null,
                 dataType: "json",
                 success: function(json){
                            //判断非null非空
                                var list = json;
    
                                var tableHtml = '<table><th><tr></tr>...以此类推</th>';
                                for(var i = 0; i < list.length; i ++){
                                //这里加个判断,0=男,1=女
                                    tableHtml += '<tr><td>' + list[i].name + '</td><td>' + list[i].sex + '...以此类推</td></tr>';
                                }
    
                                tableHtml += '</table>'
    
                                //最后tableHtml就是拼好的 table html,
                 }
             });
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考