• JSON解析及数据库操作实战篇


    代码:

    JSONObject json = JSONObject.parseObject(ubody);//得到整个json

    JSONObject AutoTable=json.getJSONObject("AutoTable");//得到AutoTable

    JSONArray item2=AutoTable.getJSONArray("Item");//得到Item数组(里面存对象),下一层即为表对象

    /*--------------------------------------------2个map数组,一个存表名,一个存字段;存表名和存字段的都是集合map----------------------------------------------------------------------- */


    Map<String, String>[] mapsDetail=new Map[item2.size()]; //map类型的数组,存表中的具体字段及字段的值
    Map<String, String>[] mapsName=new Map[item2.size()]; //map类型的数组,存表名
    for(int i=0;i<item2.size();i++){ //item2为json数组,数组中为对象
    Map<String, String> paramDetail=new HashMap<>();
    Map iteamName=new HashMap(); //存表名称
    JSONObject jsonItem=(JSONObject)item2.get(i);
    String jsonname=jsonItem.getString("name");//得到表名称
    JSONArray jsonItemArray=jsonItem.getJSONArray("Item");//得到表整个字段
    log.info("--------------------------得到表名称"+jsonname);
    log.info("--------------------------得到表整个字段"+jsonItemArray);
    for(Iterator iterator=jsonItemArray.iterator();iterator.hasNext();){
    JSONObject jsonObject=(JSONObject)iterator.next();
    String name=jsonObject.getString("name");
    String value=jsonObject.getString("value");
    paramDetail.put(name, value);
    log.info("--------------------------name"+name);
    log.info("--------------------------name"+value);

    }
    iteamName.put(i, jsonname); //存表名称
    mapsName[i]=iteamName;//数组中存map,表名称
    mapsDetail[i]=paramDetail;//数组中存map,具体字段
    }

    /*--------------------------------------------存进数组结束----------------------------------------------------------------------- */
    /*--------------------------------------------从数组中取数据:遍历表,对应表名之后,存进对应table----------------------------------------------------------------------- */

    long PK_SR_MAIN = KeyUtils.nextId();

    //遍历表,对应表名之后,存进对应数据库table
    for(int i=0;i<mapsName.length;i++){
    if( mapsName[i].get(i).equals("***") ) {
    //mapsDetail[i]是个map,表中的具体字段
    //取字段
    long PK_SR_DETAIL = KeyUtils.nextId();
    long FK_SR_MAIN = PK_SR_MAIN;
    String dgx = mapsDetail[i].get("dgx")== null ? "" :mapsDetail[i].get("dgx");
    ...........
    //必填字段验证
    //执行sql



  • 相关阅读:
    If循环初探
    Python用户交互程序
    Python 变量
    python的第一个程序
    PropertiesConfiguration读取值中包含英文逗号,用“”转义
    在windows下查看某个运行程序(或进程)的命令行参数
    eclipse open call hierarchy
    根据process杀死进程
    java在不存在文件夹的目录下创建文件
    eclipse部署web项目至本地tomcat, webapps中找不到
  • 原文地址:https://www.cnblogs.com/tongcc/p/11212527.html
Copyright © 2020-2023  润新知