JsonConfig的jsonConfig.setExcludes的用法
1.问题描述
在项目中经常会有两个类存在一对多或者多对一的关联关系,这样在查询多的一方时,会深入查询关联的一方,而我们可能并不需要去深入查询那些数据,此时使用JsonConfig的jsonConfig.setExcludes过滤不需要转换的属性
2.举例
关联的类:
a:常用联系人
- @Entity
- @Table(name = "core_contacts")
- public class Contacts implements java.io.Serializable{/**
- * 会员
- */
- private Member member;
- @ManyToOne(fetch = FetchType.LAZY)
- @JoinColumn(name = "member")
- public Member getMember() {
- return member;
- }
- public void setMember(Member member) {
- this.member = member;
- }
- }
b:会员类
- @Entity
- @Table(name = "core_member", uniqueConstraints = {
- @UniqueConstraint(columnNames = "user_account"), @UniqueConstraint(columnNames = "mobile"),
- @UniqueConstraint(columnNames = "email") })
- public class Member implements java.io.Serializable {
//常用联系人- private Set<Contacts> contacts = new HashSet<Contacts>(0);
- public Member(Set<Contacts> contacts) { this.contacts = contacts;
- }
- @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "member")
- public Set<Contacts> getContacts() {
- return contacts;
- }
- public void setContacts(Set<Contacts> contacts) {
- this.contacts = contacts;
- }
- }
3.在根据会员查询常用联系人时,会深入查询会员的所有信息,此时需要过滤
- @RequestMapping("loadSelect.html")
- public JSONMessageView loadSelect(HttpServletRequest request){
- JSONMessageView json=new JSONMessageView(BusinessConstant.ERR,"记载失败",null);
- Member member=super.getMember();
- try {
- List<Contacts> contactPersonLst=contactsService.getByMember(member);
- if (contactPersonLst==null) {
- contactPersonLst=new ArrayList<Contacts>();
- }
- Map<String, Object> map=new HashMap<String, Object>();
- JsonConfig jsonConfig = new JsonConfig();
- jsonConfig.setExcludes(new String[] { "member" });//过滤不需要转换的属性
- JSONArray contactPersonList=JSONArray.fromObject(contactPersonLst,jsonConfig);
- map.put("contactPersonLst", contactPersonList);
- json.setCode(BusinessConstant.OK);
- json.setMessage("加载成功");
- json.setContent(map);
- return json;
- } catch (Exception e) {
- e.printStackTrace();
- json.setMessage("加载异常");
- return json;
- }
JsonConfig的jsonConfig.setExcludes的用法的更多相关文章
- 使用JsonConfig中的setExcludes方法过滤不需要转换的属性
Hibernate的many-to-one双向关联中,查询many方时会将one方数据顺带着查询,同时one中会有List<Many>,然后又会去查Many中的数据... 周而复始,结果j ...
- jsonConfig用法
1.先编写jsonConfig的初始化代码 private JsonConfig jsonConfig; public action构造方法() { jsonConfig = new JsonConf ...
- json-lib——JsonConfig详细使用说明
在使用json-lib包中JSONObject.fromObject(bean,cfg)时,可能出现以下几种情况: 1.(防止自包含)转换的对象包含自身对象,或者对象A下面挂了对象B,对象B下面又挂了 ...
- json-lib 之jsonConfig具体应用
一,setCycleDetectionStrategy 防止自包含 public static void testCycleObject() { CycleObject object ...
- JSON lib 里JsonConfig详解
一,setCycleDetectionStrategy 防止自包含 /** * 这里测试如果含有自包含的时候需要CycleDetectionStrategy */ public static void ...
- json-lib 之jsonConfig详细使用(转载写的不错)
=========================== Java To Json ============================= 一,setCycleDetectionStrategy 防 ...
- JsonConfig处理日期时间
写在前面: 页面发送ajax请求到后台,后台返回对应的json格式数据给前台页面进行数据展示,如果json数据中含有日期时间,就需要对日期进行处理 下面是相关的代码部分 JsonConfig json ...
- 认识json,详解JsonConfig
说到json 初学者很迷茫,不知json怎么为何物,以及怎么用.我简单说下我的了解 既然用了json 我们就要知其然也知其所以然.下面有几个疑问 1.为什么要用json?也就是json 的优势 2.我 ...
- json处理复杂对象jsonConfig
我们通常的Json字符串和java当对象互转.经常有选择性地过滤掉一些属性值,和json-lib包JsonConfig为我们提供了这样一个 特征,有几种方法实施细则. (1)建立JsonConf ...
随机推荐
- spring-cloud-kubernetes背后的三个关键知识点
在<你好spring-cloud-kubernetes>一文中,对spring-cloud-kubernetes这个SpringCloud官方kubernetes服务框架有了基本了解,今天 ...
- Python数据类型详解——列表
Python数据类型详解--列表 在"Python之基本数据类型概览"一节中,大概介绍了列表的基本用法,本节我们详细学一下列表. 如何定义列表:在[]内以英文里输入法的逗号,,按照 ...
- Java内部类使用注意事项
Java内部类使用注意事项: 1. 非静态内部类成员可以访问外部类实例成员 (如注释1),但外部类访问非静态内部类的成员 必须创建非静态内部类对象来访问其成员,如注释2 public class La ...
- 2018宁夏邀请赛 Continuous Intervals(单调栈 线段树
https://vjudge.net/problem/Gym-102222L 题意:给你n个数的序列,让判断有几个区间满足排完序后相邻两数差都不大于1. 题解:对于一个区间 [L,R],记最大值为 m ...
- CodeForces 375D Tree and Queries 莫队||DFS序
Tree and Queries 题意:有一颗以1号节点为根的树,每一个节点有一个自己的颜色,求出节点v的子数上颜色出现次数>=k的颜色种类. 题解:使用莫队处理这个问题,将树转变成DFS序区间 ...
- 51nod 1257 背包问题 V3(这不是背包问题是二分)
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1257 题解:不能按照单位价值贪心,不然连样例都过不了 要求的 ...
- bzoj3032 七夕祭题解
题面 TYVJ七夕祭和11区的夏祭的形式很像.矩形的祭典会场由N排M列共计N×M个摊点组成.虽然摊点种类繁多,不过cl只对其中的一部分摊点感兴趣,比如章鱼烧.苹果糖.棉花糖.射的屋--什么的.Vani ...
- MyBatis 传入List集合作为条件查询数据
使用的是SSM框架,数据库是MySQL,做查询的时候传入List集合,使用SQL语句的in方式查询数据 主要有两点问题:我的List集合是利用的另外一个语句查询出来的,传入参数是int类型,返回值是i ...
- 【5】SVM算法原理
大纲 简介 支持向量机(support vector machines)是一个二分类的分类模型(或者叫做分类器).如图: 它分类的思想是,给定给一个包含正例和反例的样本集合,svm的目的是寻找一个超平 ...
- 【Offer】[3-2] 【不修改数组找出重复的数字】
题目描述 思路分析 Java代码 代码链接 题目描述 在一个长度为n+1的数组里的所有数字都在1~n的范围内,所以数组中至少有一个数字是重复的. 请找出数组中任意一个重复的数字,但不能修改输入的数组. ...