cuốn sách gpt4 ai đã làm

javax.persistence.PersistenceException: Không có nhà cung cấp Persistence cho EntityManager có tên

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 04:28:06 30 4
mua khóa gpt4 Nike

Tôi đang cố gắng thiết lập một dự án jpa 2.0 đơn giản theo thông tin được cung cấp trong tài liệu của giáo viên. Tôi đã giải quyết vấn đề này trong nhiều giờ, nhưng bất kể tôi làm gì, tôi luôn gặp phải ngoại lệ này khi cố gắng tạo EntityManagerFactory: Tôi đã tìm thấy rất nhiều câu hỏi tương tự về ngoại lệ này, nhưng tôi không có giải pháp nào đã có thể có được kế hoạch làm việc. Tôi đang làm gì sai ở đây?

Tôi đã tạo dự án này từ Eclipse (không có dấu nhắc lệnh)

Ngoại lệ trong chuỗi "chính" javax.persistence.PersistenceException: Không có nhà cung cấp Persistence cho khóa học có tên EntityManager
tại javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:56)
tại javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
tại message.SaveMessage.main(SaveMessage.java:8)

Cấu trúc thư mục

nhập mô tả hình ảnh ở đây

我的kiên trì.xml


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"
phiên bản="2.0">


org.hibernate.ejb.HibernatePersistence













Lớp học của tôi

tin nhắn gói;

nhập java.io.Serializable;

import javax.persistence.*;

@Entity
lớp công khai Tin nhắn triển khai Có thể tuần tự hóa {

id dài riêng tư;
văn bản chuỗi riêng tư;

Tin nhắn công khai() {

}

Tin nhắn công khai(id dài, Chuỗi văn bản) {
this.setId(id);
this.setText(văn bản);

}

@Id
công khai getId() {
trả về id;
}

public void setId(id dài) {
this.id = id;
}

Chuỗi công khai getText() {
trả lại văn bản;
}

public void setText(Chuỗi văn bản) {
this.text = văn bản;
}

}

Lớp thử nghiệm (chính) của tôi

tin nhắn gói;

import javax.persistence.*;

lớp công khai SaveMessage {

public static void main(String[] args) {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("khóa học");
EntityManager em = emf.createEntityManager();
EntityTransaction tx = em.getTransaction();
tx.begin();

Tin nhắn tin nhắn = Tin nhắn mới (1, "Xin chào thế giới");
em.persist(tin nhắn);
tx.commit();
em.close();
System.out.println("tin nhắn đã lưu");

}

}

câu trả lời hay nhất

Tôi nghĩ lớp org.hibernate.ejb.Hibernat ePersistence bị thiếu trong đường dẫn lớp của bạn. Thêm phần này vào pom.xml của bạn:


org.hibernate
người quản lý thực thể ngủ đông
3.6.10.Cuối cùng

Thay thế 3.6.10.Final bằng phiên bản Hibernate thích hợp.

Về javax.persistence.PersistenceException: Không có nhà cung cấp Persistence cho EntityManager được đặt tên, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/16655750/

30 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress