随笔分类 - 01、JAVA
摘要:在Java 8中,如果你想要将一个Map的条目每10个分为一组,你可以使用流(Streams)来实现这一功能。这里是一个例子,假设我们有一个Map<Integer, String>,我们想要将其每10个元素分为一组。 首先,我们需要将Map的entrySet()转换为流,然后使用流的操作来实现分组。
阅读全文
摘要:记录一次问题 接口接收参数的时候,写的是 @RequestBody JSONObject jsonObject结果就是一直报错 The request sent by the client was syntactically incorrect. 后来发现,原因是 net.sf.json.JSONO
阅读全文
摘要:目的 客户要求密码校验方式,用自己的认证方式。提供一种方案,在不出补丁的情况下,解决这个问题。 原理 1、本地写一个类,用客户想要的方案,实现密码校验的接口,编译成class类。2、然后把这个class类,先转换成二进制,再转换成16进制的字符串。3、将字符串写到客户的数据库里。4、重启服务,在类加
阅读全文
摘要:问题 postman请求 能返回图片,但是在浏览器里就返回不了,而是一堆乱码 解决 最后的解决办法, 在调用 ImageIO.write之前,加一行response.setContentType("image/jpg"); 原创文章,欢迎转载,转载请注明出处!
阅读全文
摘要:比如,jar包直接放到根目录 pom.xml 里这么配置 <dependency> <groupId>njcanc</groupId> <artifactId>njcanc</artifactId> <version>2.12</version> <scope>system</scope> <sys
阅读全文
摘要:震惊死了,System.out.println 竟然没打印出来,别人提bug才发现。 最终发现是 grep console 插件导致的,把它关了就可以了。 关键是 grep console 过滤的内容并没有我输出的字符啊,服了,估计是插件本身的bug
阅读全文
摘要:问题 IDEA启动maven项目,每次启动都自动去远程仓库拉jar包,很慢,还会报错,比如下面这样 [WARNING] Could not transfer metadata xxxxxx-SNAPSHOT/maven-metadata.xml from/to public xxxxx: Trans
阅读全文
摘要:两个单引号表示一个单引号 比如MESSAGE_TICKET_NOT_EXIST=票根''{0}''在不存在 双引号,不需要额外处理,直接使用 比如screen.confirmation.message=单击 <a href="{0}">这里</a>
阅读全文
摘要:import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.poi.openxml4j.exceptions.Invali
阅读全文
摘要:以下内容来源于:https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/issues/72 Delay interval predictability We have noticed a general issue with the
阅读全文
摘要:不要用get,get的话有可能并发 使用 setnx ex NX :只在键不存在时,才对键进行设置操作。 SET key value NX 效果等同于 SETNX key value 。EX second :设置键的过期时间为 second 秒。 SET key value EX second 效果
阅读全文
摘要:这知识网上讲得挺多的,就是突然想发个博客了,没啥可发的,感觉越来越懈怠了 需求 比如这个需求,重写jar包里的类,修改连接超时的时间 方案 1、首先org.springframework.http.client.SimpleClientHttpRequestFactory 类里添加变量和set方法
阅读全文
摘要:关键就是统计次数 技巧:1、使用guava cache缓存 来计数2、利用引用变量的特性,减少put,只使用get 如果重新put赋值,缓存的时间会刷新,比如下面例子的b,一共输出了7次,而a只输出了5次 import com.google.common.cache.Cache; public cl
阅读全文
摘要:抛砖引玉以一下,为网络添加一个词条 使用多线程 和 Future 对象,2秒钟之后拿到结果,如果拿不到就抛出异常 future.get(2,TimeUnit.SECONDS); 标签:接口超时
阅读全文
摘要:错误的写法 这种只是写 threadLocal,并没有写到 redis 里去,要想写到 redis 里 Assertion assertion = AssertionHolder.getAssertion(); assertion.getPrincipal().getAttributes().put
阅读全文
摘要:核心原理就是一个类:javax.servlet.http.HttpServletRequestWrapper 一个简单的例子,当任何请求的参数里有 aaa的时候,把它的值改成 bbb 新增一个类自定义的类 CustomHttpServletRequestWrapper import javax.se
阅读全文
摘要:直接赋值会报错Method threw 'java.lang.UnsupportedOperationException' exception. 给没有set方法的类如下赋值 public static void setFieldValue(Object obj, String fieldName,
阅读全文
摘要:一般情况下,ToB企业是不会把自己的源代码给客户的,但是不同的客户又有不同的需求,每个客户都得满足,导致代码也越来越臃肿。 有一个方案,我正在用,不细说了,就讲下原理。 定义一个接口,每个客户自己实现它,写一个class 文件,但是此时不能部署到代码里了。把这个class 文件转换成16进制,存放到
阅读全文
摘要:要求 比如:第一个文件 message_zh.properties 里有aaa=123bbb=456 第二个文件 message_en_US.properties 里有aaa=onetwothreebbb=fourfivesix 合并到一个excel里只有三列aaa 123 onetwothreeb
阅读全文
摘要:System.out.println(5 & (~1)); 比如,通过二进制位运算实现权限设置 newAuth.getAuthority() 为表示权限的数字,attEnum.getIndex() 指的是某一个权限的位数,代码如下 if(flag) { Long tmp = newAuth.getA
阅读全文