第 32 章 JPA


从 Camel 1.0 开始

支持生成者和消费者。

JPA 组件可让您使用 EJB 3 的 Java Persistence 架构(DSL)从持久性存储存储和检索 Java 对象。Java Persistence 架构(DSL)是一种标准接口层,它打包 Object/Relational Mapping (ORM)产品,如 Open the Hibernate, Hibernate, TopLink。

将以下依赖项添加到此组件的 pom.xml 中:

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-jpa</artifactId>
    <version>3.20.1.redhat-00031</version>
    <!-- use the same version as your Camel core version -->
</dependency>

32.1. 发送到端点

您可以通过将 Java 实体 Bean 发送到 JPA producer 端点,将其存储在数据库中。In 消息正文假定为实体 Bean (即,包含 @Entity 注解的 POJO)或实体 Bean 集合或数组。

如果正文是实体列表,请使用 entityType=java.util.List 作为传递给制作者端点的配置。

如果正文不包含以上列出的类型之一,请在端点首先执行必要的转换前放置 Message Translator。

您还可以将名为Query 的查询名为QuerynativeQuery 用于生成者。对于 参数的值,您可以使用简单表达式从 Message body、标头等检索参数值。这些查询可用于通过 SELECT JPQL/SQL 语句来检索一组数据,并使用 UPDATE/DELETE JPQL/SQL 语句执行批量更新/删除。请注意,如果您执行 名为QueryUPDATE/DELETE,则您需要将 useExecuteUpdate 指定为 true,因为 camel 不会查看命名的 查询 与查询和 原生Query 不同。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.