Die Definitionsmethode beim Verwalten mehrerer orm.xml (user.xml, userImage.xml) wird nachfolgend beschrieben. Orm.xml in diesem Artikel bezeichnet eine Datei, die Entitätszuordnungen wie Entität und native SQL definiert. Wenn Sie suchen, finden Sie viele Informationen zum Definieren von META-INF / persistence.xml und META-INF / orm.xml. Dies ist die Definition, wenn JPA allein verwendet wird. Daher ist eine andere Definition erforderlich, wenn JPA in Kombination mit Spring4 verwendet wird.
Paketkonfiguration
-Java
-Ressourcen
|
|_conf
| |_☓☓☓
| |_☓☓☓
|
|_sql
| |_user.xml
| |_userImage.xml
|
|_applicationContext.xml
Dieses Mal werden wir die folgende Version verwenden. spring-data-jpa: 1.10.5.RELEASE hibernate-entitymanager: 5.1.0.Final
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>1.10.5RELEASE</version>
</dependency>
<!-- JPA -provider(Hibernate) -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.1.0.Final</version>
</dependency>
Das Folgende ist ein Definitionsbeispiel für applicationContext.xml. Sie können auch eine Datei wie dataSource.xml erstellen und für alle Einstellungen für die DB-Verbindung importieren. Die Methode zum Definieren mehrerer orm.xml verwendet MappingResources der Eigenschaft. Definieren Sie den Pfad unter dem Stammverzeichnis der erstellten Datei orm.xml (diesmal user.xml, userImage.xml). Wenn Sie orm.xml erhöhen möchten, müssen Sie es unten hinzufügen.
Wenn Sie nur eine orm.xml verwenden, können Sie den Dateinamen orm.xml direkt im META-INF-Verzeichnis definieren. , Es kann ohne die Definition von MappingResource unten gelesen werden.
Definitionsbeispiel
<jpa:repositories base-package="com.sample.orm.dao"/>
<context:property-placeholder
location="classpath:dataSource.properties"/>
<!-- mysql -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${jdbc.driver.class}"/>
<property name="url">
<value>${jdbc.connect}://${jdbc.host.port}/${jdbc.schema}?useUnicode=true&characterEncoding=UTF-8&connectionCollation=utf8mb4_general_ci</value>
</property>
<property name="username" value="${jdbc.user}"/>
<property name="password" value="${jdbc.pass}"/>
<property name="maxActive" value="20"/>
<property name="maxIdle" value="1"/>
</bean>
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>
<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<!--Definition des Entitätsverzeichnisses-->
<property name="packagesToScan" value="com.sample.orm.entity"/>
<property name="dataSource" ref="dataSource"/>
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="showSql" value="false"/>
<property name="generateDdl" value="false"/>
<property name="database" value="MYSQL"/>
</bean>
</property>
<property name="jpaProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>
</props>
</property>
<!--Mapping-Pfad definieren-->
<property name="mappingResources">
<list>
<value>sql/user.xml</value>
<value>Sql/userImage.xml</value>
</list>
</property>
</bean>
Recommended Posts