JSON连载java目的

一. 前台(JS  面向对象)

1. 定义SearchView对象

function SearchView() {

}

SearchView.prototype.setViewName = function (viewName) {

    this.viewName = viewName;

}

SearchView.prototype.setViewType = function(viewType) {

    this.viewType = viewType;

}

SearchView.prototype.conditionList = new Array();//******conditionlist是一个对象数组,注意它的使用方法

SearchView.prototype.setCriteria = function (criteria) {

    this.criteria = criteria;//******creteria
也是对象,详细更searchview对象定义类似,注意它的使用方法

}

SearchView.prototype.setTenant = function(tenant) {

    this.tenant = tenant;

}

2. 把值设进SearchView对象中

var searchView = new SearchView();

    searchView.setViewName(viewName);

    searchView.setViewType(viewType);

    searchView.setCriteria(criteria);

    searchView.setTenant(tenant);

    searchView.conditionList = conditionList;

3. 关于conditionList对象数组定义并设进SearchView对象中:

var conditionList = new Array();

   $.each(conditionList, function (index, condition) {

        condition.fieldName = fieldName ;

        condition.operatorTxt = operatorTxt ;

        condition.fieldInfoTxt = fieldInfoTxt ;

        condition.conditionValue =$.trim(condition.conditionValue);

    });

    searchView.conditionList = conditionList;

4. ajax 提交表单到后台,注意红色部分,这是须要JSON序列化string之后提交到后台然后解析为java bean

 $.ajax({

        url:home + ‘UserSearchViewAction.do?

operation=update‘,

        type:‘POST‘,

        dataType:‘json‘,

        data:{

            ‘searchView‘:JSON.stringify(searchView)//*********注意,须要序列化对象后提交到后台

        },

        success:function (data) {

          

        }

    });

二、后台

1.定义对应的bean对象

searchView.java

String viewName;

    String viewType;

    List<Condition> conditionList;

    String tenant;

    Criteria criteria;

Condition.java

private String conditionValue;

    private String fieldName;// field name

    private String operatorTxt; //operator value

    private String fieldInfoTxt;//field value

Criteria.java

 
int viewId;

    String logicType;

    String advanceFilter;

    int criteriaType;

2.处理传过来的json对象并转换为javabean

 // parse jsonString to SearchView Object

        String searchViewJSON = request.getParameter("searchView");

        

        ObjectMapper objectMapper = new ObjectMapper();

        SearchView searchView = objectMapper.readValue(searchViewJSON, SearchView.class);

OK  到眼下位置,json转换为javabean的样例就做完了。最后展示下json对象实例

{

    "viewName""t1"

    "viewType""Dynamic"

    "criteria": {

        "logicType""AND"

        "advanceFilter""1"

    }, 

    "tenant""DarlenSC"

    "conditionList": [

        {

            "fieldName""Active"

            "operatorTxt""Is not empty"

            "fieldInfoTxt"""

            "fieldId""8"

            "conditionValue"""

            "operation""ISNOTNULL"

            "conditionOrder"1

        }

    ]

}

时间: 2024-10-20 19:12:53

JSON连载java目的的相关文章

Json for Java API学习

首先声明:本文来个很多网友的博客,我通过参考了他们的博客,大致的了解了一些项目中常用的Json in java 类和方法,以及关于json的个人理解 个人对json的一些简单理解 在最近的学习中,查阅了很多资料,了解了一些关于json的基本知识,下面做一个简单的总结: json是什么 没有.json结尾的这种文件,json(JavaScript Object Notation)是一种简单的数据交换格式,在此之前我也不知道这个东西其实没有想象的那么抽象,看看后面的例子会更清晰 json中的数据结构

[连载]Java程序设计(03)---任务驱动方式:寻找高富帅和屌丝

1. Sphin x简介 1.1. 什么是全文检索 全文检索是指以文档的全部文本信息作为检索对象的一种信息检索技术 .检索的对象有可能是文章的标题,也有可能是文章的作者,也有可能是文章摘要或内容. 1.2. 介绍 Sphin x是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能 ,使得应用程序更容易实现专业化的全文检索.Sphin x特别为一些脚本语言设计搜索API接口 ,如PHP ,Python,Perl,Ruby等,同时

JSON与JAVA数据的相互转换

import net.sf.json.JSONArray;   import net.sf.json.JSONException; import net.sf.json.JSONObject;import net.sf.json.JSONSerializer; /** * json对象转换为java对象 * * @throws JSONException */ @Test public void jsonToJava(){ String json="[{\"addTime\"

[连载]Java程序设计(04)---任务驱动方式:工资结算系统

任务:还是在上一家公司,该公司将职员分为三类:部门经理.技术员和销售员.在发工资的时候,部门经理拿固定月薪8000元,技术人员按每小时100元领取月薪,销售人员按照500元底薪加当月销售额的4%进行提成,设计并实现一个工资结算系统. 分析:不管是部门经理.技术员还是销售员都具有员工的共同特征,可以先设计一个员工类(Employee),并将结算工资的方法设计为抽象方法,因为不同的员工有不同的结算工资的方式,需要进行多态实现.所谓的抽象方法就是没有方法体并被abstract修饰符修饰的方法.如果一个

org.apache.struts2.json.JSONException: java.lang.reflect.InvocationTargetException异常解决

org.apache.struts2.json.JSONException: java.lang.reflect.InvocationTargetException org.apache.struts2.json.JSONWriter.bean(JSONWriter.java:246) org.apache.struts2.json.JSONWriter.processCustom(JSONWriter.java:178) org.apache.struts2.json.JSONWriter.p

Json与Java对象互转之Gson学习

Json与Java对象互转之Gson学习 请尊重他人的劳动成果,转载请注明出处:Json与Java对象互转之Gson学习         我曾在<XML,Object,Json转换之浅析Xstream的使用>一文中介绍过使用XStream进行XML,Object,Json之间的转换,虽然XStream内置了对Json的支持,但是效果不是特别好,毕竟XStream重点不在Json.下面就介绍另外一种工具.           Gson(又称Google Gson)是Google公司发布的一个开放

含有Date类型属性的实体类转化为JSONArray时报net.sf.json.JSONException: java.lang.reflect.InvocationTargetException

当我们通过session传递数据的时候我通常是: 直接在DAO里从数据库取出含Date类型的数据,而且通常不会将java.sql.Date转为java.util.Date. 这时候前台和后台都不会有任何问题,所以我们以为这样是正常的操作. 但是当我们用JSON传递数据的时候就会发现控制台会报一下错误信息: net.sf.json.JSONException: java.lang.reflect.InvocationTargetException 这时候我们可以再DAO里将java.sql.Dat

快速掌握Ajax-Ajax基础实例(Ajax返回Json在Java中的实现)

(转)实例二:Ajax返回Json在Java中的实现 转自http://www.cnblogs.com/lsnproj/archive/2012/02/09/2341524.html#2995114 在这篇中主要是说一下使用Json来将后台取得的数据显示到前台页面.可以说这种方法应该是实现无刷新分页的基础,而且在开发过程中经常被用到.这里的后台部分由JAVA来实现. 这个例子也在上一篇中那个项目中实现.新建一个SecondTest.html页面,定义一个按钮,并给这个按钮绑定事件ajaxJson

使用Json让Java和C#沟通的方法

原文:使用Json让Java和C#沟通的方法 最近很忙啊,新项目下来了,都没时间写博客了.频率降低点,但不能不总结跟大家分享啊. 我们在项目里经常要涉及到各模块间的通信,这其中又不可避免要碰到各类语言间之间的通信,比如之前做的一个项目里面就是Java发的消息需要C#接收,(具体消息是怎么传输的可以使用RabbitMQ等,关于RabbitMQ的使用总结可以看我之前的博客),都是面向对象的语言,而面向对象的消息怎么反解析到C#是个难题.下面就是使用Json密器让Java和C#沟通的具体办法的总结.