एक JSP पेज लेखन, <c:out>
वास्तव में क्या करता है? मैंने देखा है कि दोनों निम्नलिखित एक ही परिणाम है: JSP केJSP: JSTL के <c:out> टैग
<p>The person's name is <c:out value="${person.name}" /></p>
<p>The person's name is ${person.name}</p>
एक JSP पेज लेखन, <c:out>
वास्तव में क्या करता है? मैंने देखा है कि दोनों निम्नलिखित एक ही परिणाम है: JSP केJSP: JSTL के <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
ताकि आप क्रॉस-साइट स्क्रिप्टिंग से बच सकते हैं एचटीएमएल पात्रों निकल जाता है।
अगर person.name = <script>alert("Yo")</script>
स्क्रिप्ट दूसरे मामले में निष्पादित किया जाएगा, लेकिन c:out
c:out
नहीं का उपयोग करते समय एक डिफ़ॉल्ट मान बताए अगर person.name
का मान शून्य होता है के लिए एक विशेषता है।
के रूप में विल वैगनर, jsp आप हमेशा उत्पादन गतिशील पाठ करने के लिए c:out
का उपयोग करना चाहिए के पुराने संस्करण में कहा।
इसके अलावा, इस सिंटैक्स का उपयोग:
<c:out value="${person.name}">No name</c:out>
आप पाठ "कोई नाम नहीं" प्रदर्शित कर सकते हैं जब नाम व्यर्थ है।
कूल है! मैं नहीं जानता था कि। –
सहमत, ठंडा। शिक्षण और मदद के लिए धन्यवाद। मैं या तो नहीं जानता था। चीयर्स! –
या
आप स्पष्ट रूप से एक विशेषता escapeXml मान सही पर बराबर होती है का उपयोग करके Xml संस्थाओं के भागने सक्षम कर सकते हैं। एफवाईआई, यह डिफ़ॉल्ट रूप से "सत्य" है।
कुछ उदाहरण कोड वास्तव में इस उत्तर को पूरा करने में मदद करेंगे। – RachelC
केवल अगर 'escapeXML' यह सत्य पर सेट है (सुनिश्चित नहीं है कि यह डिफ़ॉल्ट रूप से है) –
मुझे विश्वास है कि यह डिफ़ॉल्ट रूप से सत्य है। –
एनबी यह XML से बच नहीं है HTML। जेएसटीएल की अधिक परेशान subtleties में से एक। मैं हमेशा अपना खुद का एचटीएमएल एस्केप ईएल एफएन लिखता हूं। –