开发者社区> 问答> 正文

关于domain ID 和 java.sql.Date 为null 两问题?报错

Koala ,您好:

项目中碰到两个问题,需向你们请教:

1,CRUD domain中的ID问题

首先,我在core工程中定义领域定义属性 myId,发现数据类型定义成 String,Long, int,自动生成代码都会报错。提示无法转换。后来发现领域类继承abstractEntity,会默认创建ID。 但问题又出现了,在add页面方法中,调用AbstractEntity.save()后,这时代码无法获得ID了,虽然DTO类有setID(Entity.getID())操作,但此时得到的ID值为 0。现在有两点疑问:1,如果用默认的ID,在save后怎么获得 ID值呢?(在xxxlist.jsp中是可以得到ID的) 2,如果使用自定义的ID,要定义成什么数据类型?

2,java.sql.Date问题

如果领域类有java.sql.Date类型的属性,发现如果该属性为null, 在BeanUtils.copyProperties 时就会报异常。这个问题你们有什么好的解决方法呢? 需要重写BeanUtils.copyProperties 方法吗?

还请Koala高手们抽空帮忙看下这两个问题,万谢。。。

展开
收起
爱吃鱼的程序员 2020-06-20 19:18:30 520 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    关于第一个问题我补充下:

    比如Person类我定义了LongPersonId,

        @Id
       @Column(name="PERSON_ID")
       @GeneratedValue(strategy=GenerationType.AUTO)

    生成的代码在新增是没问题的,但修改和删除功能就会报错了。具体错误提示如下:

    java.lang.IllegalArgumentException:ProvidedidofthewrongtypeforclassXXXPerson,gotclassjava.lang.Long

    关于第一个问题,你在web模块是不可以直接调用AbstractEntity.save()的。需要自己定义主键的话,那就不要集成AbstractEntity。

    第二个问题, BeanUtils是有bug的,建议这种情况下不使用 BeanUtils。

    引用来自“秋天18”的评论

    关于第一个问题,你在web模块是不可以直接调用AbstractEntity.save()的。需要自己定义主键的话,那就不要集成AbstractEntity。

    第二个问题, BeanUtils是有bug的,建议这种情况下不使用 BeanUtils。

    引用来自“秋天18”的评论

    关于第一个问题,你在web模块是不可以直接调用AbstractEntity.save()的。需要自己定义主键的话,那就不要集成AbstractEntity。

    第二个问题, BeanUtils是有bug的,建议这种情况下不使用 BeanUtils。

    引用来自“秋天18”的评论

    关于第一个问题,你在web模块是不可以直接调用AbstractEntity.save()的。需要自己定义主键的话,那就不要集成AbstractEntity。

    第二个问题, BeanUtils是有bug的,建议这种情况下不使用 BeanUtils。

    引用来自“秋天18”的评论

    关于第一个问题,你在web模块是不可以直接调用AbstractEntity.save()的。需要自己定义主键的话,那就不要集成AbstractEntity。

    第二个问题, BeanUtils是有bug的,建议这种情况下不使用 BeanUtils。

    很奇怪,debug下,getId()可以正常得到值。但是在Run就不行了,getId永远为0.

    引用来自“qizaodian”的评论

    很奇怪,debug下,getId()可以正常得到值。但是在Run就不行了,getId永远为0.

    引用来自“qizaodian”的评论

    很奇怪,debug下,getId()可以正常得到值。但是在Run就不行了,getId永远为0.

    debug下,不打断点也正常吗?

    2020-06-20 19:18:50
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server在电子商务中的应用与实践 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载