Inicialização do Spring 1.4.0 MILESTONE 2 foi lançado! Este é um bom momento para falar sobre o esforço conjunto entre os membros da equipe do Spring Boot e a equipe do Couchbase Java SDK para oferecer uma integração de primeira classe do Couchbase no Spring Boot :)

Em Inicialização do Spring 1.4.0Com o Spring Boot, o Couchbase se torna um cidadão de primeira classe do ecossistema do Spring Boot!

Integração do SDK do Couchbase

O Spring Boot agora reconhece diretamente quando você tem a opção SDK do Couchbase em seu classpath. E quando esse é o caso, ele instancia um Aglomerado e um Balde para você usando autoconfiguração.

O Spring Boot pode pegar propriedades para configurar ainda mais essas classes principais do SDK, até mesmo a classe CouchbaseEnvironment!

As seguintes propriedades de bootstrapping são reconhecidas:

O ajuste do ambiente (pontos de extremidade de IO, suporte a SSL e tempos limite padrão da API de sincronização) é exposto por meio das seguintes propriedades:

Esse é o suporte do ⭐️⭐️⭐️⭐️⭐️!

AVISO: Observe que, na etapa anterior, as propriedades de bootstrapping eram prefixadas com " spring.*data*.couchbase ", agora se tornando " spring.couchbase “.

Implementação do cache do Spring

O Spring Cache tem uma implementação do Couchbase 2.x, couchbase-spring-cache.

O Spring Boot agora reconhece essa implementação de cache quando tanto o Java SDK quanto o couchbase-spring-cache estão no classpath.

Isso se integra perfeitamente à seção anterior, visto que o armazenamento subjacente padrão Balde para os caches é aquele autoconfigurado pelo Spring Boot :)

OBSERVAÇÃO: A implementação do cache foi retirada do projeto Spring Data Couchbase e colocada em seu próprio projeto (no repositório github do Couchbase), para que pudesse ser usada e lançada separadamente do Spring Data.

DICA: Não se esqueça de, pelo menos, configurar o spring.couchbase.bootstrap-hosts propriedade.

Essa implementação do Gerenciador de cache permite armazenar dados de vários caches no mesmo bucket do Couchbase, prefixando automaticamente as chaves no Couchbase com o nome de cada cache.

O CouchbaseCacheManager reutilizará automaticamente o Balde autoconfigurados pelo Spring Boot. Basta adicionar uma propriedade para listar declarativamente os nomes de cache para que os caches correspondentes sejam pré-carregados:

Nós lhe dizemos que o suporte é cinco estrelas!

Você pode até mesmo configurá-lo para armazenar dados de diferentes caches em vários buckets. Os caches podem então ser configurados usando um padrão de construtor fluente (por exemplo, em um CacheManagerCustomizer). Esse CacheBuilder também permite que você ajuste ainda mais os caches, como definir um tempo de expiração padrão:

Essa implementação pode usar exibições para limpar seletivamente caches que estão localizados no mesmo Bucket.

Por fim, ele oferece suporte à criação dinâmica de caches à medida que eles são solicitados. Para ativar isso, simplesmente omita a declaração de qualquer nome de cache e ative o cache do Couchbase com a propriedade relevante:

Isso usará a configuração automática do Spring Boot Balde como o bucket padrão para todos os caches criados dinamicamente.

Diversão com @Cacheable espera por você?

Integração de dados do Spring

Dados do Spring Couchbase 2.1.0 (trem de lançamento Hopper) incluiu várias modificações que facilitam a integração com o Spring Boot.

Primeiro, o suspeito de sempre: por padrão, o Spring Boot configurará automaticamente o Spring Data Couchbase para usar o Balde que ele criou. Isso é possível porque as partes principais da configuração do SDK foram separadas em um Configurador do Couchbase enquanto o que é realmente específico do Spring Data está localizado em uma nova classe base, AbstractCouchbaseDataConfiguration.

Se você usar apenas o Spring Data, poderá continuar usando o AbstractCouchbaseConfigurationque agora é um CouchbaseConfigurer e um AbstractCouchbaseDataConfiguration.

No entanto, se você usar o Spring Boot, ele configurará automaticamente um Configurador do Couchbase. Você sempre pode ajustar seu próprio AbstractCouchbaseDataConfiguration e injetar o configurador nele.

Outros recursos do Spring Data Couchbase

A versão 2.1.0 também inclui alguns novos recursos:

  • Automático opcional toque (renovando o prazo de validade de um documento) em leituras (DATACOUCH-59)
  • Aprimoramentos na classificação e paginação (DATACOUCH-211, DATACOUCH-214)
  • Foi adicionado suporte para auditoria (por exemplo. @CreatedBy anotação, DATACOUCH-91)

Conclusão

Vá pegar aquele ⭐️⭐️⭐️⭐️⭐️ MILESTONE!

Como sempre, comentários são bem-vindos (no Spring Data rastreador de problemas, Spring Boot rastreador de problemas ou no Fóruns do Couchbase).

Boa codificação!

Autor

Postado por Simon Basle, engenheiro de software, Pivotal

Simon Basl_ é um engenheiro de software baseado em Paris que trabalha na equipe Spring da Pivotal. Anteriormente, ele trabalhou na equipe do Couchbase Java SDK. Seus interesses abrangem aspectos de design de software (OOP, padrões de design, arquitetura de software), clientes avançados, o que está além do código (integração contínua, (D)VCS, práticas recomendadas) e programação reativa. Ele também é editor da versão francesa do InfoQ.com.

Deixar uma resposta