문제

JSP 페이지 작성, 정확히 무엇을 하는가 <c:out> 하다? 다음 둘 다 동일한 결과가 있음을 알았습니다.

<p>The person's name is <c:out value="${person.name}" /></p>
<p>The person's name is ${person.name}</p>
도움이 되었습니까?

해결책

c:out HTML 문자를 탈출하여 크로스 사이트 스크립팅을 피할 수 있습니다.

만약에 person.name = <script>alert("Yo")</script>

스크립트는 두 번째 경우에 실행되지만 c:out

다른 팁

Will Wagner와 같이, 이전 버전의 JSP에서는 항상 사용해야합니다. c:out 동적 텍스트를 출력합니다.

또한이 구문을 사용합니다.

<c:out value="${person.name}">No name</c:out>

이름이 null이면 "이름 없음"텍스트를 표시 할 수 있습니다.

c:out 또한 값인 경우 기본값을 할당하기위한 속성도 있습니다. person.name 무효가됩니다.

원천: out (tlddoc 생성 문서)

속성 EscapeXML 값을 true와 동일하게 사용하여 XML 엔티티의 탈출을 명시 적으로 활성화 할 수 있습니다. 참고로, 그것은 기본적으로 "true"입니다.

이전 버전의 JSP는 두 번째 구문을 지원하지 않았습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top