这个问题出现在前台显示上面。实体类有一个公共父类IdEntity ,在它上面仅有一个Id字段。当时在前台显示Book类的checkboxes,结果发现id部分总是为null。在一位朋友的帮助下,查了一些文档,最后猜测问题可能出现在父类上面。但是对数据库的测试则显示Id是可以获得的,问题出现在到前台的传输上面。
之后为了确定问题,临时新建了一个父类,包含了一些其他的字段,结果发现问题重现了。父类的字段始终显示为null。
讨论了一段时间,中间去spring官方论坛上寻求过答案,有一个跟我是一模一样的问题,但是下面都是对问题的猜测,提问者的问题最后也没有解决。但是有一个人的回答中用了Serializable这个词,简直眼前一亮!!!
没错,问题就是出现在基础的序列化上面。IdEntity作为公共父类,应当实现Serializable接口的,但是由于缺乏经验,这个类没有实现。所以才会出现这种问题。
以作警示。
另外,今晚阅读了下《写给大忙人看的java SE8》…函数式简直太牛了!!!