मैं अपने वेब एप्लिकेशन के लिए स्प्रिंग 3.1.2 और हाइबरनेट 4.1.7 का उपयोग कर रहा हूं। मैं अब इन दोनों को कॉन्फ़िगर करना चाहता हूं। मैं अपने hibernate.cfg.xml
फ़ाइल है:वसंत-हाइबरनेट कॉन्फ़िगरेशन में डेटा स्रोत और सत्र फ़ैक्टरी दोनों को कॉन्फ़िगर क्यों करें?
<hibernate-configuration>
<session-factory>
<property name="connection.url">jdbc:mysql://localhost:3306/test</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.pool_size">10</property>
<property name="hibernate.connection.autocommit">false</property>
<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<!--
<property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
-->
<property name="hibernate.show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
</session-factory>
</hibernate-configuration>
मेरे webapp-servlet.xml
वसंत कॉन्फ़िग फ़ाइल:
<beans>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="configLocation">
<value>
classpath:hibernate.cfg.xml
</value>
</property>
<property name = "dataSource" ref = "dataSource"></property>
</bean>
<bean id = "dataSource" class = "org.apache.commons.dbcp.BasicDataSource">
<property name = "driverClassName" value = "com.mysql.jdbc.Driver" />
<property name = "url" value = "jdbc:mysql://localhost:3306/test" />
<property name = "username" value = "root" />
<property name = "password" value = "root" />
<property name = "maxActive" value = "10" />
</bean>
</beans>
- क्यों मैं जब जरूरत डेटा के सभी पहले से ही हाइबरनेट विन्यास में शामिल है एक डेटास्रोत सेम कॉन्फ़िगर करने की आवश्यकता है फाइल? क्या हाइबरनेट में कुछ डिफ़ॉल्ट है जिसका उपयोग कर सकते हैं?
- कुछ अन्य
DataSource
एस क्या उपयोग कर सकते हैं? - क्या मुझे अपने आवेदन के साथ हाइबरनेट काम करने के लिए कोई अन्य बीन्स या कॉन्फ़िगरेशन पैरामीटर/गुण याद आ रहा है?
सभी कॉन्फ़िगरेशन विकल्प अंतर्विरोध कर सकते हैं।xml' 'LocalSessionFactoryBean' पर उपलब्ध है, बाद वाले को प्राथमिकता दें और उन्हें हाइबरनेट कॉन्फ़िगरेशन में छोड़ दें। –
ठीक है। लेकिन मैं अभी भी उन्हें केवल एक ही स्थान पर चाहता हूं, अलग-अलग फाइलों या सेम में दोहराया नहीं जाता है। –
मैं यही कह रहा हूं, 'hibernate.cfg.xml' से डेटा स्रोत कॉन्फ़िगरेशन को हटा दें और इसे स्प्रिंग एक्सएमएल में छोड़ दें। आप बाद में उसी 'डेटा स्रोत' बीन का उपयोग कर सकते हैं उदा। 'जेडीबीसी टेम्पलेट' में। –