mybatis如何实现有继承关系的类的插入?

有一个抽象父类Message,有子类TextMessage,EventMessage;messageService有一个insert(Messagemessage)方法,... 有一个抽象父类Message,有子类TextMessage,EventMessage;messageService有一个insert(Message message)方法,如何通过这个insert方法,实现上述不同子类的插入操作。 展开
 我来答
百度网友e19f776
推荐于2018-03-28 · 知道合伙人互联网行家
百度网友e19f776
知道合伙人互联网行家
采纳数:11569 获赞数:54357
从事电子商务5年经验,对电商有独到认识,现任莱康科技顾问

向TA提问 私信TA
展开全部
我个人的想法:你可以建一张对应于父类Message的表,然后不管是哪个子类的对象传过来插入时都不会出错(没有的属性为NULL)。
比如Message有a,b,c等属性 TextMessage有a等属性 EventMessage有b,c等属性

<insert id="insertMessage" parameterClass="Message">
insert into Message(a, b, c...) values (#a#, #b#, #c#...)
</insert>
读取显示Message的时候判断一下
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tiaotiaolove
2013-05-27 · 超过11用户采纳过TA的回答
知道答主
回答量:58
采纳率:0%
帮助的人:29万
展开全部
我个人的想法:你可以建一张对应于父类Message的表,然后不管是哪个子类的对象传过来插入时都不会出错(没有的属性为NULL)。
比如Message有a,b,c等属性 TextMessage有a等属性 EventMessage有b,c等属性

<insert id="insertMessage" parameterClass="Message">
insert into Message(a, b, c...) values (#a#, #b#, #c#...)
</insert>
读取显示Message的时候判断一下
追问
我问的意思是子类都有各自的属性,父类不存在
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Bladnir
2013-05-28
知道答主
回答量:20
采纳率:0%
帮助的人:7.3万
展开全部

public void insert(Message message){

   String name = message.getClass().getSimpleName();

   if(name.equals("TextMessage")){

 //保存TextMessage的操作

   }else if(name.equals("EventMessage")){

      //保存EventMessage的操作

   }

}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式