JavaEE----JPA中配置文件persistence.xml
来源:互联网 发布:什么是淘宝直通车图片 编辑:程序博客网 时间:2024/06/15 09:56
1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <persistence version="1.0" 4 xmlns:persistence="http://java.sun.com/xml/ns/persistence" 5 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 6 xsi:schemaLocation="http://java.sun.com/xml/ns/persistence persistence_1_0.xsd "> 7 8 9 <!--Name属性用于定义持久化单元的名字 (name必选,空值也合法); 10 transaction-type 指定事务类型(可选) --> 11 12 <persistence-unit name="LMS" transaction-type="JTA"> 13 14 <!-- 描述信息.(可选) --> 15 <description> </description> 16 17 <!-- javax.persistence.PersistenceProvider接口的一个实现类(可选) --> 18 <provider> </provider> 19 20 <!-- Jta-data-source和 non-jta-data-source用于分别指定持久化提供商使用的JTA和/或non-JTA数据源的全局JNDI名称(可选) --> 21 <jta-data-source>java:/LMSNGDataSource_UW</jta-data-source> 22 <non-jta-data-source> </non-jta-data-source> 23 24 <!-- 声明orm.xml所在位置.(可选) --> 25 <mapping-file>product.xml</mapping-file> 26 27 <!-- 以包含persistence.xml的jar文件为基准的相对路径,添加额外的jar文件.(可选) --> 28 <jar-file>../lib/model.jar</jar-file> 29 30 <!-- 显式列出实体类,在Java SE 环境中应该显式列出.(可选) --> 31 <class>com.domain.User</class> 32 <class>com.domain.Product</class> 33 34 <!-- 声明是否扫描jar文件中标注了@Enity类加入到上下文.若不扫描,则如下:(可选) --> 35 <exclude-unlisted-classes>true</exclude-unlisted-classes>36 <!--可选 -->37 <shared-cache-mode>ENABLE_SELECTIVE</shared-cache-mode>38 <!-- 厂商专有属性(可选) --> 39 <properties> 40 <!-- hibernate.hbm2ddl.auto= create-drop / create / update --> 41 <property name="hibernate.cache.use_second_level_cache"42 value="true" />43 <property name="hibernate.cache.use_query_cache" value="true" />44 <property name="hibernate.hbm2ddl.auto" value="update" /> 45 <property name="hibernate.show_sql" value="true" /> 46 </properties> 47 48 </persistence-unit> 49 50 </persistence>
持久化persistence.xml配置文件
在EJB中,一个实体Bean应用由实体类和persistence.xml文件文件组成。persistence.xml文件在jar文件的META-INF目录下。persistence.xml文件指定实体Bean使用的数据源及Entity Manager对象的默认行为。
persistence-unit: 节点可以有一个或多个,每个persistence-unit 节点定义了持久化内容名称、使用的数据源以及持久化产品的专有属性。
name: 属性定义持久化名称。
jta-data-source: 节点指定实体Bean使用的数据源JNDI名称,如果应用发布在jboss下,数据源名称就必须带有Java:/前缀,数据源名称大小写敏感。
properties: 节点用作指定持久化产品的各项属性。
对于properties 节点需要说明的是,各个应用服务器使用的持久化产品都不一样,如jboss使用的是hibernate,weblogic10使用的是kodo。因为jboss采用了hibernate,hibernate有一项属性"hibernate.hbm2ddl.auto",该属性指定实体Bean发布时是否同步数据库结构,如果"hibernate.hbm2ddl.auto"的值设为“create-drop”,在实体发布及卸载时将自动创建及删除相应数据库表。
jboss服务器启动或关闭时也会引发实体Bean的发布及卸载。
ps:
如果你的表已经存在,并且想保留数据,发布实体 bean 时可以把 hibernate.hbm2ddl.auto 的值设为 none 或update,以后为了实体 bean 的改动能反应到数据表,建议使用 update,这样实体 Bean 添加一个属性时能同时在数据表增加相应字段。
扩展(persistence-unit)
持久化单元包含的属性有:
在该持久化单元范围(作用域)内的实体类
为实体类提供持久化的持久化提供者(Persistence Provider)或库
实体类的数据源(Data Source)
应用使用的事务类型(Transaction Type)
持久化单元能够被打包成WAR文件,EJB-JAR文件,EAR文件的一部分,或者直接打包成应用程序能够直接使用的JAR文件。
持久化单元的范围(作用域)取决于persistence.xml文件的位置。一般说来,IDE能够使用引导界面来正确放置persistence.xml的位置。例如使用IDE为EJB模块(Module)创建的持久性单元,persistence.xml文件将被放在EJB模块的src/conf目录中,当你将模块打包时,persistence.xml文件被放在EJB JAR文件的META-INF目录中。这样持久化单元的作用域就是EJB JAR文件中的类。
ps:
persistence.xml文件的位置决定持久化的根(Persistence Root)。持久化的根为JAR文件或者包含META-INF目录(前提是persistence.xml位于此)的目录。
- JavaEE----JPA中配置文件persistence.xml
- JavaEE学习之JPA中配置文件persistence.xml(JTA与一种方式)
- Jpa规范中persistence.xml 配置文件解析
- JPA的配置文件persistence.xml
- jpa的persistence.xml配置文件详情
- JPA的persistence.xml配置文件参数
- JPA的配置文件persistence.xml参数详解
- JPA的配置文件persistence.xml参数详解
- Hibernate学习--JPA配置文件persistence.xml解析
- JPA持久化persistence.xml配置文件及参数详解
- JPA persistence.xml
- jpa persistence.xml 配置
- JPA Oracle persistence.xml
- JPA persistence.xml 文件
- JPA 配置persistence.xml
- JPA persistence.xml 配置
- JPA的persistence.xml文件
- ejb-jpa的persistence.xml
- Nginx安装、配置及使用总结
- Red Giant Trapcode Suite 12.0 含注册码
- iOS开发笔记之六十五——两种截屏方案的对比
- 【Eternallyc】qsort排序函数用法
- 函数初了解
- JavaEE----JPA中配置文件persistence.xml
- 密码验证合格程序
- Search for a Range
- Nginx安装、配置及使用总结
- 关键字register static const #define用法总结
- caffe网络结构可视化
- Android中AIDL的使用(一)
- struts2使用modeldriven执行转向更新页面是直接将getByID()获取到的值赋值给model数据不回显
- ibatis demo01