<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    少年阿賓

    那些青春的歲月

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks
    spring-data-redis下載地址:
    http://www.springsource.org/download/community?project=Spring%2520Data%2520Redis&version=1.0.1.RELEASE


    //spring-redis.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:aop="http://www.springframework.org/schema/aop"
    xmlns:cache="http://www.springframework.org/schema/cache"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:oxm="http://www.springframework.org/schema/oxm"
    xmlns:p="http://www.springframework.org/schema/p" xmlns:util="http://www.springframework.org/schema/util"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd  
    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd  
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd  
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd">
    <context:annotation-config />
    <context:component-scan base-package="com.abin.lee.spring.redis"></context:component-scan>
    <context:property-placeholder location="classpath:com/abin/lee/spring/redis/redis.properties" />
    <!-- 對(duì)象池配置: -->
    <bean
    id="jedisPoolConfig"
    class="redis.clients.jedis.JedisPoolConfig">
    <property
    name="maxActive"
    value="${redis.pool.maxActive}" />
    <property
    name="maxIdle"
    value="${redis.pool.maxIdle}" />
    <property
    name="maxWait"
    value="${redis.pool.maxWait}" />
    <property
    name="testOnBorrow"
    value="${redis.pool.testOnBorrow}" />
    </bean>
    <!-- 工廠實(shí)現(xiàn): -->
    <bean
    id="jedisConnectionFactory"
    class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
    <property
    name="hostName"
    value="${redis.ip}" />
    <property
    name="port"
    value="${redis.port}" />
    <property
    name="poolConfig"
    ref="jedisPoolConfig" />
    </bean>
    <!--模板類: -->
    <bean
    class="org.springframework.data.redis.core.RedisTemplate"
    p:connection-factory-ref="jedisConnectionFactory" />
    </beans>






    //User.java
    package com.abin.lee.spring.redis.pojo;
    import java.io.Serializable;
    public class User implements Serializable {
    /**
    */
    private static final long serialVersionUID = 2668307865623183776L;
    private String uid;
    private String address;
    public User() {
    super();
    }
    public User(String uid, String address) {
    super();
    this.uid = uid;
    this.address = address;
    }
    public String getUid() {
    return uid;
    }
    public void setUid(String uid) {
    this.uid = uid;
    }
    public String getAddress() {
    return address;
    }
    public void setAddress(String address) {
    this.address = address;
    }
    @Override
    public String toString() {
    return "User [uid=" + uid + ", address=" + address + "]";
    }
    @Override
    public int hashCode() {
    final int prime = 31;
    int result = 1;
    result = prime * result + ((address == null) ? 0 : address.hashCode());
    result = prime * result + ((uid == null) ? 0 : uid.hashCode());
    return result;
    }
    @Override
    public boolean equals(Object obj) {
    if (this == obj)
    return true;
    if (obj == null)
    return false;
    if (getClass() != obj.getClass())
    return false;
    User other = (User) obj;
    if (address == null) {
    if (other.address != null)
    return false;
    } else if (!address.equals(other.address))
    return false;
    if (uid == null) {
    if (other.uid != null)
    return false;
    } else if (!uid.equals(other.uid))
    return false;
    return true;
    }
    }






    //UserDao.java
    package com.abin.lee.spring.redis.dao;
    import com.abin.lee.spring.redis.pojo.User;
    public interface UserDao {
    /**
    * @param uid
    * @param address
    */
    void save(User user);
    /**
    * @param uid
    * @return
    */
    User read(String uid);
    /**
    * @param uid
    */
    void delete(String uid);
    }





    //UserDaoImpl.java
    package com.abin.lee.spring.redis.dao.impl;
    import java.io.Serializable;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.dao.DataAccessException;
    import org.springframework.data.redis.connection.RedisConnection;
    import org.springframework.data.redis.core.RedisCallback;
    import org.springframework.data.redis.core.RedisTemplate;
    import org.springframework.stereotype.Repository;
    import com.abin.lee.spring.redis.dao.UserDao;
    import com.abin.lee.spring.redis.pojo.User;
    @Repository("userDao")
    public class UserDaoImpl implements UserDao{
    @Autowired
    private RedisTemplate<Serializable, Serializable> redisTemplate;
    @Override
    public void save(final User user) {
    redisTemplate.execute(new RedisCallback<Object>() {
    @Override
    public Object doInRedis(RedisConnection connection)
    throws DataAccessException {
    connection.set(
    redisTemplate.getStringSerializer().serialize(
    "user.uid." + user.getUid()),
    redisTemplate.getStringSerializer().serialize(
    user.getAddress()));
    return null;
    }
    });
    }
    @Override
    public User read(final String uid) {
    return redisTemplate.execute(new RedisCallback<User>() {
    @Override
    public User doInRedis(RedisConnection connection)
    throws DataAccessException {
    byte[] key = redisTemplate.getStringSerializer().serialize(
    "user.uid." + uid);
    if (connection.exists(key)) {
    byte[] value = connection.get(key);
    String address = redisTemplate.getStringSerializer()
    .deserialize(value);
    User user = new User();
    user.setAddress(address);
    user.setUid(uid);
    return user;
    }
    return null;
    }
    });
    }
    @Override
    public void delete(final String uid) {
    redisTemplate.execute(new RedisCallback<Object>() {
    public Object doInRedis(RedisConnection connection) {
    connection.del(redisTemplate.getStringSerializer().serialize(
    "user.uid." + uid));
    return null;
    }
    });
    }
    }


    //UserDaoTest.java
    package com.abin.lee.spring.redis.dao.test;
    import static org.junit.Assert.assertEquals;
    import static org.junit.Assert.assertNull;
    import org.junit.Before;
    import org.junit.Test;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import com.abin.lee.spring.redis.dao.UserDao;
    import com.abin.lee.spring.redis.pojo.User;
    public class UserDaoTest {
    private ApplicationContext app;
    private UserDao userDao;
    @Before
    public void before() throws Exception {
    app = new ClassPathXmlApplicationContext("com/abin/lee/spring/redis/spring-redis.xml");
    userDao = (UserDao) app.getBean("userDao");
    }
    @Test
    public void crud() {
    // -------------- Create ---------------
    String uid = "u123456";
    String address1 = "上海";
    User user = new User();
    user.setAddress(address1);
    user.setUid(uid);
    userDao.save(user);
    // ---------------Read ---------------
    user = userDao.read(uid);
    System.out.println("address1="+user.getAddress());
    assertEquals(address1, user.getAddress());
    // --------------Update ------------
    String address2 = "北京";
    user.setAddress(address2);
    userDao.save(user);
    user = userDao.read(uid);
    System.out.println("address2Save="+user.getAddress());
    assertEquals(address2, user.getAddress());
    // --------------Delete ------------
    userDao.delete(uid);
    user = userDao.read(uid);
    System.out.println("addressdel="+user.getAddress());
    assertNull(user);
    }
    }





    posted on 2012-11-14 23:17 abin 閱讀(13186) 評(píng)論(2)  編輯  收藏 所屬分類: Redis

    Feedback

    # re: spring redis整合(一)[未登錄] 2013-08-17 11:40 redis
    你好!

    謝謝你的博文

    想請(qǐng)教您一個(gè)問題

    為什么在WEB下 這個(gè)會(huì)有問題呢  回復(fù)  更多評(píng)論
      

    # re: spring redis整合(一) 2015-07-02 17:41 zuidaima
    springdata demo教程源代碼下載 :http://zuidaima.com/share/kspringdata-p1-s1.htm  回復(fù)  更多評(píng)論
      


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲AV日韩AV永久无码下载| 亚洲综合亚洲综合网成人| 亚洲国产综合91精品麻豆| 久久精品免费网站网| 亚洲午夜无码久久久久| 毛片基地看看成人免费| 久久精品九九亚洲精品天堂| 精品国产污污免费网站| 亚洲国产精品一区第二页| 久久香蕉国产线看免费| 老汉色老汉首页a亚洲| 国产四虎免费精品视频| 亚洲国产成人精品激情| 午夜dj免费在线观看| mm1313亚洲国产精品无码试看| 免费又黄又爽的视频| 精品国产污污免费网站入口在线| 亚洲精品乱码久久久久久蜜桃不卡| 精品四虎免费观看国产高清午夜| 亚洲AV无码成人专区片在线观看| 免费国产黄网站在线观看视频| 亚洲国产午夜电影在线入口| 免费看片免费播放| EEUSS影院WWW在线观看免费| 亚洲av永久无码制服河南实里| 国产曰批免费视频播放免费s| 亚洲成a人无码亚洲成www牛牛 | **真实毛片免费观看| 亚洲乱码一二三四区国产| 免费一级大黄特色大片| 精品一区二区三区免费视频| 色婷婷亚洲十月十月色天| 午夜老司机免费视频| 一区二区三区在线免费观看视频| 亚洲电影一区二区三区| 啦啦啦www免费视频| 四虎影视无码永久免费| 亚洲一卡2卡3卡4卡5卡6卡 | 国产美女无遮挡免费网站| 二区久久国产乱子伦免费精品| 久久久无码精品亚洲日韩京东传媒|