使用java 创建hashmap 对象,转换成json格式存入本地redis,再从redis取出。
在Java中map是使用键值对的形式存在的这与数组非常的相似。Map是一个接口它当中包括:HashTable,HashMap,TreeMap等实现类!
对map操作的方法有以下几种,通过这些方法将Map中的内容进行修改:
clear()从Map中清除所有的映射。
remove(指定的键)从Map中删除键和与之关联的值!
put(键,值)在map集合中添加一组键值对。
putAll(Map)将指定的Map复制到此映射中!
HashMap是一个最常用的Map,它是根据键值一一对应的关系来存储数据!根据键可以直接获取到它对应的值。HashMap最多只允许一条记录的键为null,允许多条记录的值为null。
/**
* Created by sks on 2016/11/24.
*/
import redis.clients.jedis.Jedis;
import java.util.*;
public class Hash_map {
public static void main(String[] args) {
//连接本地的Redis服务
Jedis jedis = new Jedis("127.0.0.1", 6379);
System.out.println("连接成功!");
Map<String, String> map=new LinkedHashMap<String, String>(); //!LinkedHashMap是有序的
// Map<String, String> map=new HashMap<String, String>(); //!hashMap是无序的
// TreeMap<String,String> map=new TreeMap<String, String>(); //使用treemap默认升序
map.put("nj","2966.5");
map.put("flt","2946.25");
map.put("jsl","78.95");
map.put("cs","1597.6");
System.out.println("================直接输出map中的key和value,=======================================");
System.out.println(map);
System.out.println("================循环遍历map中的key和value,此方法效率高,推荐=======================================");
Iterator iter = map.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
System.out.println(entry.getKey()+":"+entry.getValue());
}
System.out.println("================拼成json串=======================================");
//拼成json格式
String string = "{";
for (Map.Entry<String, String> entry : map.entrySet()) {
string += "\"" + entry.getKey() + "\":";
string += entry.getValue() + ',';
}
string = string.substring(0,string.lastIndexOf(","));
string += "}";
System.out.println(string);
//存入redis
for (Map.Entry<String, String> entry : map.entrySet()){
jedis.set(entry.getKey(), entry.getValue());
}
System.out.println("================从redis取出数据=======================================");
for (Map.Entry<String, String> entry : map.entrySet()){
System.out.println(entry.getKey()+":" + jedis.get(entry.getKey()));
}
// Iterator<String> iterator=map.keySet().iterator(); //遍历取出value,效率没有entryset高
// while(iterator.hasNext()){
// Object key=iterator.next();
// System.out.println(map.get(key));
// }
}
}