作者注:本文主要用于个人学习.同时欢迎交流讨论

1.添加maven依赖:

<dependency>
          <groupId>org.springframework.data</groupId>
          <artifactId>spring-data-redis</artifactId>
          <version>1.*.*.RELEASE</version>
</dependency>

2.配置redis.properties

redis.host=127.0.0.1
redis.port=6379
redis.pass=***
redis.maxIdle=300
redis.maxActive=600
redis.maxWait=1000
redis.testOnBorrow=true

maxIdle,最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连接将被标记为不可用,然后被释放。设为0表示无限制。
MaxActive,连接池的最大数据库连接数。设为0表示无限制。
maxWait ,最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。

*maxActive:最大连接数据库连接数,设 0 为没有限制

*maxIdle:最大等待连接中的数量,设 0 为没有限制

*maxWait:最大等待毫秒数, 单位为 ms, 超过时间会出错误信息

testOnBorrow此处还不理解什么意思

3.spring配置文件引入

<context:property-placeholder location="/**/redis.properties" />
<bean id="redisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">  
        <property name="maxIdle" value="${redis.maxIdle}" />  
        <property name="maxTotal" value="${redis.maxActive}" />  
        <property name="maxWaitMillis" value="${redis.maxWait}" />  
        <property name="testOnBorrow" value="${redis.testOnBorrow}" />  
</bean> 
 <bean id="stringRedisSerializer"  
        class="org.springframework.data.redis.serializer.StringRedisSerializer">  
    </bean>
    <bean id="jdkSerializationRedisSerializer"   class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer" />
     
    <bean id="redisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"  
        p:host-name="${redis.host}" p:port="${redis.port}" p:password="${redis.pass}"  p:pool-config-ref="redisPoolConfig"/>  
   <bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate"
        p:connection-factory-ref="redisConnectionFactory" p:keySerializer-ref="stringRedisSerializer" p:valueSerializer-ref="stringRedisSerializer" />
4.代码操作
Controller:@Resource RedisTemplate<String, String> redisTemplate;
redisTemplate.opsForList().leftPush(key, value);//从左向右存压栈
redisTemplate.opsForList().leftPop(key);//从左出栈
redisTemplate.opsForList().size(key);//队/栈长
redisTemplate.opsForList().range(key, start, end);//范围检索,返回List
redisTemplate.opsForList().remove(key, i, value);//移除key中值为value的i个,返回删除的个数;如果没有这个元素则返回0
redisTemplate.opsForList().index(key, index);//检索
redisTemplate.opsForList().set(key, index, value);//赋值
redisTemplate.opsForList().trim(key, start, end);//裁剪,void,删除除了[start,end]以外的所有元素 
redisTemplate.opsForList().rightPopAndLeftPush(String sourceKey, String destinationKey);//将源key的队列的右边的一个值删除,然后塞入目标key的队列的左边,返回这个值
注意:要缓存的对象必须实现Serializable接口,因为 Spring 会将对象先序列化再存入 Redis,否则报异常nested exception is java.lang.IllegalArgumentException: DefaultSerializer requires a Serializable……

redis简介:

redis将数据缓存在内存中,周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。磁盘上保存的位置:打开redis.windows.conf文件,查找dbfilename,作者是dump.rdb文件

redis安装:

作者是用windows测试的

根据参考文章7提供的地址,作者没有下载下来,原因不详.以前在其他地方有下载存在了百度云盘里,就直接下载用了.版本是Redis-x64-3.0.504.有需要的读者请与本文作者联系

下载好后进入Redis-x64-3.0.504目录,执行redis-server.exe(或cmd下执行redis-server),出现如下界面,表示成功

执行redis-cli命令,可打开自带的客户端进行操作,出现127.0.0.1:6379>表示成功.具体操作命令网上一大堆!

参考文章:
1.http://blog.csdn.net/it_zhaonan/article/details/50648266
2.http://blog.csdn.net/it_man/article/details/9730667
3.http://blog.csdn.net/defonds/article/details/48716161/
4.http://www.cnblogs.com/dennisit/p/3614521.html
5.http://blog.csdn.net/junlong750/article/details/52775822
6.http://baike.baidu.com/link?url=e-SpGF0pqCA8MGI-e4Wyww32JQz35DWkwEom8VjNqh6-2TMdjBnPv7hWaM_UeEtg768OtjMoMoQIRl1aDryLI_
7.http://blog.csdn.net/renfufei/article/details/38474435/
8.http://blog.163.com/asd_wll/blog/static/21031040201332443820565/

Redis+Springmvc搭建(附windows下安装)的更多相关文章

  1. (一)Redis之简介和windows下安装radis

    一.简介 1.1 关于nosql 介绍Redis之前,先了解下NoSQL (Not noly SQL)不仅仅是SQL, 属于非关系型数据库:Redis就属于非关系型数据库, 传统的Mysql ,ora ...

  2. redis系列一: windows下安装redis

    一. 下载Redis Redis 支持 32 位和 64 位.这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip压缩包到 C 盘,解压后,将文件夹重新命名为 red ...

  3. redis(一)Windows下安装redis服务、搭建redis主从复制

    接下来会写一个redis实战系列,在此记录,有什么问题大家请随时批评. 好了,进入正题,这篇会将redis以windows服务形式提供服务(搭建一个简单的主从复制 M:6379:s:6380.6381 ...

  4. <转>windows下安装redis

    1.redis简介redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...

  5. windows下安装redis和php的redis扩展

    1.redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  6. windows下安装redis(转)

    add by zhj: redis相比memcached相比,性能上并没有绝对的优势.我们用redis的是因为它支持更多的数据类型,而且在分配给redis的内存用满了之后, redis也不会删除没有过 ...

  7. Windows下安装Redis

    1.首先,Redis官方是支持Linux系统的,我这里不多说,需要的可以参考:http://www.oschina.net/question/12_18065/ 2.Windows 64位下载地址:h ...

  8. windows 下安装redis并且测试(php)

    Window 下安装 下载地址:https://github.com/dmajkic/redis/downloads. 下载到的Redis支持32bit和64bit.根据自己实际情况选择,将64bit ...

  9. Redis在windows下安装和PHP中使用

    1.redis简介redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...

随机推荐

  1. python 学习源码练习(1)

    #编译方式,python3 文件名 #!/usr/bin/python3#print('hello world') mystring = 'hello world'print (mystring) # ...

  2. slave延迟很大优化方法

    一般而言,slave相对master延迟较大,其根本原因就是slave上的复制线程没办法真正做到并发.简单说,在master上是并发模式(以InnoDB引擎为主)完成事务提交的,而在slave上,复制 ...

  3. web前端经典面试题大全及答案

    阅读目录 JavaScript部分 JQurey部分 HTML/CSS部分 正则表达式 开发及性能优化部分 本篇收录了一些面试中经常会遇到的经典面试题以及自己面试过程中遇到的一些问题,并且都给出了我在 ...

  4. C#学习笔记-迭代器模式

    什么是迭代器模式? 迭代器模式(Iterator):提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示. 何时使用迭代器模式? 当需要访问一个聚合对象,而且不管这些对象是什么都需要 ...

  5. flask-sqlalchemy基本操作数据库

    # -*- coding: utf-8 -*- from sqlalchemy.ext.declarative import declarative_base from sqlalchemy impo ...

  6. 从头开始基于Maven搭建SpringMVC+Mybatis项目(4)

    接上文内容,上一节中的示例中完成了支持分页的商品列表查询功能,不过我们的目标是打造一个商品管理后台,本节中还需要补充添加.修改.删除商品的功能,这些功能依靠Mybatis操作数据库,并通过Spring ...

  7. 记一次python的一些参数

    isdigit把字符串转化为整数 用法 if xx.isdigit(): xx=int(xx) index创建一个小原组,用法print(a.index(b),b)从0开始

  8. 94、存储库之MongoDB、mysql

    本篇导航: 简介 MongoDB基础知识 安装 基本数据类型 CRUD操作 其它 存储库之mysql   一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库1.易用性 MongoDB是 ...

  9. c语言中的堆、栈和内存映射

    Code Area(代码区):程序代码指令.常量字符串,只可读. Static Area(静态区):存放全局变量/常量.静态变量/常量. 该区域的大小在程序一加载进内存的时候就已固定,但是静态变量的值 ...

  10. 解决JSONObject.fromObject数字为null时被转换为0

    在使用JSONObject.fromObject的时候会遇到一种情况就是当对象的某一个Double型或Integer型的属性为空的时候,转JSON的时候会变成0.当一个布尔型的属性为空的时候,转JSO ...