EclipseLink提供全面的开源Java持久性解决方案。 EclipseLink专注于标准(JPA,JAXB,SDO),它们具有针对跨数据源,格式和容器的企业软件开发人员的高级功能,性能和可伸缩性。
期望的结果: 轻松切换 .. .. 和 期望的结果: 轻松切换 <root> <child> <prop1>..</prop1> <prop2>..</prop2> </child> <root> 和 <root> <child> <prop1>..</prop1> <prop2>..</prop2> <prop3>..</prop3> <prop4>..</prop4> </child> </root> 我的代码 根.java @XmlRootElement(name= "root") public class Root { @XmlElement(name="child") public Child child } 扩展根.java @XmlRootElement(name= "root") public class ExtendedRoot extends Root { @XmlElement(name="child") public ExtendedChild child } Child.java @XmlTransient public class Child { // prop1, prop2 } 扩展子进程.java @XmlType(propOrder = {"prop1", "prop3","prop4", "prop2"}) public class ExtendedChild extends Child { // prop3, prop4 } 主要 System.setProperty("javax.xml.bind.context.factory", "org.eclipse.persistence.jaxb.JAXBContextFactory") Class clazz = extendChild ? ExtendedRoot.class : Root.class; JAXBContext jc = JAXBContext.newInstance(clazz); Marshaller marshaller = jc.createMarshaller(); marshaller.marshal(formattedJob, tempFile); 实际效果 <root> <child xs:type="ExtendedChild"> <prop1>..</prop1> <prop2>..</prop2> <prop3>..</prop3> <prop4>..</prop4> </child> </root> 如何从 xs:type=... 标签中排除此 child? 此处使用 xs:type 是因为 child 属性的值是多态的。如果没有它,JAXB 就没有机会决定在读取您自己的 XML 文档时使用哪个类。 JAXB 并不是那么聪明,首先要内省元素,然后选择最合适的类。 但是阅读时还有一些其他的要点: 您是否知道,ExtendedRoot 有两个名为 child 的属性(继承自 Root 的 super.child 和它自己的 this.child)?由于 ExtendedChild 是 Child,因此 ExtendedChild 也可以存储到以下两个属性之一: 首先,您可能想知道子元素出现在对象中的位置。 因为您可以将 ExtendedChild 存储到 Root.child,所以不需要 ExtendedRoot.child。如果没有这个,本例中甚至不需要 ExtendedRoot。 如果您坚持保留 ExtendedRoot,请注意,如果 JAXB 遇到 Root 元素,它无法决定是使用 ExtendedRoot 还是使用 root。
PersistenceUnitUtil 中 isLoaded(Object) 方法的使用
我想知道调用方法PersistenceUnitUtil#isLoaded(Object)的原因是什么。 JPA文档说它可以帮助确定属于持久性单元的实体的加载状态,...
我遇到以下异常: java.lang.ClassCastException:类 org.eclipse.persistence.sessions.DatabaseRecord 无法转换为类 org.eclipse.persistence.oxm.record.XMLRecord (org.eclipse.
我们正在使用 Jprofiler 分析我们的应用程序来解决内存泄漏,并发现以下观察结果: 我们在同一数据集上运行我们的应用程序来检查并在
springboot - 初始化 eclipseLink bean
我有这个配置bean: @启用事务管理 @EnableJpaRepositories({ "com.soib.repositories", “com.notification.repositories”}) @Slf4j @配置 公共课...
Spring Boot初始化中的BeanCreationException问题排查
我有这个错误: @EnableJpaRepositories 声明于 JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration:无法创建类型为 [org.springframewor...
在 JPA / EclipsLink EntityManager 中更改隔离级别后进行清理
我正在使用自定义事务隔离级别在 JPA (EclipseLink) 中执行事务,我使用以下代码在 JPA EntityManager 的底层连接上设置了该级别: // 开始交易
使用的技术:Struts 2、JPA (EclipseLink)、Apache Derby Database。 我的项目是图像托管,并且我将 UserEntity (父级)配置为包含对 ImageEntity 的引用。 我有一个会议
使用的技术:Struts2、JPA (EclipseLink)、Apache Derby Database。 我的项目是图像托管,并且我将 UserEntity (父级)配置为包含对 ImageEntity 的引用。 我有一个会议
JPA - Sql Server 错误:无法打开登录请求的数据库“Taijitan”
我正在与一个小团队一起制作一个连接到 SQL Server 数据库的 Java 程序。他们的代码运行成功,但每当我尝试启动 Java 应用程序时,都会收到错误:无法...
我想创建一个用户定义 where 子句条件的搜索。如果用户在搜索表单中输入参数,则该参数将包含在 WHERE 子句中。如果参数...
使用 Spring MVC 和 JPA Eclipselinlk 时,没有可用于当前线程的具有实际事务的 EntityManager
我正在配置我的项目,我已经尝试了这里和那里提到的解决方案,但我仍然遇到相同的错误。仅使用 @PersistenceContext(type=PersistenceContextType.EXTENDED) 我不...
Eclipselink:重新连接数据库后,对实体 PrePersist/PreUpdate 的修改会丢失
我有两个实体,它们之间具有一对多关系。当我持久化 EntityA 时,我使用 PrePersist 和 PreUpdate 来更改值并在 EntityB 上创建实体并将它们关联到 Enti...
当我使用 JPA 查询的 getResultList() 时,结果是分离的还是托管的?
当我调用 .getResultList() 的 JPA 查询时,它会返回一个对象列表。该列表中的对象是托管的还是分离的?也就是说,我是否需要担心合并或持久化...
在 MySQL 中将 UUID 保存为 varbinary(16) 会导致 com.mysql.jdbc.MysqlDataTruncation: 数据截断:第 1 行的列“ID”的数据太长
我有一个字段ID定义如下。它是数据库中的 varbinary(16),当我通过 JPA 插入新记录时,我得到“com.mysql.jdbc.MysqlDataTruncation:数据截断:列数据太长...
为什么不起作用: @测试 公共无效测试(){ EntityManagerFactoryEntityManagerFactory = Persistence.createEntityManagerFactory(“test-pu”); EntityManager 实体管理器 = 实体管理器Fa...
我在保留与其子实体具有 OneToMany 关系的父 JPA 实体时遇到问题。使用 EclipseLink 保存父实体时,父实体和子实体
命名和索引参数在带有 Spring Boot 3 的 EclipseLink 中不起作用
我正在尝试在 Spring Boot 3 应用程序中使用 EclipseLink 作为 JPA 提供程序。我似乎遗漏了一些东西,因为 Query.setParameter() 无法设置命名(:param)或枚举(?1)参数。这个
使用 eclipseLink 时面临 [interface jakarta.persistence.Tuple] 缺少描述符
我一直致力于将代码从 hibernate 更新到 eclipselink 。在运行测试场景时,我遇到了以下错误,该错误指向此查询 @Query(value = "在 (...
数据库和 JPA 中的 PostgreSQL 序列 ID 不同
我真的很困惑......但首先,让我给你一个粗略的概述。 我通过将 4 个表合并为两个表对数据库进行了一些重组。所有表格都以简单的数字序列作为主要...