【问题标题】:Ignoring Field in Apache Olingo忽略 Apache Olingo 中的字段
【发布时间】:2017-10-03 20:59:27
【问题描述】:

目前我的项目正在使用 JPA 进行数据库连接。

我也在使用默认的 OdataJPA 处理器。

如何实现在我的 odata2 API 响应中包含某些字段,例如(“密码”)。还是我真的必须实现 customOdataJPAProcessor?

【问题讨论】:

    标签: java apache odata olingo


    【解决方案1】:

    排除某些 JPA 实体属性的最简单方法是定义 JPA-EDM 映射模型。这基本上是一个符合this schema 的XML 文件。您可以在此处的文档中阅读有关它的更多信息:redefining OData JPA metadata

    您有两种不同的方式来链接映射模型 XML,您可以指定位于 WEB-INF 文件夹中的文件的文件名(假设您正在构建 WAR),或者,如果这不够灵活,您可以可以创建JPA EDM extensionreturn the mapping model file as a stream

    这样的文件可能是这样的:

    <?xml version="1.0" encoding="UTF-8"?>
    <JPAEDMMappingModel xmlns="http://www.apache.org/olingo/odata2/jpa/processor/api/model/mapping">
        <PersistenceUnit name="My_Persistence_Unit">
            <JPAEntityTypes>
                <JPAEntityType name="MyEntity">
                    <EDMEntityType>MyEntity</EDMEntityType>
                    <EDMEntitySet>MyEntities</EDMEntitySet>
                    <JPAAttributes>
                        <JPAAttribute name="attribute" exclude="true" />
                    </JPAAttributes>
                    <JPARelationships />
                </JPAEntityType>
            </JPAEntityTypes>
            <JPAEmbeddableTypes />
        </PersistenceUnit>
    </JPAEDMMappingModel>
    

    【讨论】:

      猜你喜欢
      • 2016-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-02
      • 1970-01-01
      • 1970-01-01
      • 2021-06-11
      • 2010-12-03
      相关资源
      最近更新 更多