>>分享JPA、Hibernate、Mybatis对象持久化技术,对《精通JPA与Hibernate:Java对象持久化详解》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 14923 个阅读者 刷新本主题
 * 贴子主题:  孙卫琴的《精通JPA与Hibernate》的读书笔记:JPA的配置文件 回复文章 点赞(0)  收藏  
作者:mary    发表时间:2021-05-05 03:44:42     消息  查看  搜索  好友  邮件  复制  引用

   JPA的配置文件名为persistence.xml,位于classpath根目录的META-INF目录下,它的作用和Hibernate的配置文件hibernate.cfg.xml很相似。以下persistence.xml是本范例的JPA配置文件。
<!-- persistence.xml-->
<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="myunit">

    <provider>
      org.hibernate.jpa.HibernatePersistenceProvider    </provider>

    <class>mypack.Customer</class>
  
    <properties>
      <!-- 使用的数据库方言 -->
      <property name="hibernate.dialect"
         value="org.hibernate.dialect.MySQL8Dialect" />
      <!-- 数据库驱动程序-->  
      <property name="javax.persistence.jdbc.driver"
        value="com.mysql.jdbc.Driver" />
      <!--连接数据库的URL-->  
      <property name="javax.persistence.jdbc.url"
        value="jdbc:mysql://localhost:3306/sampledb useSSL=false" />
      <!--连接数据库的用户名-->
      <property name="javax.persistence.jdbc.user" value="root" />
      <!--连接数据库的口令-->
      <property name="javax.persistence.jdbc.password" value="1234" />
      
      <!-- 运行时在控制台输出Hibernate所执行的SQL语句 -->  
      <property name="hibernate.show_sql" value="true" />

      <!--在启动时删除并重新创建数据库Schema -->
      <property name="hibernate.hbm2ddl.auto" value="create" />

    </properties>
  </persistence-unit>
</persistence>

  •   以上配置文件的元素设定了一个持久化单元包,它的name属性设定持久化单元包的名字。
  •   < provider>元素指定JPA API由哪个ORM软件来实现,本范例由HibernatePersistenceProvider来实现。
  •   < class>元素指定包含描述对象-关系映射信息的注解的持久化类。JPA在初始化时会从这些持久化类中读取对象-关系映射元数据。
  •   在以上persistence.xml配置文件中,有些元素的name属性以“javax.persistence”开头,表明这是属于JPA的属性;有些元素的name属性以“hibernate”开头,表明这是属于Hibernate的属性。
    点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小
程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2021-05-08 21:10:13 重新编辑]
  Java面向对象编程-->操作符
  JavaWeb开发-->开发JavaMail Web应用
  JSP与Hibernate开发-->持久化层的映射类型
  Java网络编程-->ServerSocket用法详解
  精通Spring-->虚拟DOM和render()函数
  Vue3开发-->Vue组件开发高级技术
  孙卫琴的《精通JPA与Hibernate》的读书笔记:在程序中动态指定...
  孙卫琴的《精通JPA与Hibernate》的读书笔记: 用JPQL批量处理...
  孙卫琴的《精通JPA与Hibernate》的读书笔记:比较JPA的Entit...
  Hibernate使用中防止SQL注入的几种方案
  理解事务的四种隔离级别
  Hibernate中通过FetchProfile的方式实现动态数据获取
  EntityTransaction 与UserTransaction的区别
  EntityManager接口的find()方法和getReference()方法的区别
  分析hibernate中table per class hierarchy映射方式容易出现...
  好书推荐:《精通Hibernate:Java对象持久化技术详解》
  JPA EntityManager类的常用方法的作用
  JPQL与SQL的区别
  JPA API入门
  Hibernate 5的新特性
  解决运行Hibernate时的NoClassDefFoundError: javax/xml/bin...
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。