jdbc-pool प्लगइन का उपयोग करने के लिए सबसे आसान काम संभवतः किसी भी डेटा स्रोत बीन को परिभाषित करने की आवश्यकता नहीं है। चूंकि इस पूल के लिए कॉन्फ़िगरेशन विकल्प जानबूझकर कॉमन्स डीबीसीपी के समान हैं (वे here दस्तावेज हैं) आप जार निर्भरता को परिभाषित करने और आपके लिए कक्षा को स्विच करने के लिए प्लगइन का उपयोग कर सकते हैं। प्लगइन को एक वर्ष में अपडेट नहीं किया गया है, इसलिए यह बहुत पुराना है (प्लगइन संस्करण 1.0.9.0 का उपयोग करता है लेकिन latest is 1.0.9.3) ताकि आप जार को छोड़कर प्लगइन निर्भरता को परिभाषित करना चाहें और नए संस्करण के लिए एक जोड़ सकें। यह रेपो में है, इसलिए आपको इसे अपने BuildConfig.groovy में जोड़ना होगा (plugin's version देखें कि उसने यह कैसे किया)।
पूल here पूल के लिए कॉन्फ़िगरेशन नोट्स और लेखक here द्वारा ब्लॉग पोस्ट की एक श्रृंखला है।
आप प्लगइन का उपयोग किए बिना इस कॉन्फ़िगर करने के लिए चाहते हैं, तो BuildConfig.groovy
को रेपो और जार निर्भरता जोड़ें:
repositories {
inherits true
...
ebr()
}
dependencies {
runtime('org.apache.tomcat:com.springsource.org.apache.tomcat.jdbc:1.0.9.3') {
transitive = false
}
}
और resources.groovy
में dataSource
सेम के लिए एक ओवरराइड बनाने के लिए:
import org.apache.tomcat.jdbc.pool.DataSource
beans = {
dataSource(DataSource) {
// mandatory
driverClassName = '${dataSource.driverClassName}'
username = '${dataSource.username}'
password = '${dataSource.password}'
url = '${dataSource.url}'
// optional
minEvictableIdleTimeMillis=1800000
timeBetweenEvictionRunsMillis=1800000
numTestsPerEvictionRun=3
testOnBorrow=true
testWhileIdle=true
testOnReturn=true
validationQuery="SELECT 1"
}
}
स्प्रिंग की संपत्ति प्लेसहोल्डर कार्यक्षमता का लाभ उठाने के लिए ${}
प्लेसहोल्डर्स के साथ एकल-उद्धृत तारों का उपयोग करना सुविधाजनक है और चीजें DRY को पहले से ही रखना चाहिए ड्राइवर को सेट करें और DataSource.groovy
में जानकारी कनेक्ट करें।
स्रोत
2012-03-04 00:42:10
आश्चर्य की संभावना को कम करने के लिए उत्पादन के लिए जितना संभव हो सके, मुझे लगता है कि मैं सिर्फ प्लगइन का उपयोग करूंगा। मैं इसकी एक नई रिलीज करूंगा, जो जेडीबीसी कनेक्शन पूल lib के नवीनतम संस्करण में अपग्रेड करेगा। –