JSONObject的使用

来源:互联网 发布:图片动态特效制作软件 编辑:程序博客网 时间:2024/06/07 05:28

JSONObject的使用

   接口方法:

       @POST

@Path("checkMonthlyCardNumber")

public ExpResult<IsNeedPwdRespone>  checkMonthlyCardNumber(CheckMonthlyCardNumberRequest CheckMonthlyCardNumber);


      实现接口方法:

@Override
public ExpResult<IsNeedPwdRespone> checkMonthlyCardNumber(CheckMonthlyCardNumberRequest checkMonthlyCardNumber)
{
ExpResult<IsNeedPwdRespone> result = new ExpResult<IsNeedPwdRespone>(false);
try {

result = getResultCkeckMonthlyCardNumber( checkMonthlyCardNumber);
} catch (Exception e) {
logger.error("验证月结卡号密码错误,错误原因:"+e.getMessage(), e);
result.setErrorMessage("验证月结卡号密码错误。");
}

return result;
}

       接口一系列的校验:

public ExpResult<IsNeedPwdRespone>  getResultCkeckMonthlyCardNumber(CheckMonthlyCardNumberRequest checkMonthlyCardNumber)
{
ExpResult<IsNeedPwdRespone> result = new ExpResult<IsNeedPwdRespone>(false);
if(StringUtils.isBlank(checkMonthlyCardNumber.getMonthCard()))
{
result.setErrorMessage("[monthCard][parameter not blank]");
return result;
}
if(StringUtils.isBlank(checkMonthlyCardNumber.getUserId()))
{
result.setErrorMessage("[userId][parameter not blank]");
return result;
}
try {
String requestJson = checkMonthCard(checkMonthlyCardNumber);
logger.info("验证月结卡号密码请求参数:"+requestJson);
Map<String, String> headMap = new HashMap<String, String>();
headMap.put("Content-Type", "application/json");
/** restful接口调用 **/
String returnJson = HttpUtil.post(ckeckMonthlyCardNumberUrl, requestJson, headMap, 100 * 50);
logger.info("验证月结卡号密码返回参数:"+returnJson);
if(StringUtils.isNotBlank(returnJson))
{
ObjectMapper mapper = new ObjectMapper();
result =mapper.readValue(returnJson, new TypeReference<Result<IsNeedPwdRespone>>() {});

return result;
}

result.setErrorMessage("验证月结卡号密码调用接口返回结果为空。");

} catch (Exception e)
{
logger.info("验证月结卡号密码调用接口异常,原因:"+e.getMessage(),e);
result.setErrorMessage("验证月结卡号密码调用接口异常。");


return result;
}

取Json字符中的内容:

public String errorMessage(String str)
{
try {
JSONObject jsonObject = JSONObject.fromObject(str); // 转换成JSONObject对象

return jsonObject.optString("errorMessage"); // 获取data的内容
} catch (Exception e) 
{
logger.error("验证月结卡号密码调用接口取errorMessage错误。"+e,e.getMessage());
}
return "";
}


    Json字符删除其中一个字字符串

public String checkMonthCard(CheckMonthlyCardNumberRequest checkMonthlyCardNumber)
{
try {

String returnJson = JSON.json(checkMonthlyCardNumber);

if(StringUtils.isBlank(checkMonthlyCardNumber.getPassWord()))
{
JSONObject jsonObject1 = JSONObject.fromObject(returnJson); // 转换成JSONObject对象
JSONObject jsonObject2 = jsonObject1.discard("passWord"); //删除数据

return String.valueOf(jsonObject2);
}

return returnJson;

} catch (Exception e)
{
logger.error("验证月结卡号密码调用接口移除密码字段错误。"+e,e.getMessage());
}

return "";
}


自己随便写的,有问题还请留意谢谢。