Spring中EmptyResultDataAccessException异常产生的原理及处理方法 Spring中使用JdbcTemplate的queryForObject方法,当查不到数据时会抛出如下异常: org.springframework.dao.EmptyResultDataAccessException: Incorrect result size: expected 1, actual 0 使用Debug进行调试时,发现是在DataAccessUtils的requiredSing…
调试寄存器 原理与使用:DR0-DR7 下面介绍的知识性信息来自intel IA-32手册(可以在intel的开发手册或者官方网站查到),提示和补充来自学习调试器实现时的总结. 希望能给你带去有用的信息. (DRx对应任意的一个调试寄存器.LENn对应任意一个长度.Ln对应任意一个局部置位) DR0-DR7可以直接被读写操作(MOV 指令之类的,DRx可以是源操作数也可以是目的操作数) 但是,DRx的访问是需要一定权限的.比如你用MOV操作的话,你需要在实地址模式,系统管理模式(smm)或者在保…
在Win32中自带了一些API函数,它们提供了相当于一般调试器的大多数功能,这些函数统称为Win32调试API(Win32 Debug API).利用这些API可以做到加载一个程序或捆绑到一个正在运行的程序上以供调试:可以获得被调试的程序的底层信息,例如进程ID.进入地址.映像基 址等:甚至可以对被调试的程序进行任意的修改,包括进程的内存.线程的运行环境等. 简而言之,读者可以用这些API写一个进程调试器.就像现在流行的调试器Visual C++调试器.WinDBG.OllyDbg等一样.当然除…
本文转载自Java 动态调试技术原理及实践 导语 断点调试是我们最常使用的调试手段,它可以获取到方法执行过程中的变量信息,并可以观察到方法的执行路径.但断点调试会在断点位置停顿,使得整个应用停止响应.在线上停顿应用是致命的,动态调试技术给了我们创造新的调试模式的想象空间.本文将研究Java语言中的动态调试技术,首先概括Java动态调试所涉及的技术基础,接着介绍我们在Java动态调试领域的思考及实践,通过结合实际业务场景,设计并实现了一种具备动态性的断点调试工具Java-debug-tool,显著…
近期,Google开源了强大的自动化构建工具Bazel. 正好博主近期在使用china版的Bazel--腾讯自主开发的Blade,所以准备跟大家分享一下Google Bazel这个分布式构建系统的原理和使用方法. 以下是分享的目录: Google Bazel原理篇: Google分布式构建软件之第一部分:访问源代码 Google分布式构建软件之第二部分:构建系统如何工作 Google分布式构建软件之第三部分:分布式执行构建步骤 Google分布式构建软件之第四部分:分发构建结果 Bazel工具使…
初涉IPC,了解AIDL的工作原理及使用方法 今天来讲讲AIDL,这个神秘的AIDL,也是最近在学习的,看了某课大神的讲解写下的blog,希望结合自己的看法给各位同价通俗易懂的讲解 官方文档:http://developer.android.com/guide/components/aidl.html 一.What is AIDL?(什么是AIDL) AIDL:Android Interface Definition Language (Android接口定义语言) 首先,我们要知道,进程1和进…
首页 新随笔 订阅 管理 随笔 - 7  文章 - 0  评论 - 0 UAC 实现原理及绕过方法   目录 0x01 UAC 实现方法(用户登陆过程)0x02 UAC 架构0x03 触发UAC0x04 UAC 虚拟化0x05 UAC 逆向分析1x01 无文件白名单提权机制1x02 DLL 文件注入提权1x03 0day [TOC] 0x00 UAC 工作流程 UAC 是微软在 Windows Vista 以后版本引入的一种安全机制, 通过 UAC,应用程序和任务可始终在非管理员帐户的安全上下文…
Atitit web remote远程调试的原理attilax总结 Jvm是vm打开一个debug port,然后ide先连接..然后执行url,就会vm会与ide沟通.. Php的xdebug port 9000是在phpstorem打开的...如果执行url,也会启动debug..必须要预先连接ide和apache才可..使用phpstorm打开debug page即可,预先连接好.然后就xdebug就可以与ide打开的9000 debug port连接调试了.. 连接建立 对于有静态IP.…
简介: 本文介绍如何在 Android 检测 Cursor 泄漏的原理以及使用方法,还指出几种常见的出错示例.有一些泄漏在代码中难以察觉,但程序长时间运行后必然会出现异常.同时该方法同样适合于其他需要检测资源泄露的情况. 最近发现某蔬菜手机连接程序在查询媒体存储(MediaProvider)数据库时出现严重 Cursor 泄漏现象,运行一段时间后会导致系统中所有使用到该数据库的程序无法使用.另外在工作中也常发现有些应用有 Cursor 泄漏现象,由于需要长时间运行才会出现异常,所以有的此类 bu…
回调(callback)在我们做工程过程中经常会使用到,今天想整理一下回调的原理和使用方法. 回调的原理可以简单理解为:A发送消息给B,B处理完后告诉A处理结果.再简单点就是A调用B,B调用A. 那么是如何实现的呢?一般而言,处理消息的类是唯一的,而发送消息的类却是各种各样的,所以一般的做法是将回调方法做成一个接口,不同的发送者去实现该接口,并且把自己的接口实现类的对象在发送消息时传递给消息处理者. (现在不太方便画图,之后再补上图) 现在以一个CS结构的示例来说明回调的过程: Client类:…