m0_68529977 2022-12-03 21:25 采纳率: 100%
浏览 30
已结题

Hibernate 中session报错问题

问题遇到的现象和发生背景

session对象创建显示有误

用代码块功能插入代码,请勿粘贴截图

package com.dtd;

import java.util.List;

import org.apache.log4j.Logger;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class UsersTest {
private static Logger logger=Logger.getLogger(UsersTest.class);
private static Session session=null;
private static SessionFactory sessionFactory=null;
/**
* 获取session
*/

public Session getSession() {
    //读取配置文件,创建sessionFactory对象
    sessionFactory=new Configuration().configure().buildSessionFactory();
    //创建session对象
    session=sessionFactory.openSession();
    return session;
}

/**
 * 关闭session
 */

public void closeSession() {
    if(session!=null)
        session.close();
    if(sessionFactory!=null)
        sessionFactory.close();
}

/**
 * 
 * 插入数据
 * @return
 */

public int insert(Users users) {
    session=getSession();
    Transaction transaction=session.beginTransaction();//开始事务
    int id=(int) session.save(users);//保存表
    transaction.commit();
    closeSession();
    return id;
}

/**
 * 更新数据
 * @param users
 */

public void update(Users users) {
    session=getSession();
    Transaction transaction=session.beginTransaction();//开始事务
    session.update(users);
    transaction.commit();
    closeSession();
}

/**
 * 删除表数据
 * @param users
 */

public void delete(Users users) {
    session=getSession();
    Transaction transaction=session.beginTransaction();//开始事务
    session.delete(users);
    transaction.commit();
    closeSession();
}

/**
 * 获取一条数据
 * @param id
 * @return
 */


public Users getUsersById(int id) {
    session=getSession();
    Users users=(Users)session.get(Users.class, id);
    closeSession();
    return users;
}

/**
 * 获取列表
 * @return
 */

@SuppressWarnings("unchecked")
public List<Users> getUsersList(){
    session=getSession();
    //List<Users> userList=(List<Users>) session.createQuery("from Users").list();旧版的方法
    List<Users> userList=(List<Users>) session.createQuery("from Users").getResultList();
    closeSession();
    return userList;
}

public static void main(String[] args) {
    UsersTest test=new UsersTest();
    Users users=new Users();
    users.setId(9);
    List<Users> usersList=test.getUsersList();
    for (Users users1: usersList) {
        logger.info(users1);
    }
}

}

运行结果及报错内容

img

img

我的解答思路和尝试过的方法

修改过配置文件,未见好转,只显示24行有错误,不知道主要错误是什么,跪求大神解答

我想要达到的结果
  • 写回答

2条回答 默认 最新

  • pzzhao 2022-12-03 21:59
    关注

    JAXB API是java EE 的API,在最新版的Java中(Java version1.8以上),不再包含这个 Jar 包。
    参考 Java异常处理: 缺包 ClassNotFound javax/xml/bind/JAXBException_星河_赵梓宇的博客-CSDN博客

    
    <dependencies>
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-impl</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-core</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>javax.activation</groupId>
            <artifactId>activation</artifactId>
            <version>1.1.1</version>
        </dependency>
    </dependencies>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月13日
  • 已采纳回答 12月5日
  • 创建了问题 12月3日

悬赏问题

  • ¥20 python忆阻器数字识别
  • ¥15 无法输出helloworld
  • ¥15 高通uboot 打印ubi init err 22
  • ¥20 PDF元数据中的XMP媒体管理属性
  • ¥15 R语言中lasso回归报错
  • ¥15 网站突然不能访问了,上午还好好的
  • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
  • ¥15 semrush,SEO,内嵌网站,api
  • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊
  • ¥15 振荡电路,ADS仿真