作家
登录

分布式缓存技术redis学习系列----深入理解Spring Redis的使用

作者: 来源: 2017-05-09 13:11:26 阅读 我要评论

/>   
  •        
  •     <bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate">   
  •             <property name="connectionFactory" ref="connectionFactory" />   
  •             <property name="keySerializer" ref="stringSerializer"/>   
  •             <property name="valueSerializer" ref="stringSerializer"/>   
  •             <property name="hashKeySerializer" ref="stringSerializer" />   
  •             <property name="hashValueSerializer" ref="hashSerializer"/>   
  •     </bean>   
  •    
  • </beans>   
    1. redis.maxIdle=10   
    2. redis.maxActive=20   
    3. redis.maxWait=10000   
    4. redis.testOnBorrow=true   
    5. redis.host=192.168.1.76   
    6. redis.port=6379   
    7. redis.pass=password1   

    spring-data-redis供给了多种serializer策略,这对应用jedis的开辟者而言,实袈溱是异常便捷。sdr供给了4种内置的serializer:

    • JdkSerializationRedisSerializer:应用JDK的序列化手段(serializable接口,ObjectInputStrean,ObjectOutputStream),数据以字撙节存储,POJO对象的存取场景,应用JDK本身序列化机制,将pojo类经由过程ObjectInputStream/ObjectOutputStream进行序列化操作,最终redis-server中将存储字节序列,是今朝最常用的序列化策略。
    • StringRedisSerializer:字符串编码,数据以string存储,Key或者value为字符串的场景,根据指定的charset对数据的字节序列编码成string,是“new String(bytes, charset)”和“string.getBytes(charset)”的直接封装。是最轻量级和高效的策略。
    • JacksonJsonRedisSerializer:json格局存储,jackson-json对象供给了javabean与json之间的转换才能,可以将pojo实例序列化成json格局存储在redis中,也可以将json格局的数据转换成pojo实例。因为jackson对象在序列豢?状序列化时,须要明白指定Class类型,是以此策略封装起来稍微复杂。【须要jackson-mapper-asl对象支撑】
    • OxmSerializer:xml格局存储,供给了将javabean与xml之间的转换才能,今朝可用的三方支撑包含jaxb,apache-xmlbeans;redis存储的数据将是xml对象。不过应用此策略,编程将话苄些难度,并且效力最低;不建议应用。【须要spring-oxm模块的支撑】

    个中JdkSerializationRedisSerializer和StringRedisSerializer是最基本的序列化策略,个中“JacksonJsonRedisSerializer”与“OxmSerializer”都是基于stirng存储,是以它们是较为“高等”的序列化(最终照样应用string解析以及构建java对象)。 针对“序列豢?注序列化”中JdkSerializationRedisSerializer和StringRedisSerializer是最基本的策略,原则上,我们可以将数据存储为任何格局以便应用法度榜样存取和解析(个中应用包含app,hadoop等其他对象),不过在设计时仍然不推荐直接应用“JacksonJsonRedisSerializer”和“OxmSerializer”,因为无论是json照样xml,他们本身仍然是String。如不雅你的数据须要被第三方对象解析,那么数据应当应用StringRedisSerializer而不是JdkSerializationRedisSerializer。

    RedisTemplate中须要声明4种serializer,默认为“JdkSerializationRedisSerializer”:

    1) keySerializer :对于通俗K-V操作时,key采取的序列化策略


      推荐阅读

      机器学习中容易犯下的错

    媒介在工程中,有多种办法来构建一个关键值存储,并且每个设计都对应用模式做了不合的假设。在统计建模,有各类算法来建立一个分类,每一个算法的对数据集有不合的假设。在处理少量的数据时,尽量多的去测验测验更多>>>详细阅读


    本文标题:分布式缓存技术redis学习系列----深入理解Spring Redis的使用

    地址:http://www.17bianji.com/lsqh/35091.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)