前言:es與redis實在網上跟各位前輩學的,若有相同的地方,請見諒!
Step1:下載下傳附件elasticsearch-2.4.0 redis-2.4.5伺服器
Step2: 給 redis-2.4.5配置密碼,預設無密碼,被保護,隻能本機通路,是以設定密碼,elasticsearch預設叢集名稱elasticsearch
Step3: 下載下傳(redis-mannager)調試(我沒有用,我是直接指令調試的)
Step4: 下載下傳元件
Redis:
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>1.6.1.RELEASE</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.7.3</version>
</dependency>
Elasticsearch:
<dependency>
<groupId>fr.pilato.spring</groupId>
<artifactId>spring-elasticsearch</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-elasticsearch</artifactId>
<version>2.0.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>1.8.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons-core</artifactId>
<version>1.4.0.RELEASE</version>
</dependency>
Step5: 配置檔案
elaticsearch.properties
elasticsearch.esNodes=127.0.0.1:9300
elasticsearch.cluster.name=elasticsearch
redis.properties
#redis中心
redis.host=127.0.0.1
redis.port=6379
redis.password=123456
redis.maxIdle=100
redis.maxActive=300
redis.maxWait=1000
redis.testOnBorrow=true
redis.timeout=100000
# 不需要加入緩存的類
targetNames=
#targetNames=xxxRecordManager,xxxSetRecordManager,xxxStatisticsIdentificationManager
# 不需要緩存的方法
methodNames=
#設定緩存失效時間
#com.service.impl.xxxRecordManager= 60
#com.service.impl.xxxSetRecordManager= 60
defaultCacheExpireTime=3600
fep.local.cache.capacity =10000
elasticsearch.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
xmlns:elasticsearch="http://www.springframework.org/schema/data/elasticsearch"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.3.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
http://www.springframework.org/schema/data/jpa
http://www.springframework.org/schema/data/jpa/spring-jpa-1.8.xsd
http://www.springframework.org/schema/data/elasticsearch
http://www.springframework.org/schema/data/elasticsearch/spring-elasticsearch-1.0.xsd
">
<!-- <elasticsearch:transport-client id="clients"
cluster-nodes="127.0.0.1:9300"
cluster-name="elasticSearchClu"
client-transport-sniff="false"/> -->
<elasticsearch:transport-client id="client" cluster-nodes="${elasticsearch.esNodes}" cluster-name="${elasticsearch.cluster.name}"
client-transport-sniff="false"/>
<bean name="elasticsearchTemplate" class="org.springframework.data.elasticsearch.core.ElasticsearchTemplate">
<constructor-arg name="client" ref="client"/>
</bean>
<bean id="simpleElasticsearchRepository"
class="org.springframework.data.elasticsearch.repository.support.SimpleElasticsearchRepository">
<constructor-arg name="elasticsearchOperations" ref="elasticsearchTemplate"/>
</bean>
</beans>
Redis.xml
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd" default-autowire="byName">
<!-- jedis 配置 -->
<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig" >
<property name="maxIdle" value="${redis.maxIdle}" />
<property name="maxWaitMillis" value="${redis.maxWait}" />
<property name="testOnBorrow" value="${redis.testOnBorrow}" />
</bean >
<!-- redis伺服器中心 -->
<bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" >
<property name="poolConfig" ref="poolConfig" />
<property name="port" value="${redis.port}" />
<property name="hostName" value="${redis.host}" />
<property name="password" value="${redis.password}" />
<property name="timeout" value="${redis.timeout}" ></property>
</bean >
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate" >
<property name="connectionFactory" ref="connectionFactory" />
<property name="keySerializer" >
<bean class="org.springframework.data.redis.serializer.StringRedisSerializer" />
</property>
<property name="valueSerializer" >
<bean class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer" />
</property>
<property name="hashKeySerializer">
<bean class="org.springframework.data.redis.serializer.StringRedisSerializer"/>
</property>
<property name="hashValueSerializer">
<bean class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer"/>
</property>
</bean >
</beans>
Step6: 将配置檔案引入到spring
Step7:先從ES接口開始
工具類ElasticsearchUntil.java EsModel.java
接口類:ElasticsearchServiceI.java QueryElasticsearchServiceI.java
QueryElasticsearchServiceImpl.java ElasticsearchServiceImpl.java
資源請在附件裡面下
注意:如果es版本不同,請在下元件的地方修改相應的版本
以上檔案在附件裡面
Step8: redis 接口
RedisBaseServiceImpl.java RedisBaseServiceI.java RedisExpireTime.java(設定過期時間)
以上檔案在附件裡面
Step9: 控制層(測試)
以下我就貼圖了,根據自己的業務修改
Es:
Redis:
OK,就算完了,下次把支付的寫一下(支付寶和微信)