精华内容
下载资源
问答
  • Redis实现存取数据+数据存取

    千次阅读 2018-12-27 23:16:00
    Redis实现存取数据+数据存取 添加依赖: <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind&...

    Redis实现存取数据+数据存取

     

    添加依赖:

     

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.9.7</version>
    </dependency>
    
     <!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-redis -->
            <dependency>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-redis</artifactId>
                <version>2.1.3.RELEASE</version>
     </de

     

     

    Mapper接口:

    package com.nf147.sim.mapper;
    
    import com.nf147.sim.entity.News;
    
    import java.util.List;
    
    public interface NewsMapper {
        List<News> query();
        void add(News news);
    }

     

     

    映射文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="com.nf147.sim.mapper.NewsMapper">
    
        <resultMap id="BaseResultMap" type="com.nf147.sim.entity.News">
            <id column="id" jdbcType="INTEGER" property="id" />
            <result column="title" jdbcType="VARCHAR" property="title" />
            <result column="body" jdbcType="VARCHAR" property="body" />
        </resultMap>
    
        <select id="query" resultType="com.nf147.sim.entity.News">
            select id ,title,body from news
        </select>
    
        <select id="selectAll" resultType="com.nf147.sim.entity.News">
              select id ,title,body from news
        </select>
    
        <insert id="add" keyProperty="id" useGeneratedKeys="true">
            insert into news (title,body) values (#{title},#{body})
        </insert>
    
    </mapper>

     

    服务接口:

    package com.nf147.sim.service;
    
    import com.nf147.sim.entity.News;
    import redis.clients.jedis.Jedis;
    
    import java.io.IOException;
    import java.util.List;
    
    public interface NewsService {
        List<News> selectAll() throws IOException;void add (News news);
    }

     

    实现:

    package com.nf147.sim.service.impl;
    
    import com.fasterxml.jackson.core.type.TypeReference;
    import com.fasterxml.jackson.databind.ObjectMapper;
    import com.nf147.sim.entity.News;
    import com.nf147.sim.mapper.NewsMapper;
    import com.nf147.sim.service.NewsService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    import redis.clients.jedis.Jedis;
    
    import java.io.IOException;
    import java.util.List;
    
    @Service
    public class NewsServiceImpl implements NewsService {
    
        @Autowired
        private NewsMapper mapper;
    
        @Override
            public List<News> selectAll() throws IOException {
    
                Jedis jedis =new Jedis();
                String key = "listNews";
    
                ObjectMapper on = new ObjectMapper();  //josn
    
            if (jedis.exists(key)){                //判断缓存有没有存在key
                System.out.println("从缓存中取出数据...");
                return on.readValue(jedis.get(key),new TypeReference<List<News>>(){});  //如果有就从缓存里面取数据
            }
    
         //没有则从数据库去取
            List<News> news = mapper.query();
            jedis.set(key,on.writeValueAsString(news));  //然后设置键和数据
            return news;                                //返回
        }
    
        @Override
        public void add(News news) {  //每次添加时判短键是否存在,如果存在首先删除
            Jedis jedis = new Jedis();
            String key="listNews";
            if(jedis.exists(key))
                jedis.del(key);
            mapper.add(news);
        }
    
    
    }

     

    测试:

    package com.nf147.sim.service.impl;
    
    import com.fasterxml.jackson.core.JsonProcessingException;
    import com.fasterxml.jackson.core.type.TypeReference;
    import com.fasterxml.jackson.databind.ObjectMapper;
    import com.google.gson.Gson;
    import com.google.gson.reflect.TypeToken;
    import com.nf147.sim.configuration.RootConfig;
    import com.nf147.sim.entity.News;
    import com.nf147.sim.mapper.NewsMapper;
    import com.nf147.sim.service.NewsService;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.test.context.ContextConfiguration;
    import org.springframework.test.context.junit4.SpringRunner;
    import redis.clients.jedis.Jedis;
    
    import java.io.*;
    import java.lang.reflect.Type;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    
    
    @RunWith(SpringRunner.class)
    @ContextConfiguration(classes = RootConfig.class)
    public class NewsServiceImplTest {
    
        @Autowired
        private NewsServiceImpl NewsServiceImpl;
    
        @Test
        public void selectAll() throws IOException {
            List<News> news = NewsServiceImpl.selectAll();
            System.out.println(news);
        }
    
    
        }
    }

     

    结果:1470521-20181228110114036-1476235473.gifuploading.4e448015.gif转存失败重新上传取消

     

     
     
     
     
     
     
     
    posted @ 2018-12-27 23:16 梓鸿 阅读(...) 评论(...) 编辑 收藏
    展开全文
  • 初学Redis,做一个固定数据的写死页面,每次从MySQL数据库取值实在是太慢,故选用redis存取。 1、连接数据库: import redis # 与本地redis进行链接,地址为:localhost,端口号为6379 r = redis.StrictRedis...

    初学Redis,做一个固定数据的写死页面,每次从MySQL数据库取值实在是太慢,故选用redis存取。

    1、连接数据库

    import redis
    
    # 与本地redis进行链接,地址为:localhost,端口号为6379
    r = redis.StrictRedis(host='地址', port=端口号,password='密码')

    2、存数据:将需要存储的数据存在redis数据库(此处存储的是list列表类型【增删快、链式结构、按插入顺序排序】)

                
    #这里我要将list列表保存在redis中,先遍历,然后一个一个从右边(后面追加)推进redis数据库中
    
                for item in result:
                    #在name对应的list中添加元素,每个新的元素都添加到列表的最右边
                    #数据都保存在数据库名字叫“key”的键里
                    lpush = r.rpush(key,item)
                    #推进一条返回当前行数,未成功则返回0
                    print("推进去redis", lpush)

    3、取数据:

    import json
    #从redis中取出数据
    #lrange:list列表类型的取出语法,后面跟0,-1 代表取出全部。
     result = r.lrange(key_private_list , 0, -1)
                #定义一个空列表存储取出的元素
                reallyresult=[]
                #遍历取出的全部数据,实际上是列表类型的bytes数据类型
                for item in result:
                    try:
                #要对bytes数据进行转义,str(item, encoding='utf-8')先转成字符串
                #replace("'", "\"").replace("\n", "")将'替换成"方便json转义,True,False同理
                         item = str(item, encoding='utf-8').replace("\"", "“").replace("'", "\"").replace("True",
                                                                                                          "true").replace(
            "None", "null").replace("False", "false") \
            .replace("\\xa0", " ")
                        #json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)
                        item = json.loads(item)
                        #空列表追加数据
                        reallyresult.append(item)
                    except Exception as err:
                        #抛出错误
                        raise err
               #最后得到的reallyresult是取出的列表。

    以上只是redis的value是list列表类型的数据存取,String、Set等数据类型同理。

    展开全文
  • 下面将介绍 一种 由jQuery提供的更安全的在DOM元素存取数据的方法。获取数据的值:data( [name] )设置数据的值:data(name, value) data(object) ---- 批量传入,传对象即可。返回该DOM所有的data:data()删除...

    在DOM元素中存数据,可以使用DOM元素的属性(内置的)和特性(自定义的)。但直接这样做,可能会导致内存泄漏等安全问题。下面将介绍 一种 由jQuery提供的更安全的在DOM元素存取数据的方法。

    获取数据的值:data( [name] )

    设置数据的值:data(name, value)  data(object) ---- 批量传入,传对象即可。

    返回该DOM所有的data:data()

    删除数据:removeData( [name] )

    判断是否有数据:jQuery.hasData(element)

    示例一:

    	<script type="text/javascript">
    		$(function(){
    			var p = $('p');
    			var checkbox = $('#check')
    
    			console.log(checkbox.data('description'))
    			console.log(checkbox.attr('description'))
    			console.log(checkbox.prop('description'))
    
    			checkbox.data('des','i am a data des')
    			console.log(checkbox.data('des'))
    		})
    	</script>

    示例二:

    			console.log($.hasData(checkbox.get(0) ) )


    注意:

    data 设置DOM的性质的时候,可以保留数据的类型,而不是将数据转换为字符串(像属性和特性)。

    展开全文
  • redis 无法存取数据

    2020-11-26 15:52:22
    开发报了一个问题 某个redis 服务无法存取数据 于是一通排查 性能 手动 set get 再手动get 业务key 连key都没有 后来开发说 时间长的key 1000秒过期的就查得到 180秒过期的就查不到 于是赶紧查了 time 发现时间和...

    开发报了一个问题   某个redis 服务无法存取数据

    于是一通排查  性能 手动 set get  再手动get 业务key 连key都没有

    后来开发说 时间长的key 1000秒过期的就查得到 180秒过期的就查不到   于是赶紧查了 time 发现时间和真实情况快了3分钟 。180秒的刚set就过期了   给大家提供一个思路 下次排查的时候可以看下。。。这个redis是开的云服务 一开始没有注意查看时间问题

    展开全文
  • DataAutoAccess 自动存取Android Bundle中数据——Intent中数据快速取出,onSaveInstanceState和onRestoreInstanceState存取数据便捷方案。
  • 记录Vue用sessionStorage存取数据 sessionStorage是用于临时性的存储数据,在关闭浏览器后,该数据将会被删除,而localStorage则是长期的,就算你关闭了浏览器,该数据还是存在。 同时,sessionStorage的存储空间会...
  • 本地存取数据 uni.setStorage({ key:"user",//属性名 data:"" }) 取 uni.getStorage({ key:"user",//取的属性名user success(e){ e.data//取到的值 } })
  • 1、存数据 sessionStorage.setItem('isVolvo', resp.payload.isVolvo) 2、取数据 let getDatas = sessionStorage.getItem('isVolvo') //console.log(typeOf getDatas) String(字符串类型) ...
  • localStorage很多时候用来存储数据非常好,方便在页面中使用某些数据的时候调用 首先,通过setItem(key,value)即可存储数据 然后用getItem(key)的方式即可取得数据 可以看到,设置之后在浏览器的...
  • redis管道模式批量存取数据

    千次阅读 2019-02-26 15:10:26
    redis管道模式批量存取数据 管道模式概述 java程序中,对redis操作时,会自动创建连接。如果不加特殊处理,每次操作redis,就会创建连接。当需要处理较大的数据量时,会花费大量时间创建连接,显然,效率低下。 管道...
  • vue中使用vuex存取数据

    2020-06-02 14:34:04
    vue中使用vuex存取数据,感谢博主的分享 https://www.jianshu.com/p/d9b2bd650eee
  • SpringBoot Redis批量存取数据

    千次阅读 2019-10-14 18:02:52
    springboot中的redisTemplate封装了redis批处理数据的接口,我们使用redisTemplate可以直接进行批量数据的get和set。 package com.huateng.applacation.service; import org.springframework.beans.factory....
  • VB 使用键值对存取数据

    千次阅读 2017-05-06 14:23:31
    VB 类似map类型利用键值对存取数据
  • Android_Preference存取数据

    千次阅读 2012-03-19 20:49:50
    Preference 提供了一个轻量级的数据存取方法,... 存取数据用到了SharedPreferences接口和它的内部接口SharedPreferences.Editor,这两个接口在android.content包中。  调用Context.getSharedPreferences(String
  • 存取数据localstorage

    千次阅读 2018-09-11 16:16:34
    : localStorage.setItem('PaperMsg',JSON.stringify(this.resourceLists)); localStorage.setItem('chosedResourceids',JSON.stringify(this.chosedids)); 取: var msg=lo...
  • ServletContext对象之作为域对象存取数据 域对象概述: 域对象:指的是将数据存入到域对象中,这个数据就会有一定的作用范围。域指的是一定的作用范围。 ServletContext作为域对象 ServletContext作为域对象的...
  • Java连接Redis存取数据(详细)

    千次阅读 2020-02-12 22:15:19
    Java连接Redis存取数据一.相关工具二.准备工作1.启动redis2.外部连接测试3.新建连接。4.连接成功三.新建jedis项目1.新建项目2.命名项目3.引入相关jar包4.引入 junit5.新建包com.redis.test四.编写代码1.redis....
  • uniapp 本地存取数据

    千次阅读 2020-01-13 22:50:57
    : uni.setStorage({ key:“属性名”, data:“值” }) 2 取 uni.getStorage({ key:“属性名”, success(e){ e.data//这就是你想要取的token } }) 更多详解: 喜欢可以加@群号:913934649 简书: ...
  • Request作为域对象存取数据

    千次阅读 2017-06-28 19:47:04
    Request作为域对象 ...l 向Request域中保存数据 setAttribute() l 从Request域中获取数据 getAttribute() l 从Request域中移除数据 removeAttribute() Request作为域对象作用范围 Requ
  • 使用redis存取数据

    万次阅读 2018-07-02 14:14:47
    throw new CoreException(PayErrorConstant.C_PAY_BIZ00000,new Object[]{"插入redis数据异常"}); }finally{ pool.returnResource(jedis); } } 2.通过key获得值的get方法 public Object get(String key...
  • 项目中vuex存取数据

    2020-07-27 16:28:27
    作为一名vue前端,很多地方需要使用到vuex,最典型的就是购物车功能,我们点某个商品存入购物车中,怎么,local?session?cookie?nonono,我告诉你们,用vuex,vuex真好,vuex真妙,vuex呱呱叫,你问我怎么...
  • Session作为域对象存取数据 Session作为域对象 Session作为域对象的API setAttribute(String name, Object value);向session中存入数据   getAttribute(String name);从session域中获取数据   ...
  • 在android开发中,我们经常使用在类中使用static存取数据,但是这有一个很大的问题,就是static变量存取的数据经常被回收,不像JavaSE,可能android的虚拟机的设计有所不同。比如我们把登陆的信息存在static的变量中...
  • 使用JS进行本地存取数据

    千次阅读 2017-03-15 09:26:14
    本地存储是一个window的属性,包括localStorage和sessionStorage,从名字应该可以很清楚的辨认二者的区别,前者是一直存在本地的,除非清空本地的数据,后者只是伴随着session,窗口一旦关闭就没了。两者的用法完全...
  • 经过一个for循环,每次都能得到一组数据,将每组数据按行存入一个txt文件中,大约十几万行,该怎样写,求助大神们!给个大概模板也可以,相似的例子之类的!
  • java连接redis存取数据(详细)

    万次阅读 多人点赞 2018-11-28 17:35:32
    这里写了String类型和hash类型两种数据存取,如需要存取其他数据类型可以自己扩展 package com.redis.test; import com.alibaba.fastjson.JSON; import redis.clients.jedis.Jedis; /** * redis存取工具...
  • 使用JSON对象存取数据

    2019-08-09 00:43:31
    ) 1.先用JSON收集一组用户信息 2.创建Object(js对象)来囊括这些信息 3.创建一个字符串str来表示这个Object 4.把这个字符串放到localStorage中 (取) 5.获得用户的输入的名字 6.利用名字从localStorage中取出...
  • HBase 是如何存取数据

    千次阅读 2018-09-04 15:18:39
    HBase是一个查询极其快速的非关系型数据库,它在实时读写和实时访问上有着巨大的优势,并且非常灵活。...这看上去是一个数据表,但是对于HBase而言,这只是一行数据。看到这大家可能会比较迷惑,这明...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,328,599
精华内容 531,439
关键字:

存数据