Grails指南摘要-305-扩展和继承
2013-06-04 22:12
218 查看
多个domain继承自同一个对象
生成的关系为一张表,可以在表中增加一个鉴别字段区分哪条记录是employee,哪条是player,这种方式称为鉴别器识别
还可以用整数来识别,用关系方式设计表会常用这种方式,鉴别器中42代表employee
用对象的方式更加直观,把继承关系设置成多个one-to-one对象,分别放在不同的关系表中存放
class Person { String frstName String lastName Integer age } class Employee extends Person { String employeeNumber String companyName } class Player extends Person { String teamName }
生成的关系为一张表,可以在表中增加一个鉴别字段区分哪条记录是employee,哪条是player,这种方式称为鉴别器识别
class Employee extends Person { String employeeNumber String companyName static mapping = { // the value of the discriminator column for //Employee instances should be 'working people' discriminator 'working people' } }
还可以用整数来识别,用关系方式设计表会常用这种方式,鉴别器中42代表employee
class Employee extends Person { String employeeNumber String companyName static mapping = { discriminator value: '42', type: 'integer' } }
用对象的方式更加直观,把继承关系设置成多个one-to-one对象,分别放在不同的关系表中存放
class Person { String frstName String lastName Integer age static mapping = { tablePerHierarchy false } }
相关文章推荐
- Grails指南摘要-401-Controller中设置默认Action
- Grails指南摘要-402-logging
- Grails指南摘要-403-生命周期
- Grails指南摘要-301-属性验证
- Grails指南摘要-302-瞬时属性
- Grails指南摘要-303-自定义对象映射
- Grails指南摘要-304-对象关系
- Grails指南摘要-306-嵌入式对象
- Grails指南摘要-307-测试领域类
- iOS纪录-类别、扩展和继承的概念
- php类的扩展和继承
- 菜鸟入门之火狐浏览器扩展和插件使用指南
- MVC扩展Filter, 通过继承AuthorizationAttribute限制IP
- 【iOS Tips】004-继承、类别、扩展含义及区别?
- 高质量 C++/C 编程指南 林锐 摘要 内存管理
- 从头认识java-7.5 怎样通过继承扩展接口?
- Delphi 组件开发教程指南(4)组件生成过程(针对TWinControl继承而来的组件)
- 浅谈利用多态,继承和接口来封装代码,提高Java代码的可扩展性
- 谈谈iOS中Categories(分类)、Extensions(类扩展)和继承的区别
- 通过继承实现edit控件的拖拽文件功能扩展的一般步骤