Este artículo presenta la integración de SpringBoot de Redis, Apachsolr y Springsession, y la comparte con usted. Los detalles son los siguientes:
1. Introducción
Desde su lanzamiento, SpringBoot ha sido favorecido por los desarrolladores para su configuración conveniente. Proporciona varios entrantes para simplificar muchas configuraciones tediosas. La integración de Springboot de Druid y MyBatis es común, por lo que no la presentaré en detalle aquí. Hoy vamos a presentar el uso de Springboot para integrar Redis, Apachesolr y Springsession.
2. Springboot integra Redis
Redis es uno de los cachés más utilizados. En general, Redis construirá alta disponibilidad (HA), clúster o Sentinel. Para obtener métodos de construcción específicos, consulte la documentación oficial de Redis. Hemos dado un ejemplo de Sentinel aquí. Por lo general, hay 3 nodos para construir redisentinel. El puerto de Redis es generalmente 6379, y el puerto de Sentinel es generalmente 26379.
Si queremos usar SpringBoot para integrar Redis, primero debemos agregar el inicio de Redis correspondiente al POM:
<Spendency> <MoupRoMID> org.springframework.boot </groupid> <artifactid> spring-boot-starter-data-redis </artifactid> </dependence>
Después de introducir el paquete JAR, podemos agregar directamente la configuración RedisSentinel para completar la integración en el archivo Application.Properties.
Spring.redis.sentinel.master = MyMasterspring.redis.sentinel.nodes = 192.168.2.233: 26379,192.168.2.234: 26379,192.168.2.235: 26379 spring.redis.pool.max-active = 1024spring.redis.pool.max-idle = 200spring.redis.pool.min-idle = 100spring.redis.pool.max-wait = 10000
Sentinel.Master es el nombre de Master. El nombre predeterminado se usa MyMaster cuando construimos redissentinel.
Sentinel.nodes es el nodo centinela. Tenga en cuenta que es el nodo centinela, no el nodo Redis. Use el formato del puerto IP: y múltiples nodos se separan por ",".
Aquí hay información sobre el grupo de conexión:
En el programa, podemos inyectar directamente redistemplate para operar en Redis
@AUtowiredPrivate StringRedistEmplate StringRedistEmplate;
En este punto, Redis ha sido integrado.
3. Springboot integra Springsession
Springsession proporciona la gestión de las sesiones de clúster sin pasar por los contenedores. Puede acceder a diferentes capas de almacenamiento, como: base de datos, redis, mongodb, etc. Se puede combinar sin problemas con Springboot.
Primero, introducimos Springsession en el proyecto y agregamos la siguiente configuración al POM:
<Spendency> <MoupRoMID> org.springframework.session </groupid> <artifactId> spring-session </artifactId> </pendency>
Luego especifique el tipo de almacenamiento de manantiales en la aplicación.
Spring.Session.Store-Type = Redis
Esta es una integración muy simple de Springsession. Si hay requisitos especiales para las cookies, puede crear un nuevo frijol de cookie en el proyecto para reemplazar los frijoles creados automáticamente por SpringBoot. Los detalles son los siguientes:
@Bean Public DefaultCookieserializer Cookieserializer () {defaultcookieserializer cookie = new DefaultCookieserializer (); cookie.setcookiename ("springboot_id"); Cookie de regreso; }En el ejemplo anterior, hemos modificado el nombre de la cookie. Si necesita modificar otras propiedades, establezca los valores de propiedad relevantes.
4. Springboot integra Solr
Apachesolr es un motor de búsqueda relativamente común, y Springboot también puede integrar SOLR muy convenientemente para que todos se desarrollen. Para conceptos y uso específicos de Apachesolr, consulte los documentos relevantes usted mismo. Al construir Solr, generalmente usamos Zookeeper para construir Solrcloud para mejorar la usabilidad de Solr. Aquí organizamos Solrcloud.
Primero presentamos el entrante de Apachesolr:
<Spendency> <MoupRoMID> org.springframework.boot </groupid> <artifactId> spring-boot-starter-data-solr </artifactid> </pendency>
En Application.Properties, agregue información sobre Zookeeper, de la siguiente manera:
La copia del código es la siguiente:
Spring.Data.Solr.zk-Host = 192.168.2.233: 2181,192.168.2.234: 2181,192.168.2.235: 2181
Cuando múltiples zoológicos se separan por ",".
De esta manera, SpringBoot integra Apachesolr, que es muy conveniente. A continuación podemos usar los datos de primavera para acceder a SOLR.
1. Escriba los datos devueltos por su propia clase de entidad correspondiente a Solr. El código específico es el siguiente:
@Setter@getter@solrDocument (solrcorename = "xy_company") public class SolrCompany {@Field ("id") ID de cadena privada; @Field ("CompanyName_txt") privado String CompanyName; }@Setter@getter Las dos anotaciones son más comunes y se utilizan para generar métodos Get and Set.
@Solrdocument (solrcorename = "xy_company"), que especifica que esta entidad corresponde al núcleo o colección en Solr. Core es el nombre en una sola instancia, y la colección es el nombre en Solrcloud, que significa aproximadamente el mismo.
@Field ("id"), utilizado para especificar los campos correspondientes en Solr.
2. Escriba su propia capa de almacenamiento y herede SolrcrudRepository, como sigue:
Interface Public CompanyRepository extiende SolrCrudRepository <solrCompany, String> {List <SolrCompany> FindByComPanyName (String CompanyName);}De esta manera, esta capa de almacenamiento puede acceder a Solr. Si múltiples capas de almacenamiento comparten una entidad, se pueden escribir múltiples capas de almacenamiento para heredar diferentes repositorio. Para más detalles, consulte los datos de primavera.
3. En su propio negocio, use Solr
Lista pública <SolrCompany> getCompanyByName (String CompanyName) {return CompanyRepository.FindByComPanyName (CompanyName); }En este punto, SpringBoot integra SOLR, es muy simple.
A continuación, también presentaremos la integración de algunos marcos convencionales, como: MongoDB, Kafka, etc. Para el código detallado de este tiempo, consulte mi GitHub: https://github.com/bigbugliu/spring-bootdemo.
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.