java - How to save and load an image on a Tomcat server -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 2 जवाब

    मैं एक जावा लिख ​​रहा हूँ ईई आवेदन, और मैं एक यूआरएल से एक छवि प्राप्त करने का प्रयास करता हूं तो इसे मेरे संसाधन फोल्डर में सहेजें (एक AJAX अनुरोध के माध्यम से)। मेरी समस्या यह है कि यदि मैं अपने सर्वर को रिबूट नहीं करता तो मैं इस छवि को प्रदर्शित नहीं कर पा रहा हूं क्योंकि यह मेरे सर्वर पर लोड नहीं है।

    मैं टोमकैट 7, स्प्रिंग, हाइबरनेट, प्राइफाफास का उपयोग कर रहा हूं।

    मेरी फ़ील्ड को बचाने के लिए मेरा वर्ग है

      सार्वजनिक वर्ग ImageSaver {अंतिम स्थिर इंट = 1024; सार्वजनिक स्थिर शून्य फ़ाइल यूआरएल (स्ट्रिंग एफएडडर, स्ट्रिंग लोकलफ़ाइलनाम, स्ट्रिंग गैलरीडिर) {आउटपुटस्ट्रीम आउटस्ट्रीम = रिक्त; यूआरएल कनेक्शन यूसीन = नल; InputStream = नल है; {URL url = नया URL (एफएड्रेस) आज़माएं; बाइट [] buf; Int byteRead; Int byteWritten = 0; आउटस्ट्रीम = नया BufferedOutputStream (नया FileOutputStream (destinationDir + "\\" + localFileName)); UCon = url.openConnection (); है = uCon.getInputStream (); Buf = नया बाइट [आकार]; जबकि ((बाइट रीड = है। रीड (बफ़)) = -1) {आउटस्ट्रीम.लिखित (बफ़, 0, बाइट रीड); बाइट लिखित + = बाइट रीड; }} पकड़ (अपवाद ई) {e.printStackTrace (); } अंत में {try {is.close () है; outStream.close (); } पकड़ (IOException ई) {e.printStackTrace (); }}} सार्वजनिक स्थिर शून्य फ़ाइल डाउनलोड (स्ट्रिंग fAddress, स्ट्रिंग फाइलनाम, स्ट्रिंग गंतव्य डिर) {int slashIndex = fAddress.lastIndexOf ('/'); इंट अवधि इंडैक्स = fAddress.lastIndexOf ('।'); // स्ट्रिंग फ़ाइलनाम = fAddress.substring (slashIndex + 1); यदि (अवधि इंडैक्स> = 1 & amp; amp; स्लैश इंडैक्स & gt; = 0 & amp; amp; और & amp; स्लैश इंडेक्स & lt; fAddress.length () - 1) {} अन्य {सिस्टम। }}}   

    और जिस तरह से मैं फ़ंक्शन कॉल करता हूं:

      ImageSaver.fileDownload ("http://www.mywebsite.com/myImage.jpg "," MyImage.jpg "," सी: \\ उपयोगकर्ता \\ मेरा प्रोजेक्ट \\ src \\ मुख्य \\ webapp \\ संसाधन \\ चित्र ");   

    मैं अपने अपलोड की गई छवि को बिना किसी रिबूट के काम पर कैसे लोड कर सकता हूँ? कौन सा फ़ाइल अपलोड फ़ोल्डर के कॉन्फ़िगरेशन की अनुमति देता है? और कैसे?

    आपको अपने वेबएप के फ़ोल्डर में गतिशील रूप से चित्रित छवियां नहीं लिखनी चाहिए - यह आपके लिए खुलती है समस्याओं की पूरी श्रेणी इसके बजाय, उन्हें एसेसरवर की मूल निर्देशिका के बाहर फ़ोल्डर में सहेजें और एक डाउनलोड सर्वलेट बनाएं जो इन संसाधनों को पूरा करेगा।

    खतरा अन्यथा यह है कि आप बाहरी स्रोतों से कुछ जेएसपी फ़ाइल पुनः प्राप्त करेंगे, उन्हें बचाने के लिए आपका एपसेरवर और डाउनलोड करने पर एपसेरर खुशी से इसे सर्वर साइड पर अमल करेगा।

    अपने वेबपेज की निर्देशिका को अपने वेबपेज पर लिखने योग्य नहीं मानिए। इससे बैकअप और अपडेट भी कम हो जाएंगे: कल्पना कीजिए आपको किसी अपडेट को स्थापित करना होगा या किसी भिन्न सर्वर पर माइग्रेट करना होगा: आपके सर्वर पर मौजूद एप्लिकेशन को केवल * .war फ़ाइल में आंशिक रूप से शामिल किया जाएगा। यदि कोई स्पष्ट संसाधन निर्देशिका है, तो आप इसे स्वतंत्र रूप से वापस कर सकते हैं (या उसे एक नेटवर्क साझा ड्राइव पर डाल सकते हैं)

Comments

Popular posts from this blog

excel vba - How to delete Solver(SOLVER.XLAM) code -

github - Teamcity & Git - PR merge builds - anyway to get HEAD commit hash? -

ios - Replace text in UITextView run slowly -