关于InstantiationException错误的原因
来源:互联网 发布:淘宝客推广大师官网 编辑:程序博客网 时间:2024/06/05 10:01
关于InstantiationException错误的原因
(2009-08-11 16:39:21)情感
分类: 系统开发could not initialization Dammanage:com.ibatis.dao.client.DaoException: Error while configuring DaoManager.
Cause: com.ibatis.dao.client.DaoException: Error configuring DAO.
Cause: java.lang.InstantiationException: com.finance.ProductDaoImpl
Caused by: java.lang.InstantiationException: com.finance.ProductDaoImpl
Caused by: com.ibatis.dao.client.DaoException: Error configuring DAO.
Cause: java.lang.InstantiationException: com.finance.ProductDaoImpl
Caused by: java.lang.InstantiationException: com.finance.ProductDaoImpl
java.lang.InstantiationException从字面意思上来看是说不能实例化ProductDaoImpl类,出现这种异常的原因通常情况下是由于要实例化的对象是一个接口或者是抽象类等无法被实例化的类。但是在这次的错误中却是个例外,这个错误是由持久类Product引发的,ProductDaoImpl类是我用来查询结果的操作方法集合,它继承了HibernateTemplateDao类,实现了ProductDao接口,这个问题困扰了本人很久,经过网络上的查询得到启发:发现产生这个错误的原因是持久类Product中没有不带参数的构造方法,因为iBATIS在对象建立中,会使用不带参数的构造函数来建立对象,而现在我的Product类中只有一个带参数的构造方法以及一系列的getter/setter方法。只需要在Product类中加入一个不带参数的构造方法,该方法不必执行任何操作,就像默认的构造方法一样。在Hibernate中就有明确的要求:每一个持久化类都必须带一个不带参数的构造方法。
这里说明一点,如果你在类中声明了带参数的构造函数,会自动覆盖无参数的构造函数,这样系统就无法调用无参数的构造函数实例化类,所以会出现这种错误。
这个问题在使用类反射实例化某个对象时,如果这个对象不包含无参数的构造函数,也会出现这个错误,解决办法是在这个要通过类反射实例化的这个类中添加一个空的无参数构造函数就可以了.
- 关于InstantiationException错误的原因
- 关于InstantiationException错误的原因
- 关于InstantiationException错误的原因
- (转)关于InstantiationException错误的原因
- iBatis中java.lang.InstantiationException错误的原因
- 关于InstantiationException的情况...
- android.app.Fragment$InstantiationException的原因分析
- android.app.Fragment$InstantiationException的原因分析
- IntentService的java.lang.InstantiationException错误
- 【IntentService】IntentService的java.lang.InstantiationException错误
- InstantiationException 异常原因
- InstantiationException原因及解决办法
- java.lang.InstantiationException错误
- 关于SQL2000的种种错误原因........
- 关于弹出GnomeSystemTrayService.initNative错误的原因
- 关于STM32处理器的HardFault_Handler错误原因
- 关于链接错误的一个罕见原因
- 关于[UIViewController _loadViewFromNibNamed:bundle:] 错误的原因
- oracle中快速复制数据表(创建数据表)
- (六)c++和JavaScript实现二叉堆
- 快速开发android应用2-使用TextInputLayout实现用户登录及验证
- centos7安装,使用视频压缩,超级好用的工具FFmpeg
- shell脚本符号篇
- 关于InstantiationException错误的原因
- NLP_LCS
- JAVA 攻城狮 第九天
- cpu伪共享问题
- 5.ThinkPHP 3.1.2 CURD特性
- shell脚本语法篇
- Spark的standalone模式部署
- 手把手原生js简单轮播图
- JAVA笔记-2017年7月3日更新