উত্তর:
@Controller
, যেখানে আপনি এমন পদ্ধতি প্রয়োগ করেন যেখানে আপনি বিভিন্ন HTTP অনুরোধগুলি ব্যবহার করে অ্যাক্সেস করতে পারেন। এটি @RestController
REST- ভিত্তিক API গুলি বাস্তবায়নের সমতুল্য ।সুতরাং, স্প্রিং এমভিসি ওয়েব অ্যাপ্লিকেশনগুলিতে ব্যবহৃত একটি কাঠামো এবং স্প্রিং বুট হ'ল একটি বসন্ত ভিত্তিক উত্পাদন-প্রস্তুত প্রকল্প সূচক initial আপনি স্প্রিং এমভিসি ট্যাগ উইকি পাশাপাশি এসওতে স্প্রিং বুট ট্যাগ উইকি পরিদর্শন করতে দরকারী হতে পারেন ।
Spring Boot
পারি তার সাথে ওয়েব কার্যকারিতাটি পূরণ করতে Spring MVC
?
স্প্রিং এমভিসি এবং স্প্রিং বুট অন্যান্য উত্তরে ভালভাবে বর্ণনা করা হয়েছে, এবং তাই এটির পুনরাবৃত্তি না করে আমাকে সরাসরি স্পেসিফিকেশনে যেতে দাও। স্প্রিং বুট এবং স্প্রিং এমভিসি তুলনাযোগ্য বা পারস্পরিক একচেটিয়া নয়। আপনি যদি স্প্রিং ব্যবহার করে ওয়েব অ্যাপ্লিকেশন বিকাশ করতে চান তবে আপনি যেভাবেই স্প্রিং এমভিসি ব্যবহার করতে পারেন । আপনার প্রশ্নটি তখন স্প্রিং বুট ব্যবহার করবে কিনা তা হয়ে যায় ।
সাধারণ স্প্রিং অ্যাপ্লিকেশনগুলি বিকাশ করার জন্য বা স্প্রিং শিখতে শুরু করার জন্য, আমি মনে করি স্প্রিং বুট ব্যবহার করার পরামর্শ দেওয়া হবে। এটি কাজটি যথেষ্টভাবে সহজ করে দেয়, উত্পাদন প্রস্তুত এবং দ্রুত ব্যাপকভাবে গৃহীত হচ্ছে।
আমি মাঝে মাঝে নতুনদের এই প্রশ্নটি জিজ্ঞাসা করতে দেখেছি কারণ এসটিএসে (স্প্রিং টুল স্যুট) দুটি উইজার্ড রয়েছে: একটি স্প্রিং বুট প্রকল্প তৈরির জন্য এবং অন্যটি একটি স্প্রিং এমভিসি প্রকল্প তৈরির জন্য। সুতরাং, আমার সুপারিশটি হ'ল একটি স্প্রিং বুট প্রকল্প তৈরি করা এবং এটিতে মডিউল হিসাবে ওয়েবটি বেছে নেওয়া।
এটি পার্থক্য দেখানোর চিত্রযুক্ত উপস্থাপনা। আরও তথ্যের জন্য
দয়া করে এই লিঙ্কটি দেখুন:
সাধারণ শব্দে এটি হিসাবে বলা যেতে পারে:
Spring boot = Spring MVC + Auto Configuration(Don't need to write spring.xml file for configurations) + Server(You can have embedded Tomcat, Netty, Jetty server).
এবং স্প্রিং বুট একটি মতামত কাঠামো, সুতরাং এটির বিকাশ দ্রুত বিকাশের জন্য বিবেচনা করা, কনফিগারেশনের জন্য কম সময় প্রয়োজন এবং খুব ভাল সম্প্রদায়ের সমর্থন রয়েছে।
Spring MVC
এমভিসি (মডেল-ভিউ-কন্ট্রোলার) প্যাটার্ন ব্যবহার করে এমন অ্যাপ্লিকেশনগুলির লক্ষ্যবস্তু নকশা এবং বিকাশকে স্প্রিং ফ্রেমওয়ার্কের একটি উপ-প্রকল্প। স্প্রিং এমভিসি স্প্রিং ফ্রেমওয়ার্ক এবং ট্রানজিটিভালি, বেশিরভাগ অন্যান্য সাব-প্রকল্পের সাথে সম্পূর্ণ এবং সম্পূর্ণ সংহত করার জন্য ডিজাইন করা হয়েছে।
Spring Boot
স্প্রিং ইঞ্জিনিয়ারিং দল এই নিবন্ধটি থেকে বেশ ভালভাবে বোঝা যায় । এটি ধারণা করা হয়, অর্থাত্ এটি দ্রুত বিকাশের একটি নির্দিষ্ট শৈলীর পক্ষে প্রচুর পরিমাণে সমর্থন করে তবে আপনি যদি চান তবে এটি নিয়মের ব্যতিক্রমগুলিকে সামঞ্জস্য করার জন্য যথেষ্টভাবে নকশা করা হয়েছে। সংক্ষেপে, এটি কনফিগারেশন পদ্ধতি সম্পর্কিত একটি কনভেনশন যা ওয়্যারেন্টেড হলে কনভেনশন ভাঙার আপনার প্রয়োজনীয়তা বুঝতে আগ্রহী।
এখানে কিছু মূল বিষয় যা স্প্রিং, স্প্রিং এমভিসি এবং স্প্রিং বুটকে পৃথক করে:
বসন্ত:
স্প্রিং এমভিসি
স্প্রিং বুট:
(বিবর্তনের মতো: স্প্রিং -> স্প্রিং এমভিসি -> স্প্রিং বুট, সুতরাং আরও নতুন সংস্করণে পুরানো সংস্করণ বৈশিষ্ট্যের সামঞ্জস্য রয়েছে)) দ্রষ্টব্য: এতে সমস্ত পয়েন্ট নেই।
স্প্রিংবুটটি আসলে পূর্বনির্ধারিত যা বয়লার কনফিগারেশন হ্রাস করে এবং আপনার অ্যাপ্লিকেশন শুরু করার সহজতম বা দ্রুত উপায় সরবরাহ করে।
স্প্রিংবুট স্প্রিংয়ের পরিবর্তে বিকাশকারী থেকে এটি নিজস্ব হয়ে কনফিগারেশনের মাথা ব্যাথা নিয়ে যায়।
স্পষ্টতই স্প্রিংবুট স্প্রিং ফ্রেমওয়ার্ক কনসেপ্ট যেমন সিম, নিয়ামক, পরিষেবাদি, জেপিএ ইত্যাদির উপর ভিত্তি করে is
আপনি বলতে পারেন যে স্প্রিংবুটটি স্প্রিংয়ের একটি মোড়ক।
স্প্রিংবুটে সার্ভারের ডিফল্ট পোর্টটি 8080 হয় তবে আপনি যদি পরিবর্তন করতে চান তবে আপনার অ্যাপ্লিকেশনটিতে যান p
সার্ভার.পোর্ট = 8084
স্প্রিং বুট ব্যবহার করে আপনাকে কনফিগারেশন তৈরি করতে হবে না। আপনি প্রকল্প তৈরি করার সময় এটি স্বয়ংক্রিয়ভাবে সম্পন্ন হবে।
আপনি যদি বসন্তের এমভিসি ব্যবহার করেন তবে আপনাকে নিজেরাই কনফিগারেশন তৈরি করতে হবে। এটি আরও জটিল, তবে এটি গুরুত্বপূর্ণ।
পূর্ববর্তী
উত্তরে একই জিনিসটির পুনরাবৃত্তি না করে, আমি এই উত্তরটি সেই লোকদের জন্য লিখছি যারা একটি নতুন প্রকল্প শুরু করতে চাইছেন এবং জানেন না যে আপনার প্রকল্পটি শুরু করার জন্য সেরা কাঠামোটি কোনটি। আপনি যদি এই কাঠামোর প্রারম্ভিক হন তবে আমি পছন্দ করি সেরা জিনিসটি হ'ল স্প্রিং বুট (এসটিএস / স্প্রিং টুল স্যুট সহ )। কারণ এটি অনেক সাহায্য করে। এটি নিজস্ব কনফিগারেশনগুলি করে। অতিরিক্তভাবে, একটি ডাটাবেস কাঠামো হিসাবে স্প্রিং-বুট সহ হাইবারনেট ব্যবহার করুন । এই সংমিশ্রণের সাথে আপনার অ্যাপ্লিকেশনটি সেরা হবে। আমি আমার অভিজ্ঞতার সাথে গ্যারান্টি দিতে পারি।
এমনকি এটি JEE এর জন্য অন্যতম সেরা ফ্রেমওয়ার্ক (বর্তমানে) এটি অদূর ভবিষ্যতে মরে যাচ্ছে। হালকা ওজনের বিকল্প আসছে। সুতরাং আপনার অভিজ্ঞতার সাথে আপডেট রাখুন কোনও একটি নির্দিষ্ট কাঠামোর সাথে লেগে থাকবেন না। ফ্রেমওয়ার্কে নয়, ধারণাগুলিতে সবচেয়ে ভাল জিনিসটি সাবলীল হচ্ছে।
এইভাবে চিন্তা করুন:
এমভিসি আর্কিটেকচার বাস্তবায়নের জন্য স্প্রিং এমভিসি একটি ওয়েব ভিত্তিক কাঠামো।
স্প্রিং বুট প্রোগ্রামারকে কেন্দ্র করে তৈরি একটি সরঞ্জাম। প্রোগ্রামার অবশ্যই প্রোগ্রামিংয়ে ফোকাস করতে হবে এবং সরঞ্জাম অবশ্যই কনফিগারেশনের উপর ফোকাস করবে। তাই সাধারণ 'হ্যালো ওয়ার্ল্ড' বানাতে আমাদের বেশিরভাগ এক্সএমএল কনফিগার করার দরকার নেই।
স্প্রিং এমভিসি এবং স্প্রিং বুট বিভিন্ন উদ্দেশ্যে বিদ্যমান। সুতরাং, একে অপরকে প্রতিযোগী হিসাবে তুলনা করা বুদ্ধিমানের কাজ নয়।
স্প্রিং বুট কি?
স্প্রিং বুটটি বুদ্ধিমান ডিফল্ট সহ বসন্ত অ্যাপ্লিকেশন প্যাকেজিংয়ের একটি কাঠামো। এটার মানে কি?. আপনি স্প্রিং এমভিসি, স্প্রিং ডেটা, হাইবারনেট এবং টমক্যাট ব্যবহার করে একটি ওয়েব অ্যাপ্লিকেশন বিকাশ করছেন। আপনি কীভাবে আপনার ওয়েব সার্ভারে এই অ্যাপ্লিকেশনটিকে প্যাকেজ এবং স্থাপন করবেন। এখন পর্যন্ত, ওয়েব সার্ভারে মোতায়েনের জন্য আমাদের ম্যানুয়ালি কনফিগারেশন, এক্সএমএল ফাইল ইত্যাদি লিখতে হবে।
আপনার প্রকল্পের জিরো এক্সএমএল কনফিগারেশন সহ স্প্রিং বুট এটি করে। বিশ্বাস করুন, আপনার ডিপ্লোয়মেন্ট ডেস্ক্রিপ্টর, ওয়েব সার্ভার ইত্যাদির দরকার নেই। স্প্রিং বুটটি যাদুকরী কাঠামো যা আপনার জন্য সমস্ত নির্ভরতা বান্ডিল করে। অবশেষে আপনার ওয়েব অ্যাপ্লিকেশনটি এম্বেড করা সার্ভার সহ একক জেআর ফাইল হবে।
এটি কীভাবে কাজ করে তা আপনি এখনও বিভ্রান্ত থাকলে, দয়া করে বসন্ত বুট ব্যবহার করে মাইক্রোসার্চিস ফ্রেমওয়ার্ক বিকাশ সম্পর্কে পড়ুন।
স্প্রিং এমভিসি কী?
এটি একটি traditionalতিহ্যবাহী ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক যা আপনাকে ওয়েব অ্যাপ্লিকেশনগুলি তৈরি করতে সহায়তা করে। এটি স্ট্রুটস কাঠামোর সাথে সমান।
একটি স্প্রিং এমভিসি একটি জাভা ফ্রেমওয়ার্ক যা ওয়েব অ্যাপ্লিকেশনগুলি তৈরি করতে ব্যবহৃত হয়। এটি মডেল-ভিউ-কন্ট্রোলার ডিজাইন প্যাটার্ন অনুসরণ করে। এটি একটি মূল স্প্রিং ফ্রেমওয়ার্কের সমস্ত মূল বৈশিষ্ট্যগুলি যেমন ইনভার্শন অফ কন্ট্রোল, নির্ভরতা ইনজেকশন প্রয়োগ করে।
একটি স্প্রিং এমভিসি ডিসপ্যাচারসারভাইলেটের সাহায্যে বসন্তের ফ্রেমওয়ার্কে এমভিসি ব্যবহারের জন্য একটি মার্জিত সমাধান দেয়। এখানে, ডিসপ্যাচারসারভ্লেট এমন এক শ্রেণি যা আগত অনুরোধটি গ্রহণ করে এবং এটি নিয়ামক, মডেল এবং মতামতের মতো সঠিক উত্সে মানচিত্র করে।
আমি আশা করি এটি আপনাকে পার্থক্য বুঝতে সাহায্য করবে।