logback 按时间和大小生成日志不生效的问题
因为运维要求单日志文件占磁盘空间不能太大,而我们这个本身的日志是按天来分割的, 所以现在得加上在原来的基础上再加上按文件大小分割,本来这是一个很简单的需求,改下日志配置就好了。 按照官方的文档,按时间和大小生成日志: ``` <appender name="ScanRollingFile" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/applogs/appweb/common.log</file> <encoder> <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p [%thread] %c.%M \(%F:%L\) %n%msg%n</Pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <FileNamePattern>/applogs/appweb/common.%d...

2019-03-26 09:36

类型:工作 标签:logback,java

关于多边形和点的一些有趣的计算方式
> 闲来无事看到两个数学题目,想着怎么用程序来计算结果 1. 给出N个点连接成的多边形,这个多边形面积怎么求,如果是三角形的话可以用海伦秦九韶公式来快速的得到任意三角形的面积,如果是多边形的话怎么处理,翻阅了很多资料都没讲到点上。 有一个算法叫做鞋带算法或者鞋带公式可以快速的得到多边形的面积,用这种方式可以很快速的得到结果,不需要太多花里胡哨的计算。 链接: https://en.wikipedia.org/wiki/Shoelace_formula 2. 再给出一个点,如何判断点在多边形内。 我记得以前看过一篇文章,云风写的 https://blog.codingnow.com/2018/11/float_precision_problem.html ,这是判断三角形的。 如果要判断一个点是否在多边形内,只需要把点生成一条射线,让它经过多边形,如果是偶数则说明点在多边形外面,否则就是在里面。

2019-03-14 11:17

类型:工作 标签:多边形,算法

JAVA 中动态编译 JAVA 代码
公司项目有个小需求,需要在java代码中读取mysql或者其他渠道来的java代码来执行一段业务逻辑,也就是动态编译然后执行java代码。 常见的这种需求有'热部署'。 > 在业务系统中动态编译执行java代码是很危险的操作,搞不好容易把自己搭进去。 为了让代码不从java文件中加载,直接从各种渠道得到字符代码,从字符中加载,需要自己继承 `SimpleJavaFileObject` 类来实现。 ``` public class GenericJavaFileObject extends SimpleJavaFileObject { final private String content; public GenericJavaFileObject(String className, String content) throws Exception { super(URI.create("string:///" + className.replace('.', File.separatorChar) + JavaFile...

2019-01-24 15:09

类型:工作 标签:动态编译,java

ArrayList 和 LinkedList 的插入删除性能差距到底有多大
> 从算法角度来看,ArrayList是便于做查询的容器,LinkedList适合插入删除。如果在一个LinkedList做查询的话只能从头指针或者尾指针开始找起,这个在学链表的时候都知道。ArrayList如果用来删除或者插入操作的话,假设删除第一个元素,那么后面的元素要依次往后移,复杂度是很恐怖的。 前段时间和同事争论ArrayList和LinkedList的底层到底是不是这么一回事,晚上抽空写了段简单的代码验证了下。 ``` package net.yuxianghe; import java.util.ArrayList; import java.util.LinkedList; import java.util.List; /** * Created by hxy on 2017/7/11. */ public class TestList { public static void main(String[] args) { long start = System.currentTimeMillis(); int max = 1000000...

2019-01-24 15:08

类型:工作 标签:ArrayList,LinkedList,java

破解天眼查 token,_utm,paaptp 的过程
#### 记录破解天眼查接口的token,_utm,paaptp三个cookie值的过程 > 当发这篇文章的时候,该网站已经放弃了接口加密,我也终于敢把文章发表出来聊一聊接口加密破解的这一过程。 使用token和_utm可以去请求加密的接口,paaptp暂时不清楚它们后端用来做什么判断,很可能是这篇文章结尾说的那个问题导致的后端没有去做校验,或者这个仅仅是用来做加密接口监控用的。。。 首先在本地搭建好nginx,将它请求的js服务器ip通过修改host映射到本地,然后代理服务器打开将js请求都到本地下载好的js文件里,这样就可以自己在js里调试它的加密代码,下载过来的它的js是压缩后的,随便找个解压的网站解压一下就格式化好了可以正常看了,其实不管怎么加密,只要涉及到前后端这样交互就在js里找到它的加密方法,不外乎各种跳转各种转换各种混淆,只是复杂程度不一样罢了。 token和_utm参数的的破解在网络上可以找到,百度下就能找到有几个热心网友的解决方案,要想拿到token必须得想到转asc码,要想拿到_utm必须得找到正确的字典。 这两个参数非常简单,重点是网络上的破解方式都是有缺陷的...

2019-01-24 15:07

类型:工作 标签:天眼查,破解

我与我周旋久 独孤影 开源实验室