# 实体

概述: 实体就是指通过XSD来定义的SDO的数据对象(commonj.sdo.DataObject)。 一个实体会有类型,类型会包含一些属性,每个属性又都有自己的类型。 这就类似于一个Java Class的定义,每个Class都有自己的属性,每个属性也会有相应的Class。 可以把DataObject和JavaBean进行类比,2种对象都是用于存放数据的。 在ide中可以创建3种不同类型的实体,分别是持久化实体、服务实体、引用实体和查询实体,实体间有4种关联关系:单向1:1关联、单向1:N关联、单向N:1关联、双向1:N关联。

# 本章节包含下面几个部分

  1. 实体集
  2. 持久化实体
  3. 服务实体
  4. 引用实体
  5. 查询实体

# 实体集

# 概述

实体集是一系列实体的集合,用来统一管理实体。

# 创建实体集

  1. 选择构建包的实体资源,右键,在下拉菜单中选择新建实体集。

    table_entity_add1

    entity_add2

  2. 在弹出的弹框中输入实体集编码和实体集名称,点击创建按钮。

    entity_add3

  3. 创建成功,当前构建包下新增了mytest的实体集。

    entity_add4


# 持久化实体

# 概述

持久化实体是和数据库表有映射关系的实体:持久化实体可以生成数据库表;数据库表也可以拖入到实体集中,生成对应的持久化实体。持久化实体里的基本属性可以和数据库表列做映射。

# 创建实体

创建持久化实体有两种方式:从实体中拖入持久化实体;从数据源里拖入表生成持久化实体。

  • 选中要创建的实体集,打开实体编辑界面,从实体框中拖拽持久化实体到画布上。

    persistent_entity_add

    persistent_entity_add1

  • 从数据源的表中拖入到画布中。

    entity_add5

# 配置实体

  1. 双击持久化实体,可以对此进行配置。对实体进行修改显示名称、名称、数据库表、添加基本属性、上移下移、删除属性的操作。

    persistent_entity_config

    示例进行的操作是修改实体的名称、显示名称,添加一个基本属性id。

    persistent_entity_config1

  2. 持久化实体也可以对属性的实体属性和数据库属性进行修改操作,单击属性列修改对应的属性配置,示例为设置id属性为主键的操作。

    persistent_entity_config1

  3. 点击弹框的确定按钮,并点击画布右上角的保存按钮(或者快捷键ctrl+s/command+s),保存操作。

    persistent_entity_config3

    persistent_entity_config4

# 生成表

  1. 选中实体集,右键,选择生成表按钮。

    create_table1

  2. 弹出生成脚本弹框,默认脚本信息内容为生成本实体集下所有的数据库表,可以对脚本信息进行修改。点击生成脚本按钮,操作生效,按照脚本信息生成对应的表。

    create_table2

# 重新加载

当持久化实体对应的数据库表字段有改动(表字段有新增,当前表字段数据类型变化)时,点击按钮后,实体会改变与数据库表保持一致。

操作:在持久化实体右键,选择重新加载。

reload

# 建立关系

  1. 对两个持久化实体建立关联关系。把鼠标移入其中一个实体上,当每个实体上的四个锚点处于高亮状态,连接实体间的锚点进行关联操作。

    addRelation1

  2. 对一个持久化实体建立关联关系,即自关联。自关联可选择关联关系(单向1:n关联,单向n:1关联,双向1:n关联)。

    addRelation1

  3. 弹框关联关系弹框,可以选择四种关联关系(单向1:1关联,单向1:n关联,单向n:1关联,双向1:n关联)。

    addRelation2

  4. 当关联关系为除1:1的其他三种类型时,可以设置是否加载关联实体和n端的关联属性。

    addRelation3

    addRelation4

  5. 关联的连线还可以双击编辑和右键删除关系。

    addRelation5


# 服务实体

# 概述

通过整合已发布的脚本配置服务功能,可以进行服务实体的增删改查。

服务实体和数据库表没有映射关系,所以不能生成表也没有四种关联关系。

# 创建实体

  1. 选中要创建的实体集,打开实体编辑界面,从实体框中拖拽服务实体到画布上。

    service_entity_add

    service_entity_add2

# 配置实体

  1. 双击服务实体,可以对实体进行配置。可以对实体进行修改显示名称、修改名称、添加基本属性、上移下移、删除属性的操作。

    service_entity_config

  2. 单击属性列可以修改对应的属性配置。

    service_entity_config2

# 绑定服务

  1. 双击服务实体,打开实体属性设置弹框后,切换到服务配置的标签,可以对服务实体绑定服务。

    service_entity_config3

  2. 选择服务

    • 根据需要绑定不同服务类型的输入框,选择对应的服务,点击确定按钮,完成绑定服务操作。

    service_entity_config4

    • 或者点击一键生成按钮,弹出自动生成的服务窗口,点击确定后完成绑定服务操作。

    service_entity_config5

    service_entity_config6

    service_entity_config7


# 引用实体

# 概述

引用实体是从其他数据集中拖入的持久化实体。

持久化实体和引用实体可以关联关系,但是引用实体不能作为主端关联其他实体(持久化实体和引用实体),即持久化实体只能作为主端跟引用实体关联单向的三种关系(单向1:1,单向1:n,单向n:1)。

# 创建实体

创建引用实体有两种方式:

  • 选中要创建的实体集,打开实体编辑界面,从实体框中拖拽引用实体到画布上。

    refer_entity_add1

    双击引用实体后,弹出选择实体弹框,点击选中实体,点击确定按钮。

    refer_entity_add2

    引用实体配置完成后的界面。

    refer_entity_add3

  • 引用实体还可以从资源树中,选择其他实体集的持久化实体,拖入到画布中。示例是从test实体集拖入实体到本实体集中。

    refer_entity_add4

    refer_entity_add5

# 建立关系

引用实体可以跟持久化实体绑定关联关系,但是不能作为主端,操作步骤跟持久化实体一样。

refer_entity_addrelation1

refer_entity_addrelation2


# 查询实体

# 概述

查询实体是通过查询操作获得的实体。可以通过多表查询、过滤查询获得想要的实体

查询实体可以与其他实体进行关联操作。

# 创建实体

  1. 选中要创建的实体集,打开实体编辑界面,从实体框中拖拽查询实体到画布上。

    ![query_entity_add1](./imgs/query _entity_add1.png)

# 配置实体

  1. 双击查询实体,可以对实体进行配置。点击编辑并输入查询语句进行查询实体操作。查询后的实体可以对实体显示名称、实体名称、实体属性(显示名称、显示控件)进行修改。实体名称仅在创建查询实体时可以进编辑。

    ![query_entity_add2](./imgs/query _entity_add2.png)

    ![query_entity_add3](./imgs/query _entity_add3.png)

  2. 单击tab中"+"可以添加连接类型。注意生成实体时按照default类型进行查询。

    ![query_entity_add4](./imgs/query _entity_add4.png)

    ![query_entity_add5](./imgs/query _entity_add5.png)

    ![query_entity_add6](./imgs/query _entity_add6.png)

上次更新: 2023/7/20下午12:25:28