如何获取实体扩展属性的值
2013-05-05 10:38
501 查看
如何获取实体扩展属性的值
{一}内在关系
首先要知道BOS中实现的一些规则,主要说明以下几个东东的内在关系
BOSUuid ---> BOSType---> Entity--->Table
根据BOSUuid可以获取BOSType,根据BOSType就可以获取一个唯一的实体,通过实体就可以知道对应的元数据表是哪个
其实Entity这个东东就是一个配置文件,有些东西和Hibernate的hmp配置文件的作用基本一样
其次是BOS的主要功能,元数据解析,建模工具、界面设计工具这些地方大量使用了元数据解析,
下面就说重点了,如何解析元数据,不需要自己写DOM什么的,用现成的啊。
com.kingdee.bos.metadata.MetaDataLoaderFactory--元数据装载工厂类
com.kingdee.bos.metadata.util.MetaDataLoader--根据MetaDataLoaderFactory封装的工具类
com.kingdee.bos.metadata.MetaDataUtils--看看这个就知道entity_pkmapping 、facade_pkmapping文件怎么使用了
{二}代码示例:
/**
* 获取OrgType类型的扩展属性值
* @param ctx
* @param bosType
* @param exPropName
* @return
*/
public static OrgType getEntityExPropOrgTypeValue(Context ctx,BOSObjectType bosType,String exPropName){
return OrgType.getEnum(getEntityExPropValue(ctx,bosType,exPropName));
}
/**
* 获取Boolean类型的扩展属性值
* @param ctx
* @param bosType
* @param exPropName
* @return
*/
public static boolean getEntityExPropBooleanValue(Context ctx,BOSObjectType bosType,String exPropName){
return Boolean.parseBoolean(getEntityExPropValue(ctx,bosType,exPropName));
}
/**
* 获取实体扩展属性值
* @param ctx
* @param bosType
* @param exPropName
* @return
*/
public static String getEntityExPropValue(Context ctx,BOSObjectType bosType,String exPropName){
EntityObjectInfo entity = MetaDataLoader.getEntity(ctx, bosType);
return entity.getExtendedProperty(exPropName);
}
{一}内在关系
首先要知道BOS中实现的一些规则,主要说明以下几个东东的内在关系
BOSUuid ---> BOSType---> Entity--->Table
根据BOSUuid可以获取BOSType,根据BOSType就可以获取一个唯一的实体,通过实体就可以知道对应的元数据表是哪个
其实Entity这个东东就是一个配置文件,有些东西和Hibernate的hmp配置文件的作用基本一样
其次是BOS的主要功能,元数据解析,建模工具、界面设计工具这些地方大量使用了元数据解析,
下面就说重点了,如何解析元数据,不需要自己写DOM什么的,用现成的啊。
com.kingdee.bos.metadata.MetaDataLoaderFactory--元数据装载工厂类
com.kingdee.bos.metadata.util.MetaDataLoader--根据MetaDataLoaderFactory封装的工具类
com.kingdee.bos.metadata.MetaDataUtils--看看这个就知道entity_pkmapping 、facade_pkmapping文件怎么使用了
{二}代码示例:
/**
* 获取OrgType类型的扩展属性值
* @param ctx
* @param bosType
* @param exPropName
* @return
*/
public static OrgType getEntityExPropOrgTypeValue(Context ctx,BOSObjectType bosType,String exPropName){
return OrgType.getEnum(getEntityExPropValue(ctx,bosType,exPropName));
}
/**
* 获取Boolean类型的扩展属性值
* @param ctx
* @param bosType
* @param exPropName
* @return
*/
public static boolean getEntityExPropBooleanValue(Context ctx,BOSObjectType bosType,String exPropName){
return Boolean.parseBoolean(getEntityExPropValue(ctx,bosType,exPropName));
}
/**
* 获取实体扩展属性值
* @param ctx
* @param bosType
* @param exPropName
* @return
*/
public static String getEntityExPropValue(Context ctx,BOSObjectType bosType,String exPropName){
EntityObjectInfo entity = MetaDataLoader.getEntity(ctx, bosType);
return entity.getExtendedProperty(exPropName);
}
相关文章推荐
- 如何添加EAS BOS 实体扩展属性
- js中如何复制一个对象,如何获取所有属性和属性对应的值
- ECharts图表组件之简单关系图:如何轻松实现另类站点地图且扩展节点属性实现点击节点页面跳转
- 如何获取自定义属性
- Java中如何获取spring中配置的properties属性文件内容
- 在Android里,应该如何在代码中获取attr属性的值
- 如何获取Input标签自定义属性的值
- java 利用反射机制,获取实体所有属性和方法,并对属性赋值
- 通过OpenSSL获取证书扩展属性之四:“CRL 分发点”和"颁发机构信息访问"
- 通过OpenSSL获取证书扩展属性之二:“密钥用法”和"增强型密钥用法"
- Java中如何获取spring中配置的properties属性文件内容
- 关于如何获取泛型参数的实体类型
- 基于Mozilla ThunderBird的扩展开发(三)---如何获取邮件的完整信息
- 如何获取离线安装Chrome扩展程序的包
- magento如何获取产品属性值 How to Obtain Custom Attribute Values in Magento
- 如何在跨平台的情况下获取可执行文件的详细信息和属性
- How to get the file's extend name in C++ - 在C++中如何获取文件的扩展名
- 原生JS中如何获取CSS属性中的值
- Flex中如何获取类中的所有静态属性
- Android,如何在代码中获取attr属性的值