java.lang.NoClassDefFoundError: Could not initialize class

无根柳絮 无根柳絮 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我是用servlet获取姓名密码,通过hibernate添加到数据库中,我的hibernate写好了测试没有问题,但是在用servlet调用的时候报java.lang.NoClassDefFoundError: Could not initialize class 异常。我看网络上说是jar包导入问题我导入的是hibernate5.4的版本,我需要怎么解决啊?
package com.mahui.dblink;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HibernateUtils {
/*
*读取Hibernate.cfg.xml文件
*/
private static SessionFactory factory;

static {
try {
//读取hibernate.cfg.xml文件
Configuration cfg = new Configuration().configure();

//建立SessionFactory
factory = cfg.buildSessionFactory();
}catch(Exception e) {
e.printStackTrace();
}
}
/*
*打开Session
*/

public static Session getSession() {
return factory.openSession();
}
/*
*关闭Session
*/
public static void closeSession(Session session) {
if (session != null) {
if (session.isOpen()) {
session.close();
}
}
}
public static SessionFactory getSessionFactory() {
return factory;
}
}



package com.mahui.dblink;


import junit.framework.TestCase;

import org.hibernate.Session;
import com.mahui.model.MHPLAYERUSER;

public class HibernateQLData extends TestCase {
/*
* 增加User
*/
public void testSave(String type,String username,String password) {

Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();

MHPLAYERUSER mh = new MHPLAYERUSER();
mh.setType(type);
mh.setUsername(username);
mh.setPassword(password);
session.save(mh);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
/**
* 删除
*/
public static void testDel(String username){
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();

MHPLAYERUSER user=(MHPLAYERUSER)session.load(MHPLAYERUSER.class,username);

session.delete(user);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}

/**
* 修改
*/
public void testUpdate(String username){
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();

MHPLAYERUSER user=(MHPLAYERUSER)session.load(MHPLAYERUSER.class,username);
user.setUsername("王五");
session.update(user);
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}

/**
* 查询
*/
public void testLoad(String username){
Session session = null;
try {
session = HibernateUtils.getSession();
session.beginTransaction();

MHPLAYERUSER user=(MHPLAYERUSER)session.load(MHPLAYERUSER.class,username);
System.out.println(user.getUsername());
System.out.println(user.getPassword());
session.getTransaction().commit();
}catch(Exception e) {
e.printStackTrace();
session.getTransaction().rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
public static void main(String[] args){
//testSave("2","MAHU","123");
testDel("MAHUI");
//testUpdate("王五");
//testLoad("王五");
}
}

package com.mahui.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.mahui.dblink.HibernateQLData;
import com.mahui.dblink.Test;


public class ZhuCeServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String type="1";
/*String username=request.getParameter("username");
String password=request.getParameter("password");*/
String username="mahui2";
String password="mmmmm";
System.out.println("username:"+new String(username.getBytes("iso8859-1"),"utf-8"));
System.out.println("password:"+new String(password.getBytes("iso8859-1"),"utf-8"));
//System.out.println("hello word!");
Test.test(type,username,password);
}
}
十月 21, 2015 11:30:24 上午 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet ZhuCeServlet threw exception
java.lang.NoClassDefFoundError: Could not initialize class com.mahui.dblink.HibernateUtils
at com.mahui.dblink.HibernateQLData.testSave(HibernateQLData.java:30)
at com.mahui.dblink.Test.test(Test.java:8)
at com.mahui.servlet.ZhuCeServlet.doPost(ZhuCeServlet.java:31)
at com.mahui.servlet.ZhuCeServlet.doGet(ZhuCeServlet.java:18)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:724)
...全文
评论
收藏 已收藏
分享
返回顶部
无根柳絮
Web 开发 81,108 成员 341,721 内容