今天项目中遇到个奇怪的问题。
前台输入的字符中有全角符号,比如:-
后台java端接受到的不是 - ,而是—
数据库中保存的自然也是—
这种情况如果只是数据的保存和显示是没有必要做特殊处理的,因为显示的时候,前台页面会自动将—再转回 -
可是恰好遇到了导入的数据需要和DB数据比较的情况,由于导入的数据是 - ,而DB里面的是—,结果导致两者不匹配。
所以遇到需要比较的数据保存到DB时,可以用下面的方法,将—转为 - 保存:
StringEscapeUtils.unescapeHtml4(str);