做项目时后端处理json数据

来源:互联网 发布:简单软件的c语言程序 编辑:程序博客网 时间:2024/06/06 02:54

1.如何获取刚插入的一条mysql的数据主键id

可以用mybatis的insert语句中的属性进行得到,设置useGeneratedKays="true"和keyProperty="id"在Serice层,直接Object.getId获取。

2.处理从前端传来的json数据

(1)如果是json对象,则

/**
     * json字符串-简单对象型与JSONObject之间的转换
     */
    public static void testJSONStrToJSONObject(){


        JSONObject jsonObject = JSON.parseObject(JSON_OBJ_STR);
        //JSONObject jsonObject1 = JSONObject.parseObject(JSON_OBJ_STR); //因为JSONObject继承了JSON,所以这样也是可以的


        System.out.println(jsonObject.getString("studentName")+":"+jsonObject.getInteger("studentAge"));


    }

(2)json为数组

/**
     * json字符串-数组类型与JSONArray之间的转换
     */
    public static void testJSONStrToJSONArray(){


        JSONArray jsonArray = JSON.parseArray(JSON_ARRAY_STR);
        //JSONArray jsonArray1 = JSONArray.parseArray(JSON_ARRAY_STR);//因为JSONArray继承了JSON,所以这样也是可以的


        //遍历方式1
        int size = jsonArray.size();
        for (int i = 0; i < size; i++){
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            System.out.println(jsonObject.getString("studentName")+":"+jsonObject.getInteger("studentAge"));
        }


        //遍历方式2
        for (Object obj : jsonArray) {
            JSONObject jsonObject = (JSONObject) obj;
            System.out.println(jsonObject.getString("studentName")+":"+jsonObject.getInteger("studentAge"));
        }
    }

3.数据转换格式

(1)字符串转日期格式

SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
            String t=request.getParameter("dt_set_start_order_time");
            storeReserveOrder.setReserveTime(sdf.parse(t));

(2)字符串转bigdecimal

new BigDecimal(jsonObject.getString("sale_price"))

4...............待续


原创粉丝点击