stringRedisTemplate.opsForValue().set("test", "100",60*10,TimeUnit.SECONDS);//向redis里存入数据和设置缓存时间
stringRedisTemplate.boundValueOps("test").increment(-1);//val做-1操作
stringRedisTemplate.opsForValue().get("test")//根据key获取缓存中的val
stringRedisTemplate.boundValueOps("test").increment(1);//val +1
stringRedisTemplate.getExpire("test")//根据key获取过期时间
stringRedisTemplate.getExpire("test",TimeUnit.SECONDS)//根据key获取过期时间并换算成指定单位
stringRedisTemplate.delete("test");//根据key删除缓存
stringRedisTemplate.hasKey("546545");//检查key是否存在,返回boolean值
stringRedisTemplate.opsForSet().add("123", "1","2","3");//向指定key中存放set集合
stringRedisTemplate.expire("123",1000 , TimeUnit.MILLISECONDS);//设置过期时间
stringRedisTemplate.opsForSet().isMember("123", "1")//根据key查看集合中是否存在指定数据
stringRedisTemplate.opsForSet().members("123");//根据key获取set集合
验证有效时间
Long expire = redisTemplate.boundHashOps("123").getExpire();
System.out.println("redis有效时间:"+expire+"S");
批量插入
/**
* 批量新增
*/
@Insert({
"<script>",
"INSERT INTO session_event (id, session_id, create_time, data_contexts)",
"VALUES",
"<foreach collection ='list' item='sessionEvent' separator =','>",
"(#{sessionEvent.id}, #{sessionEvent.sessionId}, #{sessionEvent.createTime}, #{sessionEvent.dataContexts})",
"</foreach>",
"</script>"
})
int sessionIdInsert(List<SessionEvent> sessionEvent);
批量更新
/**
* 批量新增
*/
@Update({
"<script>",
"<foreach collection='list' item='sessionEvent' index='index' separator=';'>",
"UPDATE session_event SET",
"data_contexts = #{sessionEvent.dataContexts}",
"WHERE session_id = #{sessionEvent.sessionId}",
"</foreach>",
"</script>"
})
int sessionIdUpdate(List<SessionEvent> sessionEvent);
批量删除
/**
* 批量删除
* @param sessionId
* @return
*/
@Delete({
"<script>",
"DELETE FROM session_event WHERE id IN",
"<foreach collection='list' item='sessionId' open='(' separator=',' close=')'>",
"#{sessionId}",
"</foreach>",
"</script>"
})
int sessionIdDelete(List<String> sessionId);
批量查询
/**
* 批量查询
* @param sessionId
*/
@Select({
"<script>",
"SELECT * FROM session_event",
"WHERE session_id in",
"<foreach item='sessionId' index='index' collection='list' open='(' separator=',' close=')'>",
"#{sessionId}",
"</foreach>",
"</script>"
})
public List<SessionEvent> sessionIdSelect(List<String> sessionId);
如果控制台报错:
mybatis做批量更新的时候控制台报错updateBatch-Inline
需要在url上添加
allowMultiQueries=true
例如
jdbc:mysql://127.0.0.1:3306/session_event?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&useSSL=false&autoReconnect=true&allowMultiQueries=true