POJO类推荐使用封装类如Integer而不使用基本类型int,使用基本类型不能判空,而且查询为null时会报错。
-
使用fastjson提取json数组时,要对此作null判断,不然容易引起NPE异常。
JSONArray relNodes = data.getJSONArray("rel"); // 可以查看fastjson源码,可能返回null // 先做null判断 if (relNodes == null) { //... return ... } // 然后再循环提取 for (Object node: relNodes) { }
Controller层接口返回尽量不要使用JSONObject(耗时更多),而改用Java VO类。
-
不能信任所有Http接口(不管是自己的还是外部的),能异步处理就异步,不能异步也要做异常处理。不要因为http调用拖垮整个程序。
// 改成异步,不能信任何http请求 pool.submit(new Runnable() { @Override public void run() { try { HttpClient.postForm(Constant.NOTIFY_URL, data.toJSONString()); } catch (Exception e) { log.error("{}", e); } } });
SQL语句Where条件字段频繁使用,可以为其增加表索引,这样极大的提高了程序性能。(可以使用System.currentTimeMillis测试一下耗时)
-
使用 entrySet 遍历 Map 类集合 KV,而不是 keySet 方式进行遍历(具体可参考阿里巴巴JAVA开发手册)。
// 如果是jdk8或以上,直接使用Map.forEach方法。 if (!paramsMap.isEmpty()) { paramsMap.forEach((k, v)->{ String value = parseVarService.parseJsonPath(v.toString()); urlParameters.add(new BasicNameValuePair(k, value)); }); }
Java代码(不限于此) 优化
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 本文是我自己在秋招复习时的读书笔记,整理的知识点,也是为了防止忘记,尊重劳动成果,转载注明出处哦!如果你也喜欢,那...
- 不要怕只要你自己做的对 比如如何管理学生,比如早上管理纪律,发书上课(废话不多)等细节。都做的非常讲究到位!你只要...