首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hyperjaxb3命名策略配置

Hyperjaxb3命名策略配置
EN

Stack Overflow用户
提问于 2011-06-26 06:57:38
回答 1查看 1.6K关注 0票数 0

我试图将相同复杂类型的多个实例嵌入到单个实体中,除非我为每个实例定义一个新的复杂类型,否则这似乎不会起作用。据我所知,这可能是因为默认的hyperjaxb3命名策略。有没有办法通过注释更改默认的hyperjaxb3命名策略(例如,类似于设置id策略),而不是向插件本身添加代码?谢谢,弗雷德里克

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-26 17:55:23

如果您提供一个示例来说明您正在尝试做什么:模式、生成的注释以及您想要生成的内容,就会容易得多。

这是我在其中一个测试项目中拥有的内容。模式:

代码语言:javascript
复制
<xs:element name="a" type="aType"/>
<xs:complexType name="aType">
    <xs:sequence>
        <xs:element name="b0" type="bType" minOccurs="0"/>
        <xs:element name="b1" type="bType" minOccurs="0"/>
    </xs:sequence>
</xs:complexType>
<xs:complexType name="bType">
    <xs:annotation>
        <xs:appinfo>
            <hj:embeddable/>
        </xs:appinfo>
    </xs:annotation>
    <xs:sequence>
        <xs:element name="c" minOccurs="0">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:maxLength value="999"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:element>
        <xs:element name="d" type="xs:int" minOccurs="0"/>
    </xs:sequence>
</xs:complexType>

生成:

代码语言:javascript
复制
@Embedded
@AttributeOverrides({
    @AttributeOverride(name = "c", column = @Column(name = "B0_C", length = 999)),
    @AttributeOverride(name = "d", column = @Column(name = "B0_D", precision = 10, scale = 0))
})
public BType getB0() {
    return b0;
}
@Embedded
@AttributeOverrides({
    @AttributeOverride(name = "c", column = @Column(name = "B1_C", length = 999)),
    @AttributeOverride(name = "d", column = @Column(name = "B1_D", precision = 10, scale = 0))
})
public BType getB1() {
    return b1;
}

我没有看到命名冲突。

更新

以下是一些关于自定义命名的链接:

请查看此指南:

http://confluence.highsource.org/display/HJ3/Customization+Guide

下面是一个测试项目,它演示了其中的一些功能:

http://java.net/projects/hj3/sources/svn/show/trunk/ejb/tests/cu-one

您还可以编写和配置自己的命名策略:

http://java.net/projects/hj3/sources/svn/show/trunk/ejb/tests/custom-naming

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6481023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档