从dao层查出的数据到页面时数值都是零的异常

异常问题:

  IllegalArgumentException: argument type mismatch
  at cn.tedu.utils.BeanListHandler.handle(BeanListHandler.java:41)

  从dao层查询出的数据转发到jsp前台页面时,数值或者数量类的数值得出的结果只有零,而其它数据没毛病~~~

原因:导致其原因时数值类型转换异常。也就说数值的类型对不一致。

   eg:在dao层通过聚合函数SUM(int a)计算出数量值,最终得到一个BigDecimall类型的。这时类型就对不上了...

解决方法:对类型进行控制判断

1 Object obj =null;
2 if(pd.getPropertyType()==Integer.TYPE){
3     obj = rs.getInt(name);
4 }else{
5     obj = rs.getObject(name);
6 }
7 method.invoke(t, obj);//坑!!!坑!!!
时间: 2024-10-24 16:08:16

从dao层查出的数据到页面时数值都是零的异常的相关文章

反射实现增删改查(DAO层)——删除数据

先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * * 删除数据 */ @Override public void deleteObject(List<Map<String, Object>> params, String tableName) { StringBuilder sql = new StringBuilder( "DELETE FROM order_info WHERE 1=1 "); Connection connection =

反射实现增删改查(DAO层)——修改数据

先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * * 修改数据 * */ @Override public void updateObject(Object object, String tableName) { StringBuilder sql = new StringBuilder("UPDATE " + tableName + " SET "); Connection connection = null; PreparedStatement

反射实现增删改查(DAO层)——查询数据

先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * * 数据查询 * */ @Override public List<?> queryObject(List<Map<String, Object>> params, String tableName) { List<Object> objectList = new ArrayList<Object>(); StringBuilder sql = new StringBuilder(

反射实现增删改查(DAO层)——插入数据

先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * 插入数据 */ @Override public void addObject(Object object, String tableName) { StringBuilder sql = new StringBuilder("INSERT " + tableName + " VALUES("); Connection connection = null; PreparedStatement prep

DAO层,Service层,Controller层、View层介绍

来自:http://jonsion.javaeye.com/blog/592335 DAO层 DAO 层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此 接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及 有关数据库连接的参数都在Spring的配置文件中进行配置. Service层 Service 层主要负责业

DAO层,Service层,Controller层、View层

DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置. Service层:Service层主要负责业务模块的逻辑应用设计.同样是首先设计接口,再设计其实现的类,接着再Spring的配置文件中配

DAO层,Service层,Controller层、View层 的分工合作

DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置. Service层:Service层主要负责业务模块的逻辑应用设计.同样是首先设计接口,再设计其实现的类,接着再Spring的配置文件中配

[转]DAO层,Service层,Controller层、View层

来自:http://jonsion.javaeye.com/blog/592335 DAO层 DAO 层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此 接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及 有关数据库连接的参数都在Spring的配置文件中进行配置. Service层 Service 层主要负责业

一个项目中说系统分为表现层、控制层、逻辑层、DAO层和最终数据库五层架构

表现层就是看到的东西,比如你现在看到的当前页面控制层就将你的请求从页面传到后台代码逻辑层就是处理你的请求的代码DAO层就是将数据存到数据库中的代码数据库就是数据库了,存东西用的DAO层就是将访问数据库的代码,数据库层是数据存储与管理的代码 O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO. VO,值对象