Using JPA configuration process

Using JPA process:

Package Configuration guide

  1. persistence.xml配置文件  persistence.xml不要放错位置:
  必须在src/main/resources/META-INF/下面  

Concrete placement

<?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_2_0.xsd"
             version="2.0">
    <!--表示持久化单元 本地事务支持-->
    <persistence-unit name="cn.itsource.jpa" transaction-type="RESOURCE_LOCAL">
        <!-- 在实体上面配置 @cachebale(true)
        配置二级缓存的策略
        ALL:所有的实体类都被缓存ji
        NONE:所有的实体类都不被缓存.
        ENABLE_SELECTIVE:标识 @Cacheable(true) 注解的实体类将被缓存
        DISABLE_SELECTIVE:缓存除标识 @Cacheable(false) 以外的所有实体类
        UNSPECIFIED:默认值,JPA 产品默认值将被使用
         二级缓存策略
        -->
        <shared-cache-mode>ENABLE_SELECTIVE</shared-cache-mode>
        <properties>


            <!-- 必须配置4个连接数据库属性  -->
            <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
            <property name="hibernate.connection.url" value="jdbc:mysql:///t_jpa"/>
            <property name="hibernate.connection.username" value="root"/>
            <property name="hibernate.connection.password" value="123456"/>

            <!-- 必须配置1个方言属性就是你是什么数据库 -->
            <!-- 实现跨数据库关键类 :查询MySQLDialect的getLimitString方法 -->
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>

            <!-- 可选配置 ddl数据定义语言-->
            <!-- 是否自动生成表 -->
            <property name="hibernate.hbm2ddl.auto" value="update"/>
            <!-- 是否显示sql -->
            <property name="hibernate.show_sql" value="true"/>
            <!-- 格式化sql -->
            <!-- <property name="hibernate.format_sql" value="true" /> -->


            <!-- 开启二级缓存-->
            <property name="hibernate.cache.use_second_level_cache" value="true" />
            <!--二级缓存实现类-->
            <property name="hibernate.cache.region.factory_class" value="org.hibernate.cache.ehcache.EhCacheRegionFactory" />
            <!--查询缓存-->
            <property name="hibernate.cache.use_query_cache" value="true" />
        </properties>
    </persistence-unit>


</persistence>

pom.xml inside the required configuration:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>cn.itsource</groupId>
    <artifactId>HelloJpa</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <!-- hibernate的包 -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.3.8.Final</version>
        </dependency>
        <!-- hibernate对于jpa的支持包 -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.3.8.Final</version>
        </dependency>


        <!-- 二级缓存支持包-->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-ehcache</artifactId>
            <version>4.3.8.Final</version>
        </dependency>
        <!-- mysql的驱动包 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>
        <!-- junit的测试包 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>
    </dependencies>
    <build>
        <finalName>pss</finalName>
        <plugins>
            <plugin>
                <!-- Maven的编译插件-->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>




</project>
Published 23 original articles · won praise 2 · Views 944

Guess you like

Origin blog.csdn.net/metjoyful/article/details/101062789