Visão geral
Nesta página, você pode encontrar informações sobre os recursos compatíveis e não suportados na extensão Hibername ORM. A extensão Hibernar ORM suporta apenas conjuntos de réplicas MongoDB . Quando você utiliza um recurso não suportado, a extensão ORM Hibernado lança um UnsupportedFeatureException.
Você também pode encontrar os recursos atualmente planejados para futuras versões nesta página. Priorizaremos esses recursos futuros com base na demanda do usuário, e você pode solicitar suporte para um recurso criando uma ideia AHA.
MongoDB Extension for Hibernate ORM is currently in Public Preview. Public Preview is not recommended for production deployments, because breaking changes might be introduced.
Funcionalidades do MongoDB
Esta seção indica se a extensão Hibernar ORM é compatível com várias funcionalidades do MongoDB .
Suporte ao tipo de dados
Para ver uma lista de todos os tipos BSON suportados na extensão Hibername ORM, consulte a seção Campos BSON do MongoDB no guia Criar Entidades.
Suporte a consultas
Funcionalidade do MongoDB | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Gravações em massa | ✓ | ✓ |
Excluir operações | ✓ | ✓ |
Consultas geoespaciais | Não compatível. No entanto, o | Estamos considerando esse recurso para a versão GA. |
Inserir operações | ✓ | ✓ |
Queries de pesquisa do MongoDB | Não compatível. No entanto, o | Estamos considerando esse recurso para a versão GA. |
Queries do MongoDB Vector Search | Não compatível. No entanto, o | Estamos considerando esse recurso para a versão GA. |
Query nativa com MQL | Partially Supported. Parameter binding is not supported. | ✓ |
Projeções | Partially Supported. Aggregation expressions
within query projections are not supported, and you must include all entity fields in your projection. | Partially Supported. The same aggregation expression and entity field limitations apply. |
Ler operações | ✓ | ✓ |
Atualizar operações | ✓ | ✓ |
Operações upsert | Não compatível. No entanto, você pode primeiro fazer query da collection para verificar se o valor especificado existe e, em seguida, inserir ou atualizar se o valor existe. | Estamos considerando esse recurso para a versão GA. |
Suporte a banco de dados e collection
Funcionalidade do MongoDB | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Fluxos de alterações | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Criptografia no nível do campo do lado do cliente (CSFLE) e Queryable Encryption (QE) | Não compatível. No entanto, você pode configurar o CSFLE/QE ao configurar o driver Java do MongoDB . | Estamos considerando esse recurso para a versão GA. |
GridFS | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Dados de Time Series | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Visualizações | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Transações e simultaneidade
Funcionalidade do MongoDB | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Bloqueio | Parcialmente suportado. O bloqueio otimista é suportado. | Estamos considerando esse recurso para a versão GA. |
Transações | ✓ | ✓ |
Mapeamento e suporte a modelos
Funcionalidade do MongoDB | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Associações | Não compatível. | ✓ |
IDs de geração automática | Parcialmente suportado. A geração automática de ObjectIds é compatível. No entanto, você pode definir manualmente um UUID. | Estamos considerando esse recurso para a versão GA. |
Estratégia de herança | Não compatível. | ✓ |
Busca preguiçosa/ansiosa | Não compatível. | Não compatível. |
Encomenda | ✓ | ✓ |
Validação | ✓ | ✓ |
Suporte ao índice
Funcionalidade do MongoDB | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Capped collections | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Clustered Collections | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices compostos | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices de documento incorporados | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices geoespaciais | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices de pesquisa do MongoDB | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices do MongoDB Vector Search | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices multichave | Não compatível. Use o comportamento padrão do MongoDB para campos de array. | Estamos considerando esse recurso para a versão GA. |
Índices parciais | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Validação de esquema | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices de campo único | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Índices esparsos | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Unique indexes | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Estamos considerando esse recurso para a versão GA. |
Atualização de índices de modelo incorporados após a criação do modelo | Não compatível. No entanto, você pode soltar e recriar o índice do modelo incorporado manualmente. | Estamos considerando esse recurso para a versão GA. |
Recursos ORM do Hibernar
Esta seção indica se a extensão Hibernar ORM oferece suporte a vários recursos do Hibernado ORM.
Suporte ao tipo de dados
Tipo de Dados | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Tipos de coleção (List, Set, Maps, Arrays) | ✓. @ElementCollection and CollectionTable are not supported. However,
collections of embedded structs are supported through embeddable classes annotated
with @Embeddable and @Struct. | ✓. The same @ElementCollection and CollectionTable limitations apply. |
Entidades incorporáveis, tipos escalares | Partially Supported. The java.time.Instant type is supported for top-level and nested entities. | Partially Supported. The java.time.Instant type is supported for top-level and nested entities. |
Entidades incorporadas, binárias | ✓ | ✓ |
Entidades incorporadas, tipos de identificador | Partially Supported. Manually set the ID of an entity before persisting an entity. | We are considering this feature for GA release. |
Entidades Incorporadas, JSON | ✓ | ✓ |
Entidades incorporadas, semântica nula | ✓ | ✓ |
Entidades de nível superior, binários | ✓ | ✓ |
Entidades de nível superior, tipos de identificador | ✓ Manually assign UUIDs before persisting an entity. | ✓ Manually assign UUIDs before persisting an entity. |
Entidades de nível superior, JSON | ✓ | ✓ |
Entidades de nível superior, semântica nula | ✓ | ✓ |
Entidades de nível superior, tipos escalares | ✓ | ✓ |
Entidades de nível superior, tipos temporais | Partially Supported. The java.time.Instant type is supported for top-level and nested entities. | Partially Supported. The java.time.Instant type is supported for top-level
and nested entities. |
Lógica ternária (verdadeiro, falso ou DESCONHECIDO) | Não suportado. | Planejado. |
Suporte a consultas
Funcionalidade ORM do Hibernar | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Queries HQL e JPQL, operadores agregados | Não compatível. No entanto, o | Planejado. |
Queries HQL e JPQL, operadores aritméticos | Não compatível. No entanto, o | Estamos considerando esse recurso para a versão GA. |
Queries HQL e JPQL, operadores de array | ✓ | ✓ |
Queries HQL e JPQL, operadores de comparação | Partially Supported. The operators LIKE, BETWEEN, IN, EXISTS,
ANY, ALL, and IS NULL are not currently supported. However, you can
use the createNativeQuery() method and pass comparison operators in your
MongoDB Query Language statement. To learn more about native queries, see the
Perform Native Database Queries guide. | Planned. |
Queries HQL e JPQL, operadores de elementos | ✓ | ✓ |
Queries HQL e JPQL, operadores de avaliação | Não compatível. No entanto, o | Planejado. |
Queries HQL e JPQL, JUNTAS | Não compatível. No entanto, você pode usar o driver Java do MongoDB para definir uma | Planejado. |
Queries HQL e JPQL, operadores lógicos | ✓ | ✓ |
Suporte a banco de dados e collection
Funcionalidade ORM do Hibernar | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Cache de primeiro nível | ✓ | ✓ |
Cache de segundo nível | ✓ | ✓ |
Suporte a estruturas e bibliotecas
Esta seção indica se a extensão Hibernar ORM é compatível com vários frameworks ou bibliotecas externas.
Framework ou Library | Suporte à visualização pública | Suporte de disponibilidade geral (GA) |
|---|---|---|
Inicialização de primavera e dados de primavera | Partially Supported. We do not guarantee support for all Spring Boot or Spring Data features. See the Spring Data with MongoDB Hibernate App for an example of an app made with the Hibernate ORM extension and Spring Data. | Parcialmente suportado. Não garantimos suporte para todos os recursos do Spring Boot ou Spring Data. Veja o aplicativo Spring Data with MongoDB Hibernar para obter um exemplo de um aplicativo feito com a extensão ORM do Hibername e Spring Data. |