1. 程式人生 > >JavaWeb_JavaScript 防止javascript注入

JavaWeb_JavaScript 防止javascript注入

需要進行兩個步驟,

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>