হ্যাঁ, হ্যাঁ আমি জানি যে এই বিষয়টি সম্পর্কে প্রচুর প্রশ্ন করা হয়েছিল। তবে আমি এখনও আমার সমস্যার সমাধান খুঁজে পাচ্ছি না। আমার কাছে জাভা অবজেক্টে টিকা আছে এমন একটি সম্পত্তি রয়েছে। উদাহরণস্বরূপ গ্রাহক যেমন উদাহরণস্বরূপ । এবং আমি এটির একটি স্ট্রিং প্রতিনিধিত্ব চাই। গুগল এই জাতীয় উদ্দেশ্যে JAXB ব্যবহার করে পুনরুদ্ধার করে। তবে তৈরি করা সমস্ত উদাহরণে এক্সএমএল ফাইলটি ফাইল বা কনসোলে প্রিন্ট করা হয়, যেমন:
File file = new File("C:\\file.xml");
JAXBContext jaxbContext = JAXBContext.newInstance(Customer.class);
Marshaller jaxbMarshaller = jaxbContext.createMarshaller();
// output pretty printed
jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
jaxbMarshaller.marshal(customer, file);
jaxbMarshaller.marshal(customer, System.out);
তবে আমাকে এই অবজেক্টটি ব্যবহার করতে হবে এবং এক্সএমএল ফর্ম্যাটে নেটওয়ার্কের মাধ্যমে পাঠাতে হবে। সুতরাং আমি একটি স্ট্রিং পেতে চাই যা এক্সএমএলকে উপস্থাপন করে।
String xmlString = ...
sendOverNetwork(xmlString);
কিভাবে আমি এটি করতে পারব?
StringWriter
খুব পুরানো। কভারগুলির নীচে এটি ব্যবহার করেStringBuffer
যেখানে আরও দ্রুত পদ্ধতির ব্যবহার করা হতStringBuilder
তবে স্ট্রিং রাইটারটি প্রথম তৈরি করার সময় এটি উপস্থিত ছিল না। এর কারণে প্রতিটিsw.toString()
কলই সুসংগতভাবে বোঝায়। খারাপ যদি আপনি পারফরম্যান্স খুঁজছেন।