একটি বিন একটি POJO (সমতল পুরাতন জাভা অবজেক্ট), যা বসন্তের ধারক দ্বারা পরিচালিত হয়।
স্প্রিং পাত্রে ডিফল্টভাবে শিমের একটিমাত্র উদাহরণ তৈরি করে। এই বিন এটি মেমোরিতে ক্যাশে করা হয়েছে যাতে শিমের জন্য সমস্ত অনুরোধগুলি একই বিনের ভাগ করে নেওয়া রেফারেন্সটি ফিরিয়ে দেবে।
@ বিয়ান টীকাগুলি এমন একটি বস্তু ফেরত দেয় যা স্প্রিং হিসাবে প্রয়োগের প্রসঙ্গে শিম হিসাবে নিবন্ধিত হয়। পদ্ধতির অভ্যন্তরের যুক্তি দৃষ্টান্ত তৈরির জন্য দায়ী।
আমরা কখন বিয়ান এনোটেশন ব্যবহার করব?
যখন স্বয়ংক্রিয় কনফিগারেশন কোনও বিকল্প নয়। উদাহরণস্বরূপ যখন আমরা কোনও তৃতীয় পক্ষের লাইব্রেরি থেকে উপাদানগুলি তারের করতে চাই, কারণ উত্স কোডটি উপলভ্য নয় তাই আমরা @ সংস্থার সাথে ক্লাসগুলি বর্নিত করতে পারি না।
রিয়েল টাইম দৃশ্যাবলীটি এমন হতে পারে যে কেউ অ্যামাজন এস 3 বালতির সাথে সংযোগ স্থাপন করতে চায়। উত্সটি উপলভ্য না হওয়ায় তাকে @ বিবিয়ান তৈরি করতে হবে।
@Bean
public AmazonS3 awsS3Client() {
BasicAWSCredentials awsCreds = new BasicAWSCredentials(awsKeyId, accessKey);
return AmazonS3ClientBuilder.standard().withRegion(Regions.fromName(region))
.withCredentials(new AWSStaticCredentialsProvider(awsCreds)).build();
}
উপরের কোডটির উত্স -> https://www.devglan.com/spring-mvc/aws-s3-java
কারণ আমি উপরে @ কম্পোনেন্ট টীকা উল্লেখ করেছি।
@ কম্পোনেন্টটি নির্দেশ করে যে কোনও টীকাগুলি শ্রেণি একটি "উপাদান"। এ্যানোটেশন-ভিত্তিক কনফিগারেশন এবং ক্লাস পাথ স্ক্যানিং ব্যবহার করার সময় এই জাতীয় ক্লাসগুলি স্বতঃ-সনাক্তকরণের প্রার্থী হিসাবে বিবেচিত হয়।
উপাদান টীকা ক্লাসটি একক বিন হিসাবে নিবন্ধিত করে।