非XML方式 部署redis缓冲 及自定义键值的方法如何在spring中声明它
来源:互联网 发布:windows 10 mobile安卓 编辑:程序博客网 时间:2024/06/08 16:13
先在spring默认application.xml中声明这个bean<bean id="redisCacheConfig " class="x.xx.xxx.RedisCacheConfig "></bean>
/** * File Name:RedisCacheConfig.java * * Copyright Defonds Corporation 2015 * All Rights Reserved * */package com.defonds.bdp.cache.redis;import org.springframework.cache.CacheManager;import org.springframework.cache.annotation.CachingConfigurerSupport;import org.springframework.cache.annotation.EnableCaching;import org.springframework.cache.interceptor.KeyGenerator;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.cache.RedisCacheManager;import org.springframework.data.redis.connection.RedisConnectionFactory;import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;import org.springframework.data.redis.core.RedisTemplate;import java.lang.reflect.Method;/** * * Project Name:bdp * Type Name:RedisCacheConfig * Type Description: * Author:Defonds * Create Date:2015-09-21 * * @version * */@Configuration@EnableCachingpublic class RedisCacheConfig extends CachingConfigurerSupport {@Beanpublic JedisConnectionFactory redisConnectionFactory() {JedisConnectionFactory redisConnectionFactory = new JedisConnectionFactory();// DefaultsredisConnectionFactory.setHostName("192.168.1.102");<span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">// 注意是服务器地址</span>redisConnectionFactory.setPort(6379); <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">// 注意这是固定死的,redis默认端口就是6379</span>return redisConnectionFactory;}@Beanpublic RedisTemplate<String, String> redisTemplate(RedisConnectionFactory cf) {RedisTemplate<String, String> redisTemplate = new RedisTemplate<String, String>();redisTemplate.setConnectionFactory(cf);return redisTemplate;}@Beanpublic CacheManager cacheManager(RedisTemplate redisTemplate) {RedisCacheManager cacheManager = new RedisCacheManager(redisTemplate);// Number of seconds before expiration. Defaults to unlimited (0)cacheManager.setDefaultExpiration(3000); // Sets the default expire time (in seconds)return cacheManager;}@Beanpublic KeyGenerator customKeyGenerator() {return new KeyGenerator() {@Overridepublic Object generate(Object o, Method method, Object... objects) {StringBuilder sb = new StringBuilder();sb.append(o.getClass().getName());sb.append(method.getName());for (Object obj : objects) {sb.append(obj.toString());}return sb.toString();}};}}
0 0
- 非XML方式 部署redis缓冲 及自定义键值的方法如何在spring中声明它
- 声明一个父类A,它只有一个非默认构造方法;声明A的子类B,B具有默认构造方法及非默认方法,并在B的构造方法中调用基类A的构造方法。
- 面向切面的 Spring —— 如何在 XML 中声明切面?
- spring在xml中事务声明配置
- Spring 在XML中声明切面/AOP
- Spring学习笔记 在XML配置文件中使用properties文件的键值
- Spring学习笔记 在XML配置文件中使用properties文件的键值
- 在spring中获取properties文件键值对的两种方式
- Maven: 如何在properties文件中获取maven的 pom.xml 的键值
- xml方式实现spring的声明式事务管理及对jdbc操作的支持
- 在spring data jpa中使用redis的通用list及entity存储方法
- xml中直接读取properties键值的解决方式
- spring的配置文件在web.xml中加载的方式
- 如何在ASP.NET中制作Web用户自定义控件,并在aspx页面中使用它的方法和属性?
- 如何在java中取map中的键值 的两种方法
- 在Spring-data-Redis中如何使用特定的库?
- Spring声明式事务管理(基于xml的方式)
- spring声明式事务管理(基于AspectJ的xml方式)
- Oracle小心得+前言
- 《算法竞赛入门经典2ndEdition 》习题3-11 换低挡装置(Kickdown, Uva1588)
- Android Studio遇到Error:Failed to find: com.android.support:appcompat-v7:21.+
- 转:PC上 python 通过串口和 arduino 读写交互成功,哈哈,真好玩
- LeetCode First Missing Positive
- 非XML方式 部署redis缓冲 及自定义键值的方法如何在spring中声明它
- javaday22-IO序列流
- 用RxJava写的一个Android的小Demo
- windows 系统下CMD命令大全
- 数据结构 — 归并排序
- 零碎知识总结——学渣修行路
- 在openwrt下对华为WA633无线AP的千兆网卡驱动进行支持
- UVa-10129 单词
- 文章标题