জেএসএফ এমভিসি কাঠামোর এমভিসি কি উপাদান?


উত্তর:


150

এটি দৃষ্টিকোণের উপর নির্ভর করে (পাং উদ্দেশ্যযুক্ত)।

বড় স্থাপত্যের চিত্রটিতে আপনার নিজের জেএসএফ কোডটি ভি :

এম - বিজনেস ডোমেন / সার্ভিস লেয়ার (যেমন ইজেবি / জেপিএ / ডিএও)
ভি - আপনার জেএসএফ কোড
সি - ফেস সার্ভলেট

বিকাশকারী ছবিতে, স্থাপত্য ভী নীচে হিসাবে বিভাজ্য হয়:

এম - সত্তা
ভি - ফেসলেটস / জেএসপি পৃষ্ঠা
সি - পরিচালিত শিম

ছোট ক্লায়েন্টের ছবিতে, বিকাশকারী ভি নীচে হিসাবে বিভাজ্য হবে:

এম - জেএসএফ উপাদান উপাদান
ভি - রেন্ডার করা এইচটিএমএল আউটপুট
সি - ক্লায়েন্ট (ওয়েব ব্রাউজার )

এখনও ছোট জাভাস্ক্রিপ্ট ছবিতে, ক্লায়েন্ট ভি নীচে হিসাবে বিভাজ্য হবে:

এম - এইচটিএমএল ডিওএম ট্রি
ভি - ভিজ্যুয়াল উপস্থাপনা
সি - ইভেন্ট শ্রোতার ফাংশন (অন্তর্নিহিত ইন্টারঅ্যাকশন এবং অ্যাজাক্স)

সুতরাং এটি মূলত একটি এম (এম (এম (এমভিসি) সি) সি);

নোট করুন যে কিছু সূচনাযোগ্য এমনকি কিছু প্রতিটি মৌলিক টিউটোরিয়ালগুলি ম্যানেজ করা শিমের সত্তার বৈশিষ্ট্যগুলি মিশ্রণ / অনুলিপি / সমতল করে দেয় যা নিয়ামককে কার্যকরভাবে মডেল করে তুলবে make এটি বলাই বাহুল্য এটি দরিদ্র নকশা (অর্থাত্ পরিষ্কার এমভিসি নকশা নয়)।

নিম্নলিখিত উত্তরের কোড স্নিপেটগুলি সঠিক এমভিসি পদ্ধতির চিত্রিত করে:

জাভা EE 8-এ জেএসএফ-এর "ডেফিনিটিভ গাইড টু " বইয়ে , অধ্যায় 8 "ব্যাকিং বিমস" এর পৃষ্ঠা 276 তে, নীচের ভেন চিত্রটি জেএসএফ বিকাশকারী সম্পর্কিত প্রসঙ্গে এমভিসি দৃষ্টান্তে ব্যাকিং শিমের অবস্থান চিত্রিত করতে ব্যবহার করা হয়েছে । কপিরাইট অস্বীকৃতি: বইটি আমার লেখা এবং আমার দ্বারা ছবিটি তৈরি করা হয়েছে।

এখানে চিত্র বর্ণনা লিখুন


+1 উভয় দর্শনের সাথে পুরোপুরি একমত, সাধারণত বড় খিলানের ক্ষেত্রে এটি বেশি হয়। রিয়েল টাইম প্রকল্পে দেখুন।
জিগার জোশী

4
শ্লেষটি পাননি, এখনও উপদ্রব আছে
নিক রাশলার

@ জেফলি আমার কাজকর্মে, আমরা এটি দেখতে পাই যে পরিচালিত মটরশুটি এক্সএইচটিএমএল ভিউ নিয়ন্ত্রণ করে। পরিচালিত মটরশুটি ভিউটির প্রয়োজনীয়তার উপর নির্ভর করে সত্তাগুলি পেতে এবং সংরক্ষণ করতে মডেল কোডের সাথে কথা বলতে পারে।
djeikyb

5
@ জেফ: এটি কেবলমাত্র যদি আপনি এটির মধ্যে মডেল বৈশিষ্ট্যগুলি মিশ্রিত করেন। হিসাবে হিসাবে, <h:inputText value="#{register.username}">পরিবর্তে ব্যবহার <h:inputText value="#{register.user.name}">
BalusC

@ জিগারের একটির ক্ষতির জন্য এই উত্তরটির সাথে পুরোপুরি একমত। আইএমও, পরিচালিত মটরশুটি একটি মডেলের চেয়ে অনেক বেশি। তারা ফেস সার্ভলেটের একধরণের প্রসার, যেখানে সমস্ত মিথস্ক্রিয়া ঘটে। এছাড়াও তারা রাষ্ট্র ধরে রাখতে সক্ষম হয়, তবে এম থেকে অনেক বেশি সি
এক্সট্রিম বাইকার

36

এম ওজেল আপনার হবেManagedBean

ভি ভিউ হবে jsp, XHTML(ভাল আপনি এখানে বিভিন্ন মতামত সমন্বিত করতে পারেন)

সি অনট্রোলার হবেFacesServlet

আপডেট, আশা করি এই ছবিটি আরও সহায়তা করবে

এখানে চিত্র বর্ণনা লিখুন


4
+1, বোধগম্য হয়েছে, যদিও আমি সম্ভবত বলব যে আপনার মডেলটি সত্তা (যদি আপনার কোনও থাকে) এবং নিয়ামক হ'ল পরিচালিত মটরশুটি (ফেসসर्ভলেট ছাড়াও)
শেরভিন

@ জিগার ভাল, যদি FacesServletআমি এর চেয়ে প্রসারণকারী হতে পারি তবে আমি এটি বাড়িয়ে দিতে পারি না। আমার নিজের নিজস্ব নিয়ন্ত্রক থাকতে পারে না ... আমি শেরভিনের সাথে একমত হব যে পরিচালিত বিনগুলি নিয়ামক। শেরভিন, আপনার নিজের বিকল্প উত্তর পোস্ট করার বিষয়ে কীভাবে?
yegor256

4
এটি গোপন FacesServletযা নিয়ন্ত্রণ করছে।
জিগার জোশী

@ জিগার উইকিপিডিয়া বলেছে যে "একজন নিয়ামক ব্যবহারকারীর কাছ থেকে ইনপুট গ্রহণ করে এবং মডেল এবং ভিউপোর্টকে সেই ইনপুটের উপর ভিত্তি করে ক্রিয়া সম্পাদন করার নির্দেশ দেয়।" আমি সন্দেহ করি যে ফেসসर्লেট "মডেলকে নির্দেশ দেয়", তাই না?
ইয়েগার 256

4
আন্ডারকভার ফেসসার্ভলেট অনুরোধ, সেশন, অ্যাপ্লিকেশন প্রসঙ্গে এবং এর প্রক্রিয়া থেকে সমস্ত ডেটা (উপরে স্তরে এটি শিম বলা হয়) গ্রহণ করে।
জিগার জোশী

4

ফেস সার্ভলেট ফেস লাইফাইসাইকেল পরিচালনা করে তাই সেই অর্থে এটি আপনার নিজের কোডের সাথে একত্রিত করা নিয়ামক যা প্রতিটি লাইফাইসাইকেলের পর্যায়ে কল হতে পারে

http://www.java-sample.com/images/jsf-lifecycle.gif


-1

জাভা সার্ভার ফেসসগুলি একটি এমভিসি ওয়েব ফ্রেমওয়ার্ক যেখানে এমভিসি উপাদানগুলি নীচে রয়েছে,

  1. মডেল - এটি @ManagedBean দিয়ে টীকাযুক্ত পরিচালিত শিমের বর্গ যা ডেটা এবং সম্পর্কিত গেটার এবং সেটার রাখার বৈশিষ্ট্যযুক্ত has পরিচালিত শিম শ্রেণিতে ব্যবসায়িক যুক্তিও থাকতে পারে se এগুলি ব্যাকিং শিম হিসাবেও পরিচিত যাগুলির অনুরোধ, সেশন, অ্যাপ্লিকেশন এর মতো বিভিন্ন স্কোপ থাকতে পারে।

  2. দেখুন - ক্লায়েন্টকে .xhtml ফাইলগুলিতে প্রদর্শিত ইউজার ইন্টারফেস। এটি পরিচালিত মটরশুটি থেকে ডেটা পায় এবং এটি প্রতিক্রিয়া হিসাবে রেন্ডার করা হয়।

  3. কন্ট্রোলার - javax.servlet.webapp.Faces সার্ভলেট কেন্দ্রীয়ভাবে নিয়ন্ত্রক শ্রেণি যা মূলত একটি সার্লেট। জেএসএফ-এ আসা যে কোনও অনুরোধ প্রথমে ফেসসर्ভলেট নিয়ন্ত্রকের কাছে যায়। জেএসপির বিপরীতে যেখানে আমরা আমাদের নিজস্ব নিয়ামক শ্রেণি লিখি, জেএসএফ-এ নিয়ামক সার্ভলেট ফ্রেমওয়ার্কের একটি নির্দিষ্ট অংশ এবং আমরা এটি লিখি না।

এমভিসি ফ্লো-

এখানে চিত্র বর্ণনা লিখুন


এটি 36 আপোভোটেড প্রশ্নের অনুরূপ। আপনি যদি মনে করেন যে উত্তরটি আরও পরিষ্কার করা যেতে পারে, দয়া করে এটি সম্পাদনা করুন
কুকল্টজে

@ কুকলেটজে আমি বিশ্বাস করি যে আমার উত্তরের এমভিসি উপাদানগুলির নামকরণের চেয়ে আরও ব্যাখ্যা রয়েছে।
হেতাল রাছ

খুব অল্প কিছু ব্যাখ্যা ... 1: যেহেতু 'ডেটা যুক্ত থাকা' সর্বোত্তম জিনিস নয় (সত্তাগুলিতে থাকা উচিত), ব্যবসায়িক বিষয়, যেহেতু পরিষেবাতে হওয়া উচিত সর্বোত্তম জিনিস নয় (সর্বাধিক উত্সাহিত উত্তরের অতিরিক্ত লিঙ্কগুলি দেখুন ), 2: খুব বেশি 3 নয়: কিছুটা বেশি পাঠ্য কিন্তু অন্য উত্তরের চিত্রটি হারিয়েছে যা আপনি যে পাঠ্য যুক্ত করেছেন তার চেয়ে আরও স্পষ্ট করে তোলে ...
কুকলতজে

@ কুকলতজে ধন্যবাদ তবে আমি জেএসএফের কেবল একজন শিক্ষানবিস।
হেতাল রাছ

সমস্যা নেই. আমি দীর্ঘ সময় ধরে এটি এখন দুর্দান্ত সাফল্যের সাথে ব্যবহার করছি। বাউক শোল্টজ এবং আরজান থিজমসের জাভা ই 8 এবং জেএসএফ বইটিতে আপনার হাত পান। দুর্দান্ত পড়া এবং টিউটোরিয়াল, তবে সমস্ত> 25 টি স্টকওভারফ্লোতে উত্সাহিত কিউ / এ তাদের অস্তিত্বের কথা স্মরণ করুন এবং জেএসএফ 2.3 দিয়ে শুরু করুন এবং
কুকল্টজে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.