官网解释: This class defines a clone() method but the class doesn't implement Cloneable. There are some situations in which this is OK (e.g., you want to control how subclasses can clone themselves), but just make sure that this is what you intended. 什么代…
官网解释: This method contains a redundant check of a known non-null value against the constant null. 这种方法包含了一个称为非空对空值的不断重复检查. 什么代码会引起这个问题呢?先看下面: public static boolean isNull(Object o) { if (null == o) return null == o; if (o instanceof String) { return…
官网解释: This code seems to be using non-short-circuit logic (e.g., & or |) rather than short-circuit logic (&& or ||). In addition, it seem possible that, depending on the value of the left hand side, you might not want to evaluate the right han…
Fine报表权限流程分析记录 URL访问三种类型的报表:第一个:BI报表 例如: http://192.25.103.250:37799/WebReport/ReportServer?op=fr_bi&cmd=bi_init&id=50&openFromShare=true&systemManager=true&createBy=-999 http://192.25.103.250:37799/WebReport/ReportServer?op=fr_bi&…
src:http://www.codeweblog.com/postgresql%E7%9A%84%E5%9F%BA%E7%A1%80%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E5%88%86%E6%9E%90%E8%AE%B0%E5%BD%95/ 前期,我参与了公司开发的数据库数据迁移工具的工作,以及之前的对Page的分析记录,在此进一步将数据库的数据类型做一下分析记录. 一.数据库系统表pg_type PostgreSQL的所有数据类型都存储在系统表pg_ty…
前言 前两周在把兄弟公司的几个服务部署到我们公司测试环境服务器的时候又遇到了不少问题,因为是前后端分离的项目,所以这次也同样遇到了跨域问题,解决方式也跟上一回的不一样,这里就再来分析记录一下. 登录验证码在本地获取正常但部署到服务器报空指针异常问题 问题描述: 登录页面的验证码,在本地运行项目的时候可以正常获取和显示,但部署到测试环境服务器上验证码图片却无法显示出来,如下图所示: 追了一下后端服务器日志,发现后端报空指针异常,报错信息如下所示: java.lang.NullPointerExce…
querySelector和querySelectorAll是W3C提供的新的查询接口 目前几乎主流浏览器均支持了他们.包括 IE8(含) 以上版本. Firefox. Chrome.Safari.Opera. 万能的sizzle在高版本的浏览器中复杂的选择器尽量走querySelectorAll,前提是这个匹配的节点没有兼容问题 从IE8开始虽然支持querySelectorAll的API,但是会有各式各样的BUG,所以sizzle拿rbuggyQSA用来记录这个BUG问题 if ( supp…
Java GC记录 近来.项目没有特别忙碌的时候,抽空看了下生产环境的项目运行状况,我们的项目一直运行速度不是很快,偶尔会出现卡顿的现象,这点给人的体验感觉也就不那么好了.先抛个测试环境截图(生产环境不方便,单参数设置类似): 由上图可以看出,系统分配的堆内存4G,非堆内存最大2G,理论上.这个数值对于一般的项目绝对是够用的了:然鹅.并非如此,事实情况确是: 对于系统GC的记录统计为: 到这里.似乎还是看不出为何会产生这么多次的Full GC(大神应该已经察觉出上面的问题),再来看一张图: 似乎…
本文是一些记录和想方法,分析大部分来自 http://www.iocoder.cn/Eureka/ 感兴趣的可以去看一下.…
lastlog 记录用户最后一次登录情况 只有root最近登录过 lastlog -u 用户名或者uid uid 直接在passwd文件中的低三位可以看到 lastb 记录用户用户登录失败的用户记录,包括用户名ip.文件位于/var/log/btmp lastb |sort -n | uniq -c | sort -n -r | head -6 这个可以直接按照次数排列出来,统计爆破ssh的ip次数前六位 如果想直接统计ip的话,下面俩个命令都可以 lastb |awk '{ print $3}…
词法分析器(tokenize)? 词法分析器又称扫描器.词法分析是指将我们编写的文本代码流解析为一个一个的记号,分析得到的记号以供后续语法分析使用. sizzle引入了tokenize这个概念,意义? jQuery的选择器,实现了css1-css3的API,但是ECMAScript低版本的API中本身没有针对这种CSS的处理API,在IE8以上就引入了querySelectorAll 各种浏览器实现还有差异,这里不是主题,我们看如果是低版本的接口要如果处理复杂的CSS选择器 首先面临的就是要对复…
我一直是QQ音乐的用户,最近想做一个应用,想用QQ音乐的API,搜索了很久无果,于是就自己分析QQ音乐的API. 前不久发现QQ音乐出了网页版的,是Flash的,但是,我用iPhone打开这个链接的时候,它居然自动跳转到一个地址了,居然跳转到http://soso.music.qq.com/ipad/player.html,看到这个地址,里面有个“ipad”我的第一反应是“难道是HTML5和JS写的”,我在iPhone上试用了一下,发现确实能用.由此得出,这个iPad版的QQ音乐不是Flash,…
最近朋友去面试被问了些hashmap相关的问题,hashmap的初始容量啊,什么操作最耗时等,之前看过hashmap的源码,正好这里也在总结下. 主要围绕下面几个点: HashMap是由数组+链表(jdk8 升级为红黑树)结构实现 HashMap 在第一次put的时候才会去分配内存(ArrayList也是在第一次add的时候) HashMap 默认数组大小是16 HashMap 每次扩容之后大小都为2的倍数 HashMap在达到容量阀值(threshold=capacity*loadFactor…
0x1 PDF是什么 PDF(便携式文件格式,Portable Document Format)是由Adobe Systems在1993年用於文件交换所发展出的文件格式. 因为PDF的文件格式性质广泛用于商业办公,引起众多攻击者对其开展技术研究,在一些APT(Advanced Persistent Threat)攻击中.针对特定目标投递含有恶意代码的PDF文档,安全意识薄弱的用户只要打开PDF文档就会中招. 0x2 PDF解析工具 PdfStreamDumper : 这是一款可以对恶意的PDF文…
遇到一个crash,log如下: BUG: unable to handle kernel NULL pointer dereference at (null) IP: [<ffffffff81166504>] s_show+0xe4/0x330 PGD PUD 12666d8067 PMD Oops: [#] SMP last sysfs file: /sys/devices/pci0000:/:::::/expander-:/port-::/end_device-::/target0::/…
1. the most difficult bug u fixed and how u solved this problem.. 解决过很多疑难bug.最困难的分为两类.一类是并发.多线程类的,因为bug的出现依赖于一定的时序,难以复现:看到的是被破坏的现场.线程安全类问题很多发. 另一类是对外部系统有依赖的,很多错误出在依赖的框架或者库里面,而这时候需要根据框架和库报出来的log来分析问题,很多时候报出来的不一定准确,搜索引擎也找不到解决方案.要去读一读源码. 还有一种是缓存类的bug.这个…
Findbugs是一个静态分析工具,它检查类或者JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题.Findbugs自带检测器,其中有60余种Bad practice,80余种Correctness,1种 Internationalization,12种Malicious code vulnerability,27种Multithreaded correctness,23种Performance,43种Dodgy. 常用的Findbugs分类: 我来简单介绍一下这几类bug,当然有些你…
环境搭建: 漏洞影响版本: fastjson在1.2.24以及之前版本存在远程代码执行高危安全漏洞 环境地址: https://github.com/vulhub/vulhub/tree/master/fastjson/vuln 正常访问页面返回hello,world~ 此时抓包修改content-type为json格式,并post payload,即可执行rce 此时就能够创建success文件 前置知识: 研究这个漏洞之前,先熟悉一下阿里的这个fastjson库的基本用法 package m…
0x00  前言 今天早上看到了国内几家安全媒体发了Joomla RCE漏洞的预警,漏洞利用的EXP也在Github公开了.我大致看了一眼描述,觉得是个挺有意思的漏洞,因此有了这篇分析的文章,其实这个漏洞的分析老外在博客中也写过了,本质上这是一个Session反序列化导致的RCE漏洞,由于Joomla对于Session的特殊处理,导致漏洞触发并不需要登陆.因此成了Pre-auth RCE. 0x01 漏洞环境搭建 代码下载: https://github.com/joomla/joomla-cm…
自己边读变加了一些注释,理解了一下seajs3.0.0工作的流程.正则没有一个个去理解,插件模块也没看, 以后有时间了可以补充完整~ 事件系统中事件队列的获取&定义方法 var list = events[name] || (events[name] = []) 以前自己写都是 if(!events[name]){ events[name]=[]; } var list=events[name]; 囧 加载模块文件的方法 webworker环境下加载模块文件 获取seajs的加载路径: var…
部分IE游览器下无法通过getAttribute取值? <form name="aaron"> <input type="text" name="aaron"/> </form> alert(form.getAttribute('name')); IE6.7中错误 alert(form.getAttributeNode('name').nodeValue); 看看jQ的解决方案 能力判断 support.att…
源码部分 通过Sizzle.attr匹配出值 然后通过表达式刷选计算 "ATTR": function( name, operator, check ) { return function( elem ) { var result = Sizzle.attr( elem, name ); if ( result == null ) { return operator === "!="; } if ( !operator ) { return true; } resu…
<form> <label>Name:</label> <input name="name" /> <fieldset> <label>Newsletter:</label> <div name="newsletter" /><p>1<p</div> <div name="letter" /><p nam…
可见性 :hidden :visible 隐藏对象没有宽高,前提是用display:none处理的 jQuery.expr.filters.hidden = function( elem ) { // Support: Opera <= 12.12 // Opera reports offsetWidths and offsetHeights less than zero on some elements return elem.offsetWidth <= 0 && elem…
首先,看这一段代码: class A(object): x = 1 gen = (lambda t: (t for _ in xrange(10)))(x) if __name__ == '__main__': print(list(A.gen)) 打印出: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] 装饰器学习: 看这篇文章应该就可以了:<Python装饰器学习(九步入门)> 里面提到 http://www.cnblogs.com/huxi/archive/2011/03/…
tomcat的catalina.out日志报错如下: Exception in thread "http-bio-8081-Acceptor-0" java.lang.OutOfMemoryError: unable to create new native thread at java.lang.Thread.start0(Native Method) at java.lang.Thread.start(Thread.java:714) at java.util.concurrent…
首先看代码: class A { use T { T::say as aTsay; } public function say() { echo 'a__class__:' . __CLASS__ . '<br>'; echo 'a get_class:' . get_class() . '<br>'; echo 'a get_class this:' . get_class($this) . '<br>'; echo 'a get_called_class:' . g…
相关代码 UObject::CallFunctionByNameWithArguments  ExecuteConsoleCommand << 配置.ini[???.类名]    //要先从编辑器里将配置导出,再找.可能父级也有配置相关属性类属性 [模块名]模块可配置变量 例:OnlineSubsystemModule -------------------------------------------------------------------- unrealEngine.h r.se…
1.模块定义 (function () { var modules = {}; // Stack of moduleIds currently being built. var requireStack = []; // Map of module ID -> index into requireStack of modules currently being built. var inProgressModules = {}; var SEPARATOR = '.'; function bui…
我们使用JdbcTemplate时,调用的query方法为: public <T> List<T> query(String sql, @Nullable Object[] args, RowMapper<T> rowMapper) 把我们需要映射的自定义java类型传入到T中,也就是T的实际值为我们的类型,假设为User.我们传递的是RowMapper<User>,返回List<User> 该方法调用到 public <T> T q…