现有的项目中,一个公共查询方法,用来查询我们工单的主方法,这个方法应该说,只要用户登录到我们的系统,就会走这个方法,将用户自己的工单查询出来,
这样的话,这个方法就会经常被同时调用。
我们原来代码如下:
private Map<String, String> complexCloum = new HashMap<String, String>();
方法中用这个map拼接sql,导致用户登录到系统,就会停在主界面,主界面提示连接错误,主要原因是因为HashMap是非线程安全的,
修改之后的代码:
private Map<String, String> complexCloum = new ConcurrentHashMap<String, String>();
修改之后,问题得到解决,服务器CPU使用率明显降低。