Jpa规范中persistence.xml 配置文件解析

数据库已经配好的前提下 persistence.xml配置如下
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="persistenceUnitWrite" transaction-type="RESOURCE_LOCAL">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <non-jta-data-source>dataSource</non-jta-data-source>
        <properties>
            <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
            <property name="hibernate.jdbc.use_streams_for_binary" value="false"/>
            <!-- value="create" to build a new database on each run; value="update" to modify an existing database; value="create-drop" means the same as "create" but also drops tables when Hibernate closes; value="validate" makes no changes to the database -->

            <!-- <property name="hibernate.hbm2ddl.auto" value="validate"/> -->
            <property name="hibernate.ejb.naming_strategy" value="org.hibernate.cfg.ImprovedNamingStrategy"/>
            <property name="hibernate.connection.charSet" value="UTF-8"/>
            <property name="hibernate.show_sql" value="false" />
            <property name="hibernate.format_sql" value="true" />

            <property name="hibernate.order_updates" value="true" />

            <!--
         <property name="hibernate.cache.use_second_level_cache" value="true"/>
         <property name="hibernate.cache.provider_class" value ="net.sf.ehcache.hibernate.EhCacheProvider"/>
         http://ehcache.org/documentation/2.4/user-guide/hibernate#Downloading-and-Installing-Ehcache
             -->

            <!-- Uncomment the following two properties for JBoss only -->
            <!-- property name="hibernate.validator.apply_to_ddl" value="false" /-->
            <!-- property name="hibernate.validator.autoregister_listeners" value="false" /-->
        </properties>
    </persistence-unit>

</persistence>

使用spring data + hibernate 进行逻辑层操作时候需要配置 persistence.xml的内容
<?xml version="1.0"?> 

<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/persistence_1_0.xsd" version="1.0"> 

<persistence-unit name="itcast" transaction-type="RESOURCE_LOCAL"> 

<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" />
<property name="hibernate.connection.driver_class" value="org.gjt.mm.mysqlDriver" />
<property name="hibernate.connection.username" value="root" />
<property name="hibernate.connection.password" value="root" />
<property name="hibernate.connection.url" value="jdbc.mysql://localhost:3306/testdatabase?useUnicode=true&characterEncoding=UTF-8" />
<property name="hibernate.max_fetch_depth" value="3" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.hbm2ddl.auto" value="create-drop"/>
</properties> 

</persistence-unit>

注释

<?xml version="1.0" encoding="UTF-8"?> 

<persistence version="1.0"
xmlns:persistence="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 persistence_1_0.xsd "> 

<!--
Name属性用于定义持久化单元的名字 (name必选,空值也合法);
transaction-type 指定事务类型(可选)
-->
<persistence-unit name="unitName" transaction-type="JTA"> 

<!-- 描述信息.(可选) -->
<description> </description> 

<!-- javax.persistence.PersistenceProvider接口的一个实现类(可选) -->
<provider> </provider> 

<!-- Jta-data-source和 non-jta-data-source用于分别指定持久化提供商使用的JTA和/或non-JTA数据源的全局JNDI名称(可选) -->
<jta-data-source>java:/MySqlDS</jta-data-source>
<non-jta-data-source> </non-jta-data-source> 

<!-- 声明orm.xml所在位置.(可选) -->
<mapping-file>product.xml</mapping-file> 

<!-- 以包含persistence.xml的jar文件为基准的相对路径,添加额外的jar文件.(可选) -->
<jar-file>../lib/model.jar</jar-file> 

<!-- 显式列出实体类,在Java SE 环境中应该显式列出.(可选) -->
<class>com.domain.User</class>
<class>com.domain.Product</class> 

<!-- 声明是否扫描jar文件中标注了@Enity类加入到上下文.若不扫描,则如下:(可选) -->
<exclude-unlisted-classes/> 

<!-- 厂商专有属性(可选) -->
<properties>
<!-- hibernate.hbm2ddl.auto= create-drop / create / update -->
<property name="hibernate.hbm2ddl.auto" value="update" />
<property name="hibernate.show_sql" value="true" />
</properties> 

</persistence-unit> 

</persistence>
时间: 2024-10-04 00:04:31

Jpa规范中persistence.xml 配置文件解析的相关文章

JPA 不在 persistence.xml 文件中配置每个Entity实体类的2种解决办法

原文:JPA 不在 persistence.xml 文件中配置每个Entity实体类的2种解决办法 在Spring 集成 Hibernate 的JPA方式中,需要在persistence配置文件中定义每一个实体类,这样非常地不方便,远哥目前找到了2种方法. 这2种方式都可以实现不用persistence.xml文件,免去每个Entity都要在persistence.xml文件中配置的烦恼,但是这种方式Entity实体类的主键字段注解@ID要放到 getXXX()方法上,否则不认. 方式1: 修改

SSM:spring+springmvc+mybatis框架中的XML配置文件功能详细解释

SSM:spring+springmvc+mybatis框架中的XML配置文件功能详细解释 2016-04-14 23:40 13030人阅读 评论(2) 收藏 举报 分类: SSM(7) 这几天一直在整合SSM框架,虽然网上有很多已经整合好的,但是对于里面的配置文件并没有进行过多的说明,很多人知其然不知其所以然,经过几天的搜索和整理,今天总算对其中的XML配置文件有了一定的了解,所以拿出来一起分享一下,希望有不足的地方大家批评指正~~~ 首先   这篇文章暂时只对框架中所要用到的配置文件进行解

Struts2框架中书写XML配置文件时能添加提示技巧(方案二)

1.  先在/工程名/WebRoot/WEB-INF/lib/struts2-core-2.1.8.jar中找到struts-2.1.dtd文件. 2.  在Myeclipse8.6-->Window-->Preferences 3.  在搜索框输入xml文件,找到XMLCatalog,单击XML Catalog出现如上页面,之后单击Add按钮,出现如下图: 4.  在Location中选择FileSystem,选择struts-2.1.dtd文件的位置,如果这个文件在工程里面,可以使用Wor

Java中对xml的解析

Java中对xml的解析 1.Dom4j Dom解析原理:xml解析器一次性将xml文档加载到内存中,然后在内存中构建一颗Document对象树.在通过Document对象得到树上的节点对象,通过节点对象操作文档内容. Dom4J 常用的对象: SAXReader:读取 xml 文件到 Document 树结构文件对象 Document:是一个 xml 文档对象树,类比 Html 文档对象. Element:元素节点.通过 Document 对象可以查找单个元素 使用步骤: ( 导入 Dom4J

JPA持久化persistence.xml配置文件即参数详解

Java Persistence API:持久性单元(Persistence Units) 如果你打算在你的应用中使用JPA,你就需要使用持久性单元(Persistence Units).持久性单元具有唯一的名称,负责定义应用中的一组实体如何进行管理和持久性.在应用中使用persistence.xml文件来设置持久性单元,可以配置多个持久性单元,但每个单元拥有唯一的名称. 持久性单元包含的属性有: 在该持久性单元范围(作用域)内的实体类 为上述实体类提供持久性的持久性提供者(Persistenc

面试题:J2EE中web.xml配置文件详解

一.web.xml是什么 web.xml学名叫部署描述符文件,是在Servlet规范中定义的,是Web应用的配置文件,是Web应用的基础. 二.web.xml加载流程 总的来说:ServletContext--Listener--Filter--Servlet 1.首先Web容器创建一个ServletContext对象(对应JSP中的application内置对象),这个Web项目所有部分都将共享这个上下文(类似于这个项目的全局变量集合). 2.然后Web容器以<contex-param>&l

struts2中struts.xml配置文件详解

struts.xml的常用配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts

模拟Spring中applicationContext.xml配置文件初始化bean的过程

package com.xiaohao.action; import java.io.File; import java.lang.reflect.Method; import java.util.Collections; import java.util.HashMap; import java.util.Map; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; /** *

OpenERP 7 中的web配置文件解析-翻译 todo

ubuntu中OE的配置文件默认在目录: /etc/openerp 下面是你可以用来调整你OE的安装的配置项: 在我以前的一个OE7.0的帖子中,已经写了如何改变端口和其他默认配置来启动服务.你还可以通过 -c 命令来指定配置文件. ./server/openerp-server-c/path/to/openerp-server.conf这是作为一个引子,方便理解配置文件. 服务器启动常用配置项: # 管理员密码,用于创建,恢复和备份数据库 admin_passwd = admin # 默认分隔