如何在SpringBoot项目中配置persistance.xml文件

时间:2018-10-22 08:26:45

标签: spring-boot jpa persistence.xml

我创建了一个spring boot应用程序。运行此命令时,persiatance.xml出现错误。

好像没有读取我的persistance.xml文件。您能帮我解决问题吗?

Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named EmployeeData
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:61)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
    at com.JPAproject.Entity.InsertEmployee.main(InsertEmployee.java:11)

以下是相关文件供参考:

实体类

package com.JPAproject.Entity;

import javax.persistence.Entity;
import javax.persistence.Table;

@Entity
@Table(name="Employee_JPA")
public class Employee_EntityManager {

    private String e_id;
    private String e_name;
    private Integer e_age;

    public String getE_id() {
        return e_id;
    }
    public void setE_id(String e_id) {
        this.e_id = e_id;
    }
    public String getE_name() {
        return e_name;
    }
    public void setE_name(String e_name) {
        this.e_name = e_name;
    }
    public Integer getE_age() {
        return e_age;
    }
    public void setE_age(Integer e_age) {
        this.e_age = e_age;
    }
    public Employee_EntityManager(String e_id, String e_name, Integer e_age) {
        super();
        this.e_id = e_id;
        this.e_name = e_name;
        this.e_age = e_age;
    }
    public Employee_EntityManager() {
        super();
    }



}

Persistance.xml

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

<persistence version="2.1" 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_1.xsd">
<persistence-unit name="EmployeeData" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>com.JPAproject.Employee_EntityManager</class>
</persistence-unit>    
</persistence>

1 个答案:

答案 0 :(得分:0)

org.hibernate.ejb.HibernatePersistence类已经被弃用很长时间了,但是您仍然可以在旧教程中找到它。您需要使用新的org.hibernate.jpa.HibernatePersistenceProvider

如果这是您的完整XML文件,而不是简化版本,那么您似乎也没有数据源,因此您不会发布密码等。