文档章节

SpringMVC 配置redis缓存及遇到的错误

j
 jeChuan
发布于 2016/11/22 09:41
字数 347
阅读 172
收藏 1

话不多说

一 需要的jar包

spring-data-redis-1.3.4.RELEASE.jar  //spring支持的redis 

链接: http://pan.baidu.com/s/1dE11EqX 密码: fmjn

jedis-2.6.1.jar                                                           

链接: http://pan.baidu.com/s/1o8AneaA 密码: 5fhg

二 配置redis 

   创建redis.properties的配置文件

# Redis settings
#redis.host=192.168.20.101
#redis.port=6380
#redis.pass=foobared
redis.host=127.0.0.1
redis.port=6379
redis.maxIdle=300
redis.maxTotal=600
redis.maxWaitMillis=1000
redis.testOnBorrow=true

#maxActive---旧版本,被替代 maxTotal           
#maxWait  ---旧版本,被替代maxWaitMillis 

 创建 redis-context.xml 的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:p="http://www.springframework.org/schema/p"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="
      http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
      http://www.springframework.org/schema/tx
      http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
      http://www.springframework.org/schema/context
      http://www.springframework.org/schema/context/spring-context-3.0.xsd
         ">
  <!-- scanner redis properties  -->
   <context:property-placeholder location="classpath*:/config/redis.properties"/>
   
  <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"> 
    <property name="maxIdle" value="${redis.maxIdle}" /> 
    <property name="maxTotal" value="${redis.maxTotal}" /> 
    <property name="MaxWaitMillis" value="${redis.maxWaitMillis}" /> 
    <property name="testOnBorrow" value="${redis.testOnBorrow}" /> 
  </bean> 
     
  <bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" 
    p:host-name="${redis.host}"
    p:port="${redis.port}"
    p:pool-config-ref="poolConfig"/> 
     
  <bean id="redisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate"> 
    <property name="connectionFactory"   ref="connectionFactory" /> 
  </bean>  
    
</beans> 

在applicationContext.xml引用:

  <!-- 引入同文件夹下的redis属性配置文件 -->
    <import resource="redis-context.xml"/>

 好的配置已经完redisTemplate 用的是org.springframework.data.redis.core.StringRedisTemplate

三 Redis对象持久化操作

package cn.kuaishang.dao;

import java.io.Serializable;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.RedisSerializer;

public abstract class RedisGeneratorDao<K extends Serializable, V extends Serializable>  {

	   @Autowired
	  protected RedisTemplate<K,V> redisTemplate ;
	 
	  /**
	   * 设置redisTemplate
	   * @param redisTemplate the redisTemplate to set
	   */ 
	  public void setRedisTemplate(RedisTemplate<K, V> redisTemplate) { 
	    this.redisTemplate = redisTemplate; 
	  } 
	     
	  /**
	   * 获取 RedisSerializer
	   * <br>------------------------------<br>
	   */ 
	  protected RedisSerializer<String> getRedisSerializer() { 
	    return redisTemplate.getStringSerializer(); 
	  }
}

懒得写了 未完待续....

© 著作权归作者所有

共有 人打赏支持
j
粉丝 0
博文 2
码字总数 803
作品 0
厦门
Spring AOP整合redis 实现缓存统一管理

项目使用redis作为缓存数据,但面临着问题,比如,项目A,项目B都用到redis,而且用的redis都是一套集群,这样会带来一些问题。 问题:比如项目A的开发人员,要缓存一些热门数据,想到了red...

豆芽菜橙
08/01
0
0
Spring实践--spring cache 与redis缓存整合

【Spring】17、spring cache 与redis缓存整合 spring cache,基本能够满足一般应用对缓存的需求,但现实总是很复杂,当你的用户量上去或者性能跟不上,总需要进行扩展,这个时候你或许对其提...

spinachgit
2017/12/14
0
0
spring及springboot整合redis

前言: redis是一种nosql数据库,以的形式存储数据,其速度相比于MySQL之类的数据库,相当于内存读写与硬盘读写的差别,所以常常用作缓存。接下来就分别看看在spring项目和springboot项目中如...

贪挽懒月
07/09
0
0
Spring Boot + Mybatis + Redis as L2cache

1.背景 Spring-Boot因其提供了各种开箱即用的插件,使得它成为了当今最为主流的Java Web开发框架之一。Mybatis是一个十分轻量好用的ORM框架。Redis是当今十分主流的分布式key-value型数据库,...

梨加橙
2017/08/08
0
0
springboot cache redis 缓存

上一节学习spring的cache缓存,介绍了spring缓存的基础: https://my.oschina.net/silenceyawen/blog/1555996 现在学习使用redis实现缓存: 1. 指定provider可以使用配置: 2. redis在这里充...

yawnSilence
2017/10/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android WebView制作简易浏览器

最终效果 先创建一个WebView控件,其他的就是通过线性布局在上方加入网址输入框和两个按钮 <WebView android:id="@+id/act_webview_wv" android:layout_width="ma...

lanyu96
2分钟前
0
0
解决MacOS升级系统Sierra到Mojave后git报错

错误信息 升级MacOS Sierra到Mac Mojave后执行git命令报错: xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/......

阿dai
3分钟前
0
0
兄弟连区块链教程以太源码分析CMD深入分析(一)

cmd包分析 cmd下面总共有13个子包,除了util包之外,每个子包都有一个主函数,每个主函数的init方法中都定义了该主函数支持的命令,如 geth包下面的: func init() { // Initialize the...

兄弟连区块链入门教程
5分钟前
0
0
Titan Framework MongoDB深入理解1

在TitanFrameWork框架中,已经集成了MongoDB的各个功能,现在我们对框架内部的一些重要类进行分析与解读。 MongoDBConverter 在Titan框架中,比较重要的一个接口就是MongoDBConverter,它是作...

云季科技
10分钟前
0
0
SpringBoot集成Quartz

SpringBoot集成Quartz 什么是Quartz Quartz is a richly featured, open source job scheduling library that can be integrated within virtually any Java application - from the smalle......

Grittan
14分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部