JavaWeb_JavaScript 防止javascript注入
阿新 • • 發佈:2018-12-31
需要進行兩個步驟,
1.在新增的時候將"< / >"符號轉換為轉移字串;
2.獲取資料的時候使用JSTL中的 <c:out value="${xx.kk}"/>
1.在新增的時候將"< / >"符號轉換為轉義字串;
示例:
// 防止javascript 注入: String strings ="<java>test</java>"; // System.out.println(strings.replace("<","<").replace(">",">")); public class StringUtil { public static String getClassShortNameByEntity(Object entity) { String classPackage = entity.getClass().toString(); return classPackage.substring(classPackage.lastIndexOf(".") + 1); } public static String getHtmlIncodeByString(String str) { if (null != str && !"".equals(str)) { return str.trim().replace("<", "<").replace(">", ">"); } return null; } }
2.獲取資料的時候使用JSTL中的 <c:out value="${xx.kk}"/>
<td class="showHidden" onmouseover="showDetail(this,'<c:out value="${userLeave.remark }"/>')" onmouseout="hiddenDetail(this,'<c:out value="${userLeave.remark }"/>')">
<c:out value="${userLeave.remark }"/>
</td>