摘要:
我有一个函数 ( findByNames) 接受传播参数,如下例所示: List<Users> findByNames(String... names) { ... } 作为参数,我有一个列表: List<String> names = asList("john","abraham"); 所以我想将 阅读全文
摘要:
使用jdk8的stream流(基本实现分组靠Collectors.goupingby),list自带的sort()方法排序,话不多说,代码如下: List<User> list = Arrays.asList(new User("1","小明","2","一年级"), new User("2","小 阅读全文
摘要:
Redis中opsForValue()方法的使用 1、set(K key, V value) 新增一个字符串类型的值,key是键,value是值。 redisTemplate.opsForValue().set("stringValue","bbb"); 2、get(Object key) 获取ke 阅读全文
摘要:
setIfAbsent( key, value) 1.如果键不存在则新增,存在则不改变已经有的值。 2.存在返回 false,不存在返回 true。 3.boolean lock = redisTemplate.opsForValue().setIfAbsent("testKey","123"); 阅读全文
摘要:
ClickHouse本身对update的执行是低效的,因为ClickHouse的MergeTree存储一旦生成一个Data Part,这个Part就不支持更改,而是需要删除旧Part, 重写整个Part。所以从MergeTree存储内核层面,ClickHouse就不擅长做数据更新删除操作。 本文讲述 阅读全文
摘要:
mybaits 中没有 else 要用 chose when otherwise 代替 下面就是MyBatis中的if....else...表示方法 <choose> <when test=""> //... </when> <otherwise> //... </otherwise> </choo 阅读全文
摘要:
使用Parallel Stream时,在适当的环境中,通过适当地使用并行度级别,可以在某些情况下获得性能提升。 如果程序创建一个自定义ThreadPool,必须记住调用它的shutdown()方法来避免内存泄漏。 Parallel Stream默认使用的线程池 如下代码示例,Parallel Str 阅读全文
摘要:
定义: Stream(流)是JDK8中引入的一种类似与迭代器(Iterator)的单向迭代访问数据的工具。ParallelStream则是并行的流,它通过Fork/Join 框架(JSR166y)来拆分任务,加速流的处理过程。最开始接触parallelStream很容易把其当做一个普通的线程池使用, 阅读全文
摘要:
前言 现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate。使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数。面对各种复杂的业务场景,传递参数也是一种学问。 下面给大家总结了以下几种多参数传递的方法。 方法1:顺序传参法(不推荐) #{}里面的数字代 阅读全文