• spring集成jpa【为什么有 persistant.xml 文件呢?】


    原文地址: http://www.cnblogs.com/javahuang/archive/2012/12/19/2824633.html

    spring集成JPA的其中一种方式

    JPA和hibernate的关系:

    spring对JPA的集成.JPA是一个ORM规范,由厂商实现该规范, 目前有hibernate,OpenJPA,TopLink和EclipseJPA等实现,本系统中用到的就是hibernate的实现JPA,只配置了两个属性datasource和实现厂商) 所谓JPA是持久化的规范,屏蔽了数据库厂商不同带来的差异而已,而spring对

    复制代码
    <bean id="entityManagerFactory"
            class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
            <property name="dataSource" ref="dataSource" />
            <property name="jpaVendorAdapter">
                <bean
                    class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                    <property name="showSql" value="true" />
                    <property name="generateDdl" value="false" />
                    <property name="databasePlatform"
                        value="org.hibernate.dialect.Oracle10gDialect" />
                </bean>
            </property>
        </bean>
    复制代码

    因为所有的工作都是遵照JPA标准进行的,而JPA标准要求项目中有一个 persistence.xml 文件,因此我们必须要把这个文件补上,这个文件的默认位置是在META-INF,

    这个文件中只有一行配置:定义了persistence-unit,名字为jpa,它的事务管理模式transaction-type为本地管理,即 RESOURCE_LOCAL 。在我们的项目中,这个本地管理者就是Spring的Entity Manager。不必问为什么,这是JPA标准,我们需要有这个文件,名字要叫persistence.xml,并且这个文件要放在项目的CLASSPATH的 META-INF 目录中。

    复制代码
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence xmlns="http://java.sun.com/xml/ns/persistence"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/persistence   
            http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
        <persistence-unit name="testerPU"
            transaction-type="RESOURCE_LOCAL">
        </persistence-unit>
    </persistence>
    复制代码
  • 相关阅读:
    FileWatcher
    virtual table(有180个评论)
    this 指针
    docker -ce(社区免费版)
    vue-cli
    CAP理论、BASE理论
    B+树和LSM存储引擎代表树和B-树
    CPU高速缓存
    Python&基础环境搭建
    二叉树
  • 原文地址:https://www.cnblogs.com/AloneSword/p/4558206.html
Copyright © 2020-2023  润新知