zoukankan      html  css  js  c++  java
  • session.createQuery()不执行和java.lang.reflect.InvocationTargetException

      今天写SSH的工程的时候,执行到一个DAO中的Query query = session.createQuery(hql)的时候,没有成功执行,直接跳到了finally,然后前台报了500和java.lang.reflect.InvocationTargetException的错误。

      代码如下:

    package dao;
    
    import java.util.List;
    
    import model.AccountInfo;
    
    import org.hibernate.HibernateException;
    import org.hibernate.Query;
    import org.hibernate.Session;
    import org.hibernate.Transaction;
    
    import util.HibernateUtil;
    
    public class AccountDao {
        public Boolean checkPassword(String account,String password){
            Session session = HibernateUtil.getSession();
            Transaction tran = null;
            List<AccountInfo> list = null;
            try{
                tran = session.beginTransaction();
                String hql="from AccountInfo as a where a.account=:username";            
                Query query = session.createQuery(hql);
                query.setString("username",account);
                list = query.list();
                tran.commit();
            }catch(HibernateException he){
                tran.rollback();
                he.printStackTrace();
            }finally{
                session.close();
            }
            if( list.size()==0 || !password.equals(list.get(0).getPassword()) )
                return false;
            else
                return true;
        }
    }

      然而实际上跟代码没有卵关系"( ̄▽ ̄)"""。是我用MyEclipse安装的hibernate4的lib的antlr-2.7.7.jar和struts2的lib的antlr-2.7.2.jar冲突了,删除后者即可。

  • 相关阅读:
    openssl用法详解
    单例模式
    __new__静态方法
    django自带加密模块的使用
    celery 框架
    理解RESTful架构
    [Swoole] 在Ubuntu下安装、快速开始
    [Javascript] 动态隐藏和显示 Layui 数据表格的列
    [PHP] CURL获取cookie,模拟登录获取数据
    [Python] 命令行模式阅读博客园的博文
  • 原文地址:https://www.cnblogs.com/lucio_yz/p/4811281.html
Copyright © 2011-2022 走看看