public class HelloWorld extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException{
**response.setContentType("text/html");**
PrintWriter pw = response.getWriter();
pw.println("<html>");
pw.println("<head><title>Hello World</title></title>");
pw.println("<body>");
pw.println("<h1>Hello World</h1>");
pw.println("</body></html>");
}
}
servlet
उत्तर
सामग्री प्रकारों को HTTP प्रतिक्रियाओं में शामिल किया गया है, क्योंकि सामग्री में मूल्यों के बाइट अनुक्रम के लिए बाइट को और अधिक में व्याख्या किया जा सकता है, तो "response.setContentType (" text/html ")" का उपयोग क्या है। एक तरफ से। (*)
याद रखें कि http केवल HTML (जेएस, सीएसएस और छवियां स्पष्ट उदाहरण हैं) से अधिक परिवहन कर सकती हैं, और कुछ मामलों में, रिसीवर को यह नहीं पता होगा कि यह किस प्रकार की ऑब्जेक्ट प्राप्त करने जा रहा है।
(*) यहां स्पष्ट एक एक्सएचटीएमएल है - जो एक्सएमएल है। यदि इसे application/xml
की सामग्री प्रकार के साथ परोसा जाता है, तो रिसीवर को एक्सएमएल के रूप में समझने के लिए चाहिए। यदि इसे application/xhtml+xml
के रूप में कार्य किया गया है, तो इसे एक्सएचटीएमएल के रूप में माना जाना चाहिए।
मैं सभी सामग्री प्रकारों की एक सूची कहां प्राप्त कर पाऊंगा? उदाहरण के लिए, अगर मैं एक बूलियन वापस करना चाहता था, तो क्या मुझे इसे JSON ऑब्जेक्ट के रूप में सेट करना होगा और फिर तदनुसार इसे परिवर्तित करना होगा (यानी जीएसओएन का उपयोग करना)? – tccpg288
@ tccpg288 यहां: https://www.iana.org/assignments/media-types/media-types.xhtml और संबंधित प्रश्न: https://stackoverflow.com/questions/23714383/what-are-all-the- संभव-मूल्य-के लिए-http-content-type-header – ylka
यह MIME
प्रकार में से एक है, इस मामले में आप MIME
text/html
पर प्रतिक्रिया देते हैं इसका मतलब है कि यह HTML प्रकार प्रदर्शित करता है। यह ब्राउज़र के लिए एक जानकारी है। अन्य प्रकार आप एक्सेल प्रदर्शित करने के लिए सेट कर सकते हैं ज़िप आदि अधिक जानकारी के लिए MIME Type
देख रहे हैं,
इसका मतलब यह आप ग्राहक के लिए भेजना चाहते हैं प्रतिक्रिया किस प्रकार, कुछ सामग्री प्रकार की तरह:
res.setContentType("image/gif");
res.setContentType("application/pdf");
res.setContentType("application/zip");
response.setContenType("text/html");
ऊपर दिए गए कोड को प्रतिक्रिया के प्रारूप के बारे में ब्राउज़र को सूचित करने के लिए "HTTP प्रतिक्रिया" में शामिल किया जाएगा, ताकि ब्राउज़र इसकी व्याख्या कर सके।
JavaEE डॉक्स ServletResponse#setContentType
से सेट प्रतिक्रिया की सामग्री प्रकार ग्राहक के लिए भेजा जा रहा है, अगर प्रतिक्रिया अभी तक प्रतिबद्ध नहीं किया गया है।
दिया सामग्री प्रकार एक वर्ण एन्कोडिंग विनिर्देश, उदाहरण के लिए,
response.setContentType("text/html;charset=UTF-8");
प्रतिक्रिया के वर्ण एन्कोडिंग केवल दिए गए सामग्री प्रकार से सेट किया गया है शामिल हो सकते हैं अगर
getWriter
से पहले इस विधि को बुलाया जाता है।इस विधि को सामग्री प्रकार और वर्ण एन्कोडिंग बदलने के लिए बार-बार कहा जा सकता है।
प्रतिक्रिया के बाद बुलाए जाने पर इस विधि का कोई प्रभाव नहीं पड़ता है। यह प्रतिक्रिया के चरित्र एन्कोडिंग को सेट नहीं करता है अगर इसे
getWriter
के बाद बुलाया गया है या प्रतिक्रिया के बाद कहा गया है।कंटेनर को सामग्री प्रकार और क्लाइंट एन्कोडिंग को क्लाइंट को सर्वलेट प्रतिक्रिया के लेखक के लिए उपयोग किया जाना चाहिए यदि प्रोटोकॉल ऐसा करने का तरीका प्रदान करता है। HTTP के मामले में, सामग्री-प्रकार शीर्षलेख का उपयोग किया जाता है।
डिफ़ॉल्ट सामग्री पर कोई विचार टाइप और वर्ण एन्कोडिंग अगर कोई स्पष्ट रूप से निर्दिष्ट नहीं है? – Bateman
आप ब्राउज़र क्या तुम वापस भेज रहे हैं बताने के लिए इतना है कि ब्राउज़र वीडियो फ़ाइल खेलने के लिए अगर इसकी एक पीडीएफ है कि प्राप्त की जा रही एक व्यूअर के शुरू करने या एक वीडियो खिलाड़ी की शुरूआत की तरह उचित कार्रवाई कर राशि , एचटीएमएल को प्रस्तुत करना यदि सामग्री प्रकार सरल HTML प्रतिक्रिया है, तो डाउनलोड की गई फ़ाइल के रूप में प्रतिक्रिया के बाइट्स को सहेजें,
कुछ सामान्य एमआईएम प्रकार टेक्स्ट/एचटीएमएल, एप्लिकेशन/पीडीएफ, वीडियो/क्विकटाइम, एप्लिकेशन/जावा हैं , छवि/जेपीईजी, आवेदन/जार आदि
आपके मामले में जब से आप HTML आर भेज रहे हैं क्लाइंट को esponse आपको सामग्री प्रकार को टेक्स्ट/एचटीएमएल
ओपी को यह बताने के अलावा कि उन्हें क्या करना है, आपको वास्तव में यह समझाना चाहिए कि यह कैसे करना है (आमतौर पर, इसका मतलब कोड के साथ है।) इसके अलावा, इस पोस्ट में पहले से ही पांच उत्तर हैं, जिनमें से एक स्वीकार किया गया है, और चार साल से है पहले। इस प्रकार, मैं अनुशंसा करता हूं कि आप नए प्रश्नों का उत्तर देने का प्रयास करें। – ostrichofevil
- 1. servlet
- 2. Servlet
- 3. Servlet 2.5 में ServletRequest से Servlet Context कैसे प्राप्त करें?
- 4. स्प्रिंग @ सर्वलेट में Servlet
- 5. servlet में threadlocal चर
- 6. javabean vs servlet
- 7. कैशिंग छवियों servlet
- 8. Google Guice Servlet
- 9. maven + eclipse + servlet-api.jar
- 10. प्रतीक्षा() पर Servlet फेंकता अपवाद
- 11. Google App Engine/Java Servlet
- 12. Servlet फ़िल्टर? (DOS, स्पैम, आदि)
- 13. मैं servlet-api.jar कहां से प्राप्त करूं?
- 14. ServletException को Servlet से फेंकना ठीक है?
- 15. क्या मुझे servlet outputstream को फ्लश करने की आवश्यकता है?
- 16. मैं अपने grails ऐप में servlet का उपयोग कैसे करूं?
- 17. servlet में getLocalPort() और getServerPort() के बीच अंतर
- 18. क्या tomcat servlet में jsessionid को अक्षम करना संभव है?
- 19. आप servlet से web.xml का निरीक्षण कैसे करते हैं?
- 20. Serv.sendRedirect() Servlet से JSP तक काम नहीं कर रहा है
- 21. ServletRequest और Servlet में प्रतिक्रिया स्टोर करने के लिए ThreadLocal: क्या के लिए?
- 22. Servlet के साथ फ़ाइलों को डाउनलोड करते समय GWT का उपयोग कैसे करें?
- 23. जेटी 7 को जेटी 8 अपडेट करना: java.lang.NoClassDefFoundError: javax/servlet/filterRegistration
- 24. सर्वर पर चलाए जाने पर, ग्रहण - टॉमकैट - java.lang.NoClassDefFoundError: javax/servlet/ServletConfig
- 25. टोमकैट java.lang के तहत। NoClassDefFound त्रुटि जब एक servlet तक पहुँचने?
- 26. servlet थ्रेड में काम करने के बजाय startAsync के साथ नया धागा क्यों बनाएं?
- 27. क्या Servlet के काम से पहले या उसके बाद निष्पादित किया गया है?
- 28. <servlet-name> web.xml के <filter-mapping> के अंदर, इसका क्या अर्थ है?
- 29. web.xml servlet init-param को बाहरी कैसे करें? Servlets के लिए वसंत DelegatingFilterProxy?
- 30. मुझे कैसे पता चलेगा कि servlet-api.jar का कौन सा संस्करण है?
के रूप में सेट करना होगा, यह मूल रूप से क्लाइंट (वेबब्रोसर) को बताता है कि यह किस प्रकार का सामग्री है ताकि यह जान सके कि इसके साथ क्या किया जाए। नोट किया जाना चाहिए कि अब तक दिखाया गया कोड खराब अभ्यास माना जाता है। एचटीएमएल कोड जेएसपी फाइल में है। यह भी देखें http://stackoverflow.com/tags/servlets/info – BalusC