Java Web开发过程中隐藏很深的问题
(1)企业状态不对
企业的状态由订单状态决定,但是同一个应用,一个企业可以有多个订单,
那么在有多个订单的情况下,企业的状态由那个订单决定呢?
答:由 最新的订单决定.
但是代码逻辑不对:
应该使用有序的for循环:
(2)org.json.JSONObject的getString 方法可能抛出异常
//记录分享人 String sharer=appInfoObject.getString("sharxx"); if(StringUtil.isNullOrEmpty(sharer)){ logger.error("sharxx is :none"); }else{ logger.error("sharxx is :"+sharxx); }
解决方法:使用has判断是否有该key
if(appInfoObject.has("sharer")){ //记录分享人 String sharer=appInfoObject.getString("sharer"); if(StringUtil.isNullOrEmpty(sharer)){ logger.error("sharer is :none"); }else{ logger.error("sharer is :"+sharer); } }
封装成为一个方法:
/*** * 通过key 获取value * * @param jsonObject * @param key * @return * @throws JSONException */ public static String getVal(JSONObject jsonObject, String key) throws JSONException { String val = null; if (!StringUtil.isNullOrEmpty(jsonObject) && jsonObject.has(key)) { val = (String) jsonObject.get(key); } return val; }
(3)