demo-base引入html
說明:java
jedis:redis官網對java語言提供支持。可單獨使用。web
spring-data-redis:spring對jedis集成。redis
在配置在demo-web下spring
redis.properties:瀏覽器
redis.host=127.0.0.1 redis.port=6379 redis.timeout=15000 redis.password= redis.database=2
spring-mvc.xmlspring-mvc
<!--spring最多加載一個context:property-placeholder--> <!--若是去掉jdbc.properties加載,demo-web啓動會提示找不對應變量值--> <context:property-placeholder location="classpath:redis.properties,classpath*:jdbc.properties"/> <!--將spring-redis引入spring中--> <import resource="spring-redis.xml"/>
spring-redis.xmlmvc
<?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:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd"> <bean id="redisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"> <!--最大鏈接數--> <property name="maxTotal" value="30"/> <!--最大空閒數--> <property name="maxIdle" value="5"/> <!--最小空閒數--> <property name="minIdle" value="0"/> <!--達到最大鏈接數是否阻塞--> <property name="blockWhenExhausted" value="true"/> <!--最大鏈接數後最長阻塞時間--> <property name="maxWaitMillis" value="15000"/> <!--鏈接空閒的最小時間,可能被移除--> <property name="minEvictableIdleTimeMillis" value="60000"/> <!--鏈接空閒的最小時間,多餘最小空閒鏈接的將被移除--> <property name="softMinEvictableIdleTimeMillis" value="30000"/> <!--對於「空閒連接」檢測線程而言,每次檢測的連接資源的個數。默認爲3.--> <property name="numTestsPerEvictionRun" value="3"/> <!--空閒鏈接的檢測週期--> <property name="timeBetweenEvictionRunsMillis" value="60000"/> <!--當鏈接給調用者使用時,是否檢測空間超時--> <property name="testWhileIdle" value="false"/> <!--當鏈接給調用者使用時,是否檢測其有效性--> <property name="testOnBorrow" value="false"/> <!--歸還鏈接時,是否檢測其有效性--> <property name="testOnReturn" value="false"/> </bean> <bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" p:hostName="${redis.host}" p:port="${redis.port}" p:password="${redis.password}" p:database="${redis.database}" p:timeout="${redis.timeout}" p:poolConfig-ref="redisPoolConfig"/> <!--關於class說明--> <!--RedisTemplate:可操做對象,最終會將對象轉化爲字節(因此對象需支持序列化和反序列化)--> <!--StringRedisTemplate:操做對象是String類型--> <bean id="redisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate"> <property name="connectionFactory" ref="connectionFactory"/> <!--是否開啓事務,支持@Transactional--> <property name="enableTransactionSupport" value="true"/> </bean> </beans>
RedisControllerapp
@Controller @RequestMapping("redis") public class RedisController { @Resource(name = "redisTemplate") private ValueOperations<String,String> stringOperations; //@Autowired //private StringRedisTemplate redisTemplate; @RequestMapping("setKeyValue") @ResponseBody public String setKeyValue(String key ,String value){ //ValueOperations<String,String> stringOperations = redisTemplate.opsForValue(); stringOperations.set(key,value); return stringOperations.get(key); } }
說明:spa
運行結果:
瀏覽器輸入http://localhost:8080/demo-web/redis/setKeyValue.do?key=123&value=123321
Redis查看