随笔分类 - java&jvm&scala&python
摘要:String.format由于每次都有生成一个Formatter对象,因此速度会比较慢,在大数据量需要格式化处理的时候,避免使用String.format进行格式化,相反使用StringUtils.leftPad,StringUtils.rightPad,然后使用+一次性(注:分为多个独立的+性能会
阅读全文
摘要:现在很多公司面试都喜欢问java的HashMap原理,特在此整理相关原理及实现,主要还是因为很多开发集合框架都不甚理解,更不要说各种其他数据结构了,所以造成面子造飞机,进去拧螺丝。 1.哈希表结构的优势? 哈希表作为一种优秀数据结构 本质上存储结构是一个数组,辅以链表和红黑树 数组结构在查询和插入删
阅读全文
摘要:ZooKeeper的ACL机制 zookeeper通过ACL机制控制znode节点的访问权限。 首先介绍下znode的5种操作权限:CREATE、READ、WRITE、DELETE、ADMIN 也就是 增、删、改、查、管理权限,这5种权限简写为crwda(即:每个单词的首字符缩写)注:这5种权限中,
阅读全文
摘要:有时候发布后的包不得不进行debug,但是又不方便本地开发环境直接debug模拟,所以不得不需要远程debug。 启动参数 首先在服务端使用JVM的-Xdebug参数启动Jar包. java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend
阅读全文
摘要:很多时候,我们用jdbctemplate或mybatis的时候,为了查询通用,会选择使用map数据结构,因为hashmap本身无序,所以为了保证key的有序性,会采用linkedhashmap。所以我们要看一下Linkedhashmap的性能影响多大。如下: 执行结果: 读取数据是有序,则如下: H
阅读全文
摘要:之所以要测该场景,是因为merge多数据源结果的时候,有时候只是单个子查询结果了,而此时采用sql数据库处理并不一定能够合理(网络延迟太大)。 测试数据10万行,结果1000行 limit 20 offset 0的延时如下: 开始:1570093479002结束:1570093479235 --20
阅读全文
摘要:Using Oracle java JDBC (ojdbc6 11.2.0.4), loading a query with many rows takes forever (high latency environment. This is apparently the default prefe
阅读全文
摘要:mybatis插件(准确的说应该是around拦截器,因为接口名是interceptor,而且invocation.proceed要自己调用,配置中叫插件)功能非常强大,可以让我们无侵入式的对SQL的执行进行干涉,从SQL语句重写、参数注入、结果集返回等每个主要环节,典型的包括权限控制检查与注入、只
阅读全文
摘要:MySQL数据类型JAVA数据类型JDBC TYPE普通变量类型主键类型 BIGINT Long BIGINT 支持 支持 TINYINT Byte TINYINT 支持 不支持 SMALLINT Short SMALLINT 支持 不支持 MEDIUMINT Integer INTEGER 支持
阅读全文
摘要:因为现有系统外部接入需要,需要支持三方单点登录。由于系统本身已经是微服务架构,由多个业务独立的子系统组成,所以有自己的用户认证微服务(不是cas,我们基础设施已经够多了,现在能不增加就不增加)。但是因为客户和其他接入(公有云网络)原因,无法通过token+redis实现,所以还需要支持外部的cas。
阅读全文
摘要:一开发说项目报错 原因: 实际参数列表和形式参数列表长度不同,看报错信息指向 奇怪了,怎么builder会报错? 正文 看报错信息说是匹配不到全参数的构造函数,因为项目用的是lombok,我的注解如下 @Data @Data @NoArgsConstructor @NoArgsConstructor
阅读全文
摘要:19c jdbc新特性 https://blogs.oracle.com/dev2dev/whats-new-in-193-and-183-jdbc-and-ucp jdbc实现直接路径加载 https://www.oracle.com/a/tech/docs/dev4615-perf-scalab
阅读全文
摘要:写在开头,zk客户端、服务器对负载比较敏感,对于类似大数据处理的应用,zk心跳时间设置和监测很关键,否则非常容易系统不稳定,建议可能长时间高负载导致GC时间过长的非OLTP的尽量不使用zk或rpc,而是使用MQ或HTTP。 dubbo consumer和provider的心跳机制 dubbo客户端和
阅读全文
摘要:eclispe maven打包的时候总是出现"生成的jar的META-INF中,重复的pom.xml和pom.properties文件。",maven命令直接打包则没有这个问题。 帖子https://oomake.com/question/2791357有提到几种可能,不过最后一种无法尝试,因为ec
阅读全文
摘要:注入map,平常一般不会这么做,今天看一段老代码时发现有这么个用法。补习一下。 @Autowired 标注作用于 Map 类型时,如果 Map 的 key 为 String 类型,则 Spring 会将容器中所有类型符合 Map 的 value 对应的类型的 Bean 增加进来,用 Bean 的 i
阅读全文
摘要:最近框架和爬虫上常要处理字符串匹配和替换的场景,备忘。java的正则表达式仿效了perl 5。 非贪婪模式 比如要匹配html文本中的连接,例如a href="www.abc.com/xyz/o"需要替换为a href="www.bing.com?q=o",可以如下: static final St
阅读全文
摘要:对于不包含MANIFEST.MF,或jar包中的MANIFEST.MF未指定MainClass的jar,可以通过java命令行选项-classpath指定classpath。但是如果是包含MainClass的jar,例如: Manifest-Version: 1.0Bundle-License: h
阅读全文
摘要:spring boot用layout ZIP打出来的包能够支持外部classpath,但是当用rar/7zip替换其中的jar后,报下列错误: 解决方法: jar包可以替换的,过程如下:jar -xvf ta-base-service-TABASEV201913.00.000-SNAPSHOT.ja
阅读全文
摘要:在读取user的时候,因为为空,报错了,错误处的代码是这样的 其实准确的写法应该是 如果要消除错误,需要把前端代码修后成后面这种形式。 实际则是不为空且不为空字符串"",所以和mybatis一样: 对于list,也需要先判断 <#if orgList?? && (orgList?size > 0)
阅读全文
摘要:package javatest; import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xs
阅读全文