জেএসন-এর জন্য ক্যোয়ারী ভাষা


11

আমার একটি সার্ভার রয়েছে যা খুব বড় JSON বার্তাটি ফিরিয়ে দিচ্ছে এবং আমার ক্লায়েন্ট অ্যাপ্লিকেশনটি কেবল এই প্রতিক্রিয়ার অংশের উপর নির্ভরশীল। ক্লায়েন্ট অ্যাপ্লিকেশনটিকে জেএসওএন বার্তায় "xyz" সম্পত্তি বিদ্যমান কিনা এবং ফলাফলের উপর নির্ভর করে একটি নির্দিষ্ট ইউকেসকে চালানো উচিত তা পরীক্ষা করা দরকার।

এই প্রয়োজনীয়তার জন্য পুরো JSON বার্তাটিকে আপত্তিতে রূপান্তর করা আমার কাছে কিছুটা ব্যয়বহুল এবং তাই এই প্রশ্নটি।

এক্সএমএল-এর মতো আমাদের মতো কোনও আদর্শ জেএসএন কোয়েরি ভাষা আছে কি? যদি হ্যাঁ তবে জাভাতে এই কোয়েরি ভাষার প্রয়োগ সম্পর্কে ভাল best

এফওয়াইআই: সার্ভার সাইডে নতুন পরিষেবা পরিবর্তন করা বা যুক্ত করা কোনও বিকল্প নয়।


জাভাস্ক্রিপ্টে, প্রতিক্রিয়াটি যদি সঠিক শিরোনাম (অ্যাপ্লিকেশন / জেসসন) দিয়ে প্রেরণ করা হয় তবে জেএসওএন প্রতিক্রিয়া একটি জাভাস্ক্রিপ্ট অবজেক্ট হবে। তুমি কি তাই চাচ্ছো? আমি আপনার প্রশ্ন থেকে নিশ্চিত না।
ফ্লোরিয়ান মার্জাইন

@ ফ্লোরিয়ান আমি সম্মত, আমাকে আমার প্রশ্ন আপডেট করতে এবং এটি জাভা নির্দিষ্ট করতে দিন।
ফার্ম

তারপরে, আমি অনুমান করি আপনি json.org/java চেষ্টা করেছেন ? :-)
ফ্লোরিয়ান মার্জাইন

আমি একই জিনিস ভাবছি। তাদেরকে JSON আমি প্রতিটি জাভা লাইব্রেরি দেখা করেছি প্রদর্শিত হয় ভয়ঙ্করভাবে ভারী হতে; লাইন বরাবর সেখানে কিছুই নেই JSON.getString(json_string, 'foo.22.bar')(জন্য, সম্পত্তি "foo বিন্যাস" সম্পত্তি এ তালিকার 22 উপাদানের ক্ষেত্রে "বার", যা একটি স্ট্রিং রয়েছে)
Izkata

বা, প্রতিটি সময় বিশ্লেষণ এড়ানোর JSON baz = new JSON(json_string); baz.getString('foo.22.bar');জন্য, উদাহরণস্বরূপ
ইজকাটা

উত্তর:


6

শুধু জাভাস্ক্রিপ্ট ব্যবহার করবেন না কেন? (জেএসএন হ'ল জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন সর্বোপরি)। তারপরে আপনাকে জেএসওএনকে বিশ্লেষণ বা কৌশল করতে হবে না।

সম্পাদনা করুন http://json.org/java এ দেখুন

এই প্রয়োজনীয়তার জন্য পুরো JSON বার্তাটিকে আপত্তিতে রূপান্তর করা আমার কাছে কিছুটা ব্যয়বহুল এবং তাই এই প্রশ্নটি।

এটা না। কোনও বস্তুর বিশৃঙ্খলা করা সস্তা (বেঞ্চ এটি নিজে পরীক্ষা করুন)। বাহ্যিক এপিআইয়ের সাথে কথা বলা আরও ব্যয়বহুল ক্রম হবে। আপনি স্ট্রিংটি সরাসরি চালনা করতে পারেন যা কিছুটা দ্রুত হতে পারে তবে আপনি বাগের ঝুঁকি নিতে পারবেন, এক্সটেনসিবিলিটি হ্রাস করবেন এবং পঠনযোগ্যতা হ্রাস করবেন। একটি উচ্চ ব্যয়।


আমি আমার প্রশ্ন আপডেট করেছি এবং এটি জাভা নির্দিষ্ট করে তুলেছি।
ফার্ম

জাভাস্ক্রিপ্ট ব্যবহার করা কোনও বিকল্প নয় কারণ ক্লায়েন্ট অ্যাপ্লিকেশন হেডুনাইটে চলছে যা কেবলমাত্র LWUIT সমর্থন রয়েছে
ফার্ম

2

"পরিমাপ, অনুমান করবেন না"। হ্যাঁ অবজেক্ট সিরিয়ালাইজেশন এবং ডিসিরিয়ালাইজেশন আমার তত্ত্বের ক্ষেত্রে ব্যয়বহুল, তবে আপনার আবেদনের পারফরম্যান্সের লক্ষ্যগুলি কী কী? যদি অবজেক্ট (ডি) সিরিয়ালাইজেশন আপনার কর্মক্ষমতা অগ্রহণযোগ্য স্তরে ঠেলা না দেয়, তবে এটি সম্পর্কে চিন্তা করবেন না :-)। পারফরম্যান্সের গণ্ডিগুলি কী হওয়া উচিত তা অবশ্যই জানা (যেমন 2 সেকেন্ডে ব্যবহারকারীর প্রতিক্রিয়া সময়) এবং অনুরোধ / প্রতিক্রিয়া চক্রের প্রতিটি অংশ পরিমাপ করা।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.