在此Web项目中,出现错误 java.lang.ClassNotFoundException:org.hibernate.service.ServiceRegistry 发生
在搜索之后,有一个解决方案是在POM.xml文件中添加休眠依赖关系,但它不是Maven项目,因此我没有POM文件...所以还有其他方法可以在其中添加依赖关系web.xml或hibernate.cfg.xml文件或与此不同的解决方案。
package DAO;
import java.util.ArrayList;
import javax.transaction.Transaction;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import com.GamesDen.SessionFact;
import Bean.Customer;
public class CustomerOperations implements CustomerDeclarations {
SessionFactory sf = SessionFact.getSessionFact();
Session ss;
Transaction ts;
@Override
public boolean insertCustomer(Customer cr) {
// TODO Auto-generated method stub
ss = sf.openSession();
ss.beginTransaction();
cr.setCustomer_id(101);
ss.save(cr);
ss.getTransaction().commit();
ss.close();
return true;
}
@Override
public boolean deleteCustomer(int id) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean alterCustomer(int id) {
// TODO Auto-generated method stub
return false;
}
@Override
public ArrayList showAllCustomer() {
// TODO Auto-generated method stub
return null;
}
@Override
public ArrayList searchByUsername(String username) {
// TODO Auto-generated method stub
return null;
}
}
CustomerOperations
package DAO;
import java.util.ArrayList;
import javax.transaction.Transaction;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Session;
import Bean.Customer;
public class CustomerOperations implements
CustomerDeclarations {
SessionFactory sf = SessionFact.getSessionFact();
Session ss;
Transaction ts;
@Override
public boolean insertCustomer(Customer cr) {
// TODO Auto-generated method stub
ss = sf.openSession();
ss.beginTransaction();
cr.setCustomer_id(101);
ss.save(cr);
ss.getTransaction().commit();
ss.close();
return true;
}
@Override
public boolean deleteCustomer(int id) {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean alterCustomer(int id) {
// TODO Auto-generated method stub
return false;
}
@Override
public ArrayList showAllCustomer() {
// TODO Auto-generated method stub
return null;
}
@Override
public ArrayList searchByUsername(String username) {
// TODO Auto-generated method stub
return null;
}
}
package Bean;
import javax.persistence.*;
@Entity
public class Customer {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int Customer_id;
@Column(unique = true, nullable = false)
private String username;
@Column(unique = true, nullable = false)
private String first_name;
private String last_name;
private Address address;
@Column(unique = true, nullable = false)
private String emailid;
@Column(unique = true, nullable = false)
private String PASSWORD;
@Override
public String toString() {
return "Customer [Customer_id=" + Customer_id + ",
username = " + username + ", first_name = " + first_name
+ ", last_name=" + last_name + ",
address = "+address+", emailid = " + emailid + ", PASSWORD = " +
PASSWORD + "]";
}
public Customer(int customer_id, String username, String
first_name, String last_name, Address adr, String emailid,
String pASSWORD) {
super();
this.username = username;
this.first_name = first_name;
this.last_name = last_name;
this.address = adr;
this.emailid = emailid;
this.PASSWORD = pASSWORD;
}
public int getCustomer_id() {
return Customer_id;
}
public void setCustomer_id(int customer_id) {
Customer_id = customer_id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getFirst_name() {
return first_name;
}
public void setFirst_name(String first_name) {
this.first_name = first_name;
}
public String getLast_name() {
return last_name;
}
public void setLast_name(String last_name) {
this.last_name = last_name;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
public String getEmailid() {
return emailid;
}
public void setEmailid(String emailid) {
this.emailid = emailid;
}
public String getPASSWORD() {
return PASSWORD;
}
public void setPASSWORD(String pASSWORD) {
PASSWORD = pASSWORD;
}
}
对于此类找不到错误的解决方案,除了在pom文件中添加休眠核心依赖项之外,没有其他解决方案,因为它不是maven项目。
答案 0 :(得分:0)
不,您不能在没有hibernate-core依赖项的情况下(在您的类路径中)使用 (任何版本)。
如果您不使用Maven,则没问题:
您可以下载完整的“ hibernate-orm”发行版(来自hibernate (5.4) release site的.zip文件):http://sourceforge.net/projects/hibernate/files/hibernate-orm/5.4.1.Final/hibernate-release-5.4.1.Final.zip/download
您可以下载并使用所有Maven工件,而无需实际使用maven,因为maven.central(和其他公共Maven存储库)可通过html提供公共访问:download hibernate-core-5.4.1.Final.jar from central.maven.org