我在数据库里加了一个date类型的Xwny字段,在类里也写了getxwny setxwny方法,以及XML文件也改了,但是当我调用set方法的时候出了这样的异常setXwny - argument type mismatch

解决方案 »

  1.   

    public Date getXwny() {
    return this.xwny;
    }
    public void setXwny(Date xwny) {
    this.xwny = xwny;
    }这是xml 里面的
     <property
    column="XWNY"
    length="23"
    name="xwny"
    not-null="false"
    type="date"
     />
      

  2.   

    argument type mismatch:参数类型不正确,写的很清楚了,你调用setXwny()传入的不是一个date类型
      

  3.   

    是不是本来要util下的date,你却给了一个sql.date进去??提示很明显啊,就是参数类型不匹配啊
      

  4.   

    <property
    column="XWNY"
    length="23"
    name="xwny"
    not-null="false"
    type="date"
     />
    换成
    <property
    column="XWNY"
    length="7"
    name="xwny"
    not-null="false"
    type="timestamp"
     />
    试试
      

  5.   

    问题是找到了,但是怎么把java.util.Date 转换为sql date类型????
      

  6.   

    如果用DateFormat呢?
    Calendar cal = Calendar.getInstance();
    DateFormat df  = DateFormat.getDateInstance();
     String s = df.format(cal.getTime());
    将Data转换成了String,在数据库中索性就存String类型
    还有,如果在数据库中存的是long类型的化,rs.getDate可以直接转化成Date类型,但是Hibernate就不知道了
      

  7.   

    如果你取出的SQLDate变量为sd,试一试下面的代码
    SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd");
    Date d = sDateFormat.parse(sd.toString());事先通告一下,以上代码没有测试,缺乏测试环境
      

  8.   

    问题是找到了,但是怎么把java.util.Date 转换为sql date类型????
    java.util.Date now  = new java.util.Date();
    java.sql.Date date d = new java.sql.Date(now.getTime());