jdon框架中的数值型数据处理的疑问

06-05-09 jacal
请教各位有没有遇到这样的问题:

我使用的是oracle9i作为后台数据库,在jdonNews中,

建表如下:
create table t_news(
   newsid varchar2(20) not null,
   ... ...
   hitcount number(9,0) default 0, --新闻点击次数
   ... ...
)
CMP实体EJB中hitcount的类型设置为int,相应的get、set为:
public int getHitcount(){
  return this.hitcount;
}
public void setHitcount(int hitcount){
  this.hitcount = hitcount;
}
在news.ejb.dao.JdbcDao类的getNews(String Id)方法中:

... ...
        Map map = (Map) iter.next();
        ret = new News();
        ret.setNewsid(Id);
        ret.setHitcount( ((Integer) map.get("HITCOUNT")).intValue());
... ...
//以上省略了部分代码
在运行时候出现下列错误:
12:55:39,899 ERROR [NewsManagerBean] java.lang.Exception: SQLException: java.math.BigDecimal
12:55:39,899 WARN  [root] com.jdon.strutsutil.ModelListAction
java.lang.Exception:  the model Id=(17) maybe be deleted!
        at com.jdon.strutsutil.ModelListAction.fetchModel(ModelListAction.java:
... ...
<p>

不知道该要怎么解决?请大家帮忙!

banq
2006-05-09 17:41
还是数据类型问题。

数据表你用的可能是big Interger之类大整数型,其JDBC缺省对应是java.math.BigDecimal,而你的Model对象该字段可能用的是其他类型

猜你喜欢