返回

运用 Persistence.xml 在 JPA 中配置数据库连接

闲谈

数据库连接配置在 JPA 实现 DDD 持久化的过程中,数据库连接的配置是至关重要的,而 Persistence.xml 是 JPA 中用来配置数据库连接的标准方式,它位于类路径下。

配置过程:

Persistence.xml 文件中包含了以下主要元素:

  • <persistence> 标签:代表一个持久化单元,包括该单元中包含的所有类信息和数据库连接配置。
  • <provider> 标签:指定 JPA 提供商。
  • <class> 标签:列出该持久化单元中包含的实体类。
  • <properties> 标签:包含数据库连接属性。

数据库连接属性通常包含以下内容:

  • javax.persistence.jdbc.url:数据库连接 URL。
  • javax.persistence.jdbc.user:数据库用户名。
  • javax.persistence.jdbc.password:数据库密码。
  • javax.persistence.jdbc.driver:JDBC 驱动程序类。

配置示例:

一个典型的 Persistence.xml 配置示例如下:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
  <persistence-unit name="my-persistence-unit">
    <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
    <class>com.example.domain.model.MyEntity</class>
    <properties>
      <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:test;DB_CLOSE_DELAY=-1"/>
      <property name="javax.persistence.jdbc.user" value="sa"/>
      <property name="javax.persistence.jdbc.password" value=""/>
      <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/>
    </properties>
  </persistence-unit>
</persistence>

注意事项:

  1. 确保 Persistence.xml 文件位于类路径下。
  2. 检查数据库连接 URL、用户名和密码是否正确。
  3. 使用合适的 JDBC 驱动程序。
  4. 根据具体数据库调整连接属性。
  5. 可以使用 JPA 配置工具简化配置过程。

扩展阅读: