क्या कोटलिन में निम्नलिखित कुछ करना संभव है?स्प्रिंग एनोटेशन का उपयोग कैसे करें @ kutlin में @Autowired?
@Autowired
internal var mongoTemplate: MongoTemplate
@Autowired
internal var solrClient: SolrClient
क्या कोटलिन में निम्नलिखित कुछ करना संभव है?स्प्रिंग एनोटेशन का उपयोग कैसे करें @ kutlin में @Autowired?
@Autowired
internal var mongoTemplate: MongoTemplate
@Autowired
internal var solrClient: SolrClient
यकीन है कि यह संभव है के लिए, आप कुछ ही विकल्प हैं, मैं एनोटेट निर्माता सुझाव है, लेकिन lateinit यह भी काम करता है, और कुछ मामलों में हो सकता है उपयोगी:
Lateinit:
@Component
class YourBean {
@Autowired
lateinit var mongoTemplate: MongoTemplate
@Autowired
lateinit var solrClient: SolrClient
}
कंस्ट्रक्टर: स्प्रिंग 4.3 के साथ
@Component
class YourBean @Autowired constructor(
private val mongoTemplate: MongoTemplate,
private val solrClient: SolrClient
) {
// code
}
कंस्ट्रक्टर:
@Component
class YourBean(
private val mongoTemplate: MongoTemplate,
private val solrClient: SolrClient
) {
// code
}
निर्माता संस्करण की जांच सब पर निर्भरता बीन निर्माण समय और सभी इंजेक्शन वाले फ़ील्ड - वैल, दूसरी ओर देर से इंजेक्शन वाले क्षेत्र हो सकते हैं केवल var, और थोड़ा रनटाइम पदचिह्न है। और रचनाकार के साथ कक्षा का परीक्षण करने के लिए, आपको प्रतिबिंब की आवश्यकता नहीं है।
लिंक:
हां, जावा एनोटेशन को कोटलिन में ज्यादातर जावा में समर्थित हैं। एक पकड़ लिया प्राथमिक निर्माता पर भी टिप्पणियां स्पष्ट 'निर्माता' कीवर्ड की आवश्यकता है:
से https://kotlinlang.org/docs/reference/annotations.html
आप एक वर्ग के प्राथमिक निर्माता टिप्पणी करने की जरूरत है, आप के लिए निर्माता कीवर्ड जोड़ने की जरूरत निर्माता घोषणा, और यह पहले एनोटेशन जोड़ने:
class Foo @Inject constructor(dependency: MyDependency) {
// ...
}
आप की कोशिश की? और थोड़ा और रचनात्मक होने के लिए .. एक संपूर्ण [वसंत बूट टेम्पलेट] है (https://kotlinlang.org/docs/tutorials/spring-boot-restful.html), जवाब निश्चित रूप से "हां" है। – mabi
@mabi ट्यूटोरियल लिंक के लिए धन्यवाद :) – eendroroy