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

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

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

    少年阿賓

    那些青春的歲月

      BlogJava :: 首頁(yè) :: 聯(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 閱讀(13178) 評(píng)論(2)  編輯  收藏 所屬分類: Redis

    Feedback

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

    謝謝你的博文

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

    為什么在WEB下 這個(gè)會(huì)有問(wèn)題呢  回復(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)航:
     
    主站蜘蛛池模板: 免费高清小黄站在线观看| 1024免费福利永久观看网站| 亚洲视频在线观看免费| 99视频全部免费精品全部四虎| 在线免费观看污网站| vvvv99日韩精品亚洲| 亚洲Av无码专区国产乱码DVD| 亚洲精品日韩中文字幕久久久| 亚洲一区二区三区在线观看网站| 国产精品亚洲天堂| 色播在线永久免费视频网站| 最近中文字幕国语免费完整| 日韩高清免费在线观看| 在线精品亚洲一区二区小说| 久久综合亚洲色HEZYO社区| 亚洲啪AV永久无码精品放毛片| 一级人做人爰a全过程免费视频| 日韩在线不卡免费视频一区| 最新69国产成人精品免费视频动漫| 亚洲视频在线一区二区| 久久亚洲sm情趣捆绑调教| 含羞草国产亚洲精品岁国产精品 | 亚洲国产精品久久久久久| 亚洲中文字幕久久无码| 香蕉免费在线视频| 拍拍拍又黄又爽无挡视频免费| 伊人婷婷综合缴情亚洲五月| 中文字幕亚洲综合小综合在线| 一级白嫩美女毛片免费| 114一级毛片免费| 久久久久亚洲爆乳少妇无| 亚洲国产精品综合一区在线| 一级A毛片免费观看久久精品| 精品无码免费专区毛片| 亚洲精品国产精品国自产观看 | 免费人妻精品一区二区三区| 最近高清中文字幕免费| 亚洲国产成人久久综合一区77| 亚洲第一精品电影网| 巨胸喷奶水www永久免费| 女人被弄到高潮的免费视频|