QingShan Talk

青衫说,关于程序与设计、黑客与画家

Tmux和Htop自动安装过程

Install Tmux and Htop automatically

1 Tmux自动安装 Tmux是我在工作中经常用的工具,除了可以取代screen、nohup等后台进程管理以外,还可以方便地将一个项目所有相关的进程整合到一个session界面中。我通常一个session开四个4X4的pane,一个项目运行主进程(或者日志监控)、一个数据库交互、一个资源监控、一个备用。 今天在新机器上发现通过yum安装的tmux的一直提示:faild to connect...

匪夷所思的中文编码问题

Confused Chinese encoding problem

今天通过Python程序在数据库里查询一系列数据,返回结果为空,无报错。但是我肯定数据是存在的,于是手动上数据库搜索,一下子又出来了。在用程序debug出搜索关键字,复制到数据库,又查询不出,简直奇怪。而且更奇怪的是,被查询的中文字符串肉眼上见是一模一样的,居然一个可以,一个不行。具体如下: 查询的出:FILORGA 菲洛嘉 查询不出:FILORGA 菲洛嘉 排查过程 经过一顿排查,...

Mysql根据日期来分组统计数据

Group by and Analysis with date in Mysql

今天在工作中,需要用到MySQL做根据日期的聚合查询,带一点统计计算性质。经过检索,发现MySQL本身就支持简单的计算统计功能,例如,按日期分组统计的查询可以这样写: SELECT DATE_FORMAT( deteline, "%Y-%m-%d %H" ) , COUNT( * ) FROM test GROUP BY DATE_FORMAT( deteline, "%Y-%m-%d ...

关于JPA的ConversionFailedException报错

The ConversionFailedException of JPA

今天在项目中修改一个Bug,使用JPA在MySQL中做多表联合查询。因为只需要结果中的某几个字段,于是就自定义了一个model。使用@Query将查询结果绑定到自定义model上,却报错: 1 ConversionFailedException: Failed to convert from type [java.lang.Object[]] to type 仔细检索后,得知原因是: 1...

Java网络访问绕过HTTPS的证书

Java without SSL when HTTPS

Java网络访问绕过 今天在内网通过Java访问一个业务接口,测试环境好好的,发布到正式环境就死活不通,一直在报这个错误:Exception in thread “main” javax.net.ssl.SSLHandshakeException:。 经过询问老同事,答复这个问题许多人都遇到过,原因是公司自己签发了证书,但是后端配置证书不正确。解决办法也很简单,就是绕过。因为是内网应用,...

过滤和转义HTTP GET方法中的保留和不安全字符

Translation and filter the unsafe characters in HTTP GET method

遇到问题: 今天接到用户报告,说在一个界面上获取数据超时无返回。根据报告内容很快就定位到了对应的接口,一个很常见的Get方法。将用户请求构造成URL通过postman复现,发现正常返回,并没有任何问题。没办法,只能手动模拟用户操作复现了。在chrome console上开启JavaScript debug模式,将构造请求的所有变量都打上断点,结果也是一切正常。最后,在接口返回的respons...

MacOS下删除文件遇到Operation not permitted

Remove files failed with Operation not permitted on MacOS

1 在 mac osx 下删除一个文件,却提示删除失败:Operation not permitted。 从提示上看就是没有权限删除这个文件,但用了 sudo 之后仍然是 Operation not permitted。 root 都没有权限,那就肯定有其它的原因导致文件无法删除了,Google一下发现是 FreeBSD 系统的文件 flag 在作怪。 通过 ls 命令可以看到文件的 ...

Java Spring Boot JPA配置多个数据源

Java Spring Boot JPA With Multi Redis Source

之前在6月20日的博文Java Spring Boot Mybatis配置多个MySQL源这篇文章中总结了如何在spring boot 中使用mybatis连接多个MySQL源。今天接手了一个项目,采用的是JPA,也要配置多数据源,摸索了一下,发现和Mybatis的配制方法还不一样。特此总结一下。 1 准备工作 首先准备好依赖关系,编辑项目根目录下的pom.xml文件,主要检查jpa和my...

解决Vue页面闪烁问题

Solve the twinkle problem in Vue.js

使用Vue编写单页面应用时,有这么一个div: 1 2 3 <div class="ui segment" v-if="showEdit"> ... </div> showEdit初始值是false。我希望加载时不显示这个div。但是实际情况是,页面刷新时,这个页面会先出现,再很快的又消失了。给用户的体验是“页面闪了”一下。 搜索了一大圈,大部分的解决...

Java Spring Boot CORS问题的解决方案

Solve the problem in spring boot

最近调试另外一个同事开发的项目时,发现遇到了CORS问题。这是很常见的资源限制问题,初衷是限制不安全的跨域访问。但是在内部使用的项目中,这个安全限制不管是在开发过程中,还是跨系统调用中,都非常不方便。于是整理了两个切实有效的方案。 1. 网络转发法 这个是前端妹子提供的方案,这个方案原理是需将跨域访问的资源进行本地网络转发(或者rewrite)为自定义的开发域,规避浏览器的限制。 需要用到...