java中hibernate的Serializable 10

publicinterfaceCommonDAO{publicObjectget(Classclazz,Serializableid);publicSerializabl... public interface CommonDAO {
public Object get(Class clazz,Serializable id);
public Serializable add(Object o);
}
这是hibernate底层的一个dao接口,add是通过hibernate向数据库save一个对象,但它为什么返回一个Serializable接口类型?是说明save的对象要实现Serrializable接口吗?如果保存的对象没有实现序列化就会抛异常吗?还有get方法的第二个参数是什么意思?能举个例子吗?谢谢
展开
 我来答
shy2850
推荐于2018-04-11 · TA获得超过6774个赞
知道大有可为答主
回答量:2505
采纳率:55%
帮助的人:1583万
展开全部
我觉得这个序列化对象是指:当前表项中的主键所对应的实体字段。
第一个方法public Object get(Class clazz,Serializable id);
显然是查找对象时所需要的表(即实体类)和id(即主键,主键可以是一个列项或多个列项)因为主键需要被hibernate进行管理以用来在session中'备份'或者实现远程传递等等,序列化是有必要的。

至于第二个方法:public Serializable add(Object o);
返回值应该就是保存对象得到的序列化主键(有的对象保存完成才能知道主键的值,如含有自增字段的)。
snwepql
2011-01-04 · TA获得超过253个赞
知道答主
回答量:249
采纳率:0%
帮助的人:167万
展开全部
Serializable序列化与反序列化使用,接口,没有要实现的方法。
标记为序列化后,可以将其写入到流里面,使别处的虚拟机可以识别。
比如,本地的一个引用,要发送到另一台机器,就需要标记序列化,使那一台机器的虚拟机可以识别。
在hibernate中,不仅是复合主键,全部ORM的实体类,都要实现序列化。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友68795a8
2010-12-29
知道答主
回答量:30
采纳率:0%
帮助的人:12万
展开全部
第一个方法public Object get(Class clazz,Serializable id);
就是根据id查对象
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式