问题标签 [hyperjaxb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 在 hyperjaxb 中自定义休眠属性
的默认配置hyperjaxb
是创建休眠注释,这会导致hibernate
注释产生令人难以置信的冗长SQL
语句,SQLException
最坏的结果是 s,最好的情况是性能下降。具体来说,该CascadeType.ALL
设置似乎是默认设置。如何覆盖默认设置,以便自定义设置 、 和其他参数CascadeType
?FetchType
是否可以在全局级别设置这些默认变量,这样我就不必更改我的 schema.xsd 文件中数百个引用中的每一个?
这是一个例子。 Hyperjaxb
正在生成以下hibernate
注释:
来自以下架构片段:
java - 在 hyperjaxb 中自定义获取类型
我在 hyperjaxb 中阅读了有关 fetchtype 的链接。从外观上看,似乎只能将 a 添加simpleType
fetch-type
到xsd
文件中,然后将fetch
属性添加到每个complexType
.
有人将如何自定义以下xsd
片段,以便下面底部生成的 java 方法具有fetchtype=lazy
注释?
这是应该说 fetchtype=lazy 的 Java 属性:
此外,如何具体(即使用什么特定语法)fetchtype
在所有方法中设置全局默认值,以便只需要覆盖某些属性?
java - 将 hyperjaxb3 升级到 jpa 2.1
我正在尝试在使用 maven、jpa、hibernate 和 hyperjaxb 的 eclipse 项目中升级到 JPA 2.1。当我尝试Run As..Run on Server
从 Eclipse 中执行操作时出现以下错误:
我mvn dependency:tree
在项目的根文件夹上运行,问题似乎是 hyperjaxb3 使用的是 JPA 2.0,与 JPA 2.1 冲突。有没有办法让 hyperjaxb3 使用 JPA 2.1?或者是否有其他方法可以解决此错误,以便我的应用程序无需删除 hyperjaxb3 即可获得 JPA 2.1 的好处?
这是我从mvn dependency:tree
windows 命令行的 eclipse 项目的根文件夹中得到的输出:
java - Jaxb 列表解组顺序
我有一个如下所示的 xml 文件:
以及对应的 Java 类:
解组工作正常,我的元素列表也填充了适当的元素,但有时元素在列表中被交换。Eq 有时我会得到一个元素 1 和 2 交换或元素 2 和 3 交换位置的列表。这会影响稍后在对象处理期间的 equals 方法。我无法弄清楚究竟是什么影响了元素在列表中的插入顺序。
是否有任何注释或其他方式来定义元素的插入顺序?有人看到我的代码有任何其他问题吗?
问候,伊琳娜。
更新: 我的架构:
我的绑定-xjc.xjb:
java - @LazyCollection(LazyCollectionOption.FALSE) 在 hyperjaxb 中?
如何将集合设置@LazyCollection(LazyCollectionOption.FALSE)
在 hyperjaxb 中?
这是示例: 我有一个 xml 节点ab
,它可以包含 type 的子节点cd
列表或 type 的子节点列表ef
。两者cd
且ef
仅包含文本/字符串内容。我有一个 xsd 定义,我通过 JAXB 和 hyperjaxb 运行它来创建带有休眠注释的 java 类,并带有数据库表。我如何让 hyperjaxb@LazyCollection(LazyCollectionOption.FALSE)
为每个集合设置,而不是设置 fetchtype?
xml 看起来像:
或者:
xsd 看起来像:
生成的实体应如下所示:
jpa - 重命名使用自定义命名策略生成的外键列
我想更改我的 Schema 生成的外键列的名称。以下是我正在使用的架构配置:
当我运行此配置时,我得到了 2 个表:1. ActivityDim 2. ActivityFact(ActivityDim Id 作为外键,名称为 activityDim_ActivityFact_Id)
我想将上面生成的名称更改为在这种情况下为 actvitiyDim 的架构元素名称。我不确定如何使用自定义命名策略。我试图覆盖 foreignKeyColumnName 方法,但没有奏效
我还在我的 persistence.xml 中给出了这个类的引用
我是 Hibernate 的新手,我的理解可能有点脱节。有人可以建议吗?
hibernate - 如何在xsd中定义多对一的双向关系,以便hyperjaxb3可以生成正确的实体类
我必须在 xml 模式中定义双向多对一关系,hyperjaxb3 正在使用它来生成实体类。
当我尝试在每个实体声明中引用这两个实体时,类转换会引发异常。
我使用 maven 作为构建工具。请建议。
maven - 使用 Hyperjaxb 在生成的 JPA 模型上设置列长度
在我当前的项目中,我需要处理一组包含一些财务信息的 XML 文件,然后对这些数据进行一些复杂的查询以填充数据库模式。
这些 XML 文件是基于 XSD 的,我使用 Hyperjaxb3 maven 插件从中生成 JPA 类,一切似乎都运行良好。不幸的是,我发现并发出问题,即使在 Hyperjaxb 文档、Google 和此处搜索了数小时后,我也无法找到解决方案。
这是一个 XML 文件的片段:
该问题与标签元素有关。其XSD定义如下:
生成的 java 类如下所示:
我的问题是,如何定义“内容”列的长度?目前,我一直在玩我的绑定文件
但完全没有区别。哦,顺便说一句,如果可能的话,应该避免对 XSD 文件进行更改,因为它是由第三方提供的。
java - hyperjaxb3 添加额外的列(即创建时间戳)
我正在尝试添加一个额外的列,使用绑定文件到从 xsd(一个大的)获得的模型。添加的字段需要持久化,但不需要序列化。
我试过了,hj:generated-property
但它什么也没做。
为了提供到目前为止我尝试过的示例,我使用来自 git 源的 PO 示例进行了测试,标记为 0.6.0 ejb/tests/po-customized,并将其添加到绑定中...
绑定.xjb
运行时mvn clean test
,PurchaseOrderType没有新字段。测试运行没有错误。
是否可以添加这样的字段?
java - Hyperjaxb3:是否可以避免在 PO 样本上创建 Items 表/类?
我试图避免加入课程创建。我测试了一些绑定配置,但似乎无法完成。
在标签 0.6.0 ejb/tests/po-customized 上来自 git 源的 PO 示例中,我尝试了一些配置。
首先,我在绑定中添加了 join-column 作为一对多映射
绑定.xjb
这只会将 getItem 中的注释从 JoinTable 更改为 JoinColumn。
另外,我试图通过告诉它直接添加一个列表来覆盖 xsd 映射。以下代码不起作用,但这是我一直在尝试的一般想法......(永远不会让类似的东西起作用)
绑定.xjb
是否可以使用此定义生成PurchaseOrderType ?(省略了一些 xml 注释)
请注意,在此代码中,我直接指向生成的 Item,而不是 Items.Item。
非常感谢!