<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[army的专栏]]></title><description><![CDATA[充满一颗希望强大的心]]></description><link>https://blog.youkuaiyun.com/kittyboy0001</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; kittyboy0001]]></copyright><item><title><![CDATA[自定义组件开发]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/123894476</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/123894476</guid><author>kittyboy0001</author><pubDate>Fri, 01 Apr 2022 12:14:24 +0800</pubDate><description><![CDATA[自定义组件]]></description><category></category></item><item><title><![CDATA[使用注解动态初始化类]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/122186596</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/122186596</guid><author>kittyboy0001</author><pubDate>Tue, 28 Dec 2021 10:27:03 +0800</pubDate><description><![CDATA[使用注解动态初始化类
两个方案
方案一
   // 实例化这个类
    Object obj = ApplicationContextHelper.instantiateBean(serviceName, c);
    // 获得这个类的所有方法
    Method[] methods = c.getMethods();

    // 循环查找想要的方法
    for (Method method : methods) {
        // 对于未使用注解method进行过滤
        ]]></description><category></category></item><item><title><![CDATA[在Java中使用OpenCV处理网络图片]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/115677421</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/115677421</guid><author>kittyboy0001</author><pubDate>Tue, 13 Apr 2021 20:28:05 +0800</pubDate><description><![CDATA[在Java中使用OpenCV处理网络图片实现方案maven依赖java代码
实现方案
在很早前写过一次使用方案，用于本地使用很方便。
https://blog.youkuaiyun.com/kittyboy0001/article/details/29447237
但是后面有需求要部署到服务器上，这种需要在本地再部署opencv包的方案就不好用了。所以调研了一个新的包。优点是所有的依赖都封装到jar包内部了，好用。这里记录下
maven依赖
        &lt;dependency&gt;
            ]]></description><category></category></item><item><title><![CDATA[SpringBoot生成数据并下载]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/115677284</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/115677284</guid><author>kittyboy0001</author><pubDate>Tue, 13 Apr 2021 20:10:28 +0800</pubDate><description><![CDATA[@RequestMapping(value = "/download", method = RequestMethod.GET)
    @ResponseBody
    public Object download(HttpServletRequest request, HttpServletResponse response, @RequestParam(value = "pid") Long pid) throws IOException {
        OutputStream os = ..]]></description><category></category></item><item><title><![CDATA[搭建 docker+nodejs 环境的前端自动化方案]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/111187874</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/111187874</guid><author>kittyboy0001</author><pubDate>Mon, 14 Dec 2020 22:55:15 +0800</pubDate><description><![CDATA[搭建 docker+nodejs 环境的前端自动化方案
使用nodejs + puppeteer 的前端自动化方案。为了在线上启动一套这种配置的应用，整了个docker+nodejs环境。
如下，把我的项目环境的docker文件拉了下来，记录下调试中依赖的包。因为不是前端工作者，解决这些依赖太难了，找了高手帮忙。记录下

#7u2使用：
FROM reg.docker.xx/xxx/xxx-nodejs:1.2
#注意：appName修改为自己的应用名
ENV APP_NAME testing


# 安装]]></description><category></category></item><item><title><![CDATA[java--NoSuchMethodError解决办法]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/88263462</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/88263462</guid><author>kittyboy0001</author><pubDate>Wed, 06 Mar 2019 23:26:22 +0800</pubDate><description><![CDATA[java–NoSuchMethodError解决办法
NoSuchMethodError
两种可能情况：1，确实没有这个类；2，有这个类，但是有类冲突
解决办法
1，在IDE中断点到出错的代码前面，然后开 debug
之后在调试器的变量查看中，添加 ( xxx为报错的类的全类名 )
xxx.class.getProtectionDomain().getCodeSource()

在调试器中就能查看...]]></description><category></category></item><item><title><![CDATA[angular.js 翻页组件]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/79317457</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/79317457</guid><author>kittyboy0001</author><pubDate>Mon, 12 Feb 2018 16:26:11 +0800</pubDate><description><![CDATA[

&amp;lt;table class=&quot;table table-bordered&quot;&amp;gt;
    &amp;lt;tr&amp;gt;
    &amp;lt;th&amp;gt;index&amp;lt;/th&amp;gt;
    &amp;lt;th ng-repeat=&quot;(x,y) in items[0]&quot;&amp;gt;{{ x }}&amp;lt;/th&amp;gt;
    &amp;lt;/tr&amp;gt;
    &amp;l]]></description><category></category></item><item><title><![CDATA[mybatis + pagehelper 数据库翻页]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/79317450</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/79317450</guid><author>kittyboy0001</author><pubDate>Mon, 12 Feb 2018 16:24:52 +0800</pubDate><description><![CDATA[mybatis + pagehelper 数据库翻页

Mybatis的一个插件，PageHelper，非常方便mybatis分页查询。

优点： 不需要自己在每个 mapper文件中写 limit x,x 这样的代码，引入插件调用pagehelper即可自动注入分页。

地址： https://github.com/pagehelper/Mybatis-PageHelper



1，引入jar...]]></description><category></category></item><item><title><![CDATA[selenium-grid AND docker化方案]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/78524289</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/78524289</guid><author>kittyboy0001</author><pubDate>Mon, 13 Nov 2017 20:25:43 +0800</pubDate><description><![CDATA[selenium-grid && docker化方案背景因为我们服务端维护了很多脚本，并且只有一台机器做自动化回归，加快回归的速度，发现了docker化方案，以此成文。selenium GridSelenium Grid 提供多系统、多浏览器的执行环境。注册 hubjava -jar selenium-server-standalone-3.6.0.jar -role hub...
11:20:33]]></description><category></category></item><item><title><![CDATA[java + selenium测试框架 （之校验优化，运行报错但不终止执行）]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/53540138</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/53540138</guid><author>kittyboy0001</author><pubDate>Fri, 09 Dec 2016 15:54:08 +0800</pubDate><description><![CDATA[引入SoftAssert报错但不终止执行——在自动化执行过程中，可能涉及到多个步骤的多个校验点。如果使用Assert 来做判断，报错后不会继续执行。但有时我们需要能够继续运行。   
解决问题的常见思路：自己封装Assert，将异常捕获，然后在最后输出报错信息。网上发现了一个testng已经做好的封装SoftAssert，亲测好用，更新一下]]></description><category></category></item><item><title><![CDATA[模拟Android App在后台被kill]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/51614299</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/51614299</guid><author>kittyboy0001</author><pubDate>Wed, 08 Jun 2016 16:52:53 +0800</pubDate><description><![CDATA[使用一个Android模拟器或者一台root过的Android手机.“` 
     adb shell ps | grep com.yourpackage.name 
     adb shell kill -9 PID]]></description><category></category></item><item><title><![CDATA[Android内存泄露排查]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/51418118</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/51418118</guid><author>kittyboy0001</author><pubDate>Sun, 15 May 2016 17:57:44 +0800</pubDate><description><![CDATA[Android内存泄露排查：使用conv-hprof转化生成的mat，然后在histogrm页面中过滤，选择incomming reference,然后去掉非强引用项目。]]></description><category></category></item><item><title><![CDATA[groovy学习笔记]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/51020164</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/51020164</guid><author>kittyboy0001</author><pubDate>Wed, 30 Mar 2016 22:40:37 +0800</pubDate><description><![CDATA[groovy学习笔记
http://www.groovy-lang.org/documentation.html]]></description><category></category></item><item><title><![CDATA[快速获取网页的部分元素（不用selenium，用js）]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/50950423</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/50950423</guid><author>kittyboy0001</author><pubDate>Mon, 21 Mar 2016 21:30:00 +0800</pubDate><description><![CDATA[背景网页是表格结构，现在需要快速从网页上获取一些元素的内容。最开始的时候考虑使用selenium，后来发现我本地代码太老了，运行不起来。突发奇想，在页面控制台里输入js获取元素页面结构表格结构，比selenium程序快多了]]></description><category></category></item><item><title><![CDATA[解决[INSTALL_FAILED_UID_CHANGED]无法安装包问题]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/50856495</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/50856495</guid><author>kittyboy0001</author><pubDate>Fri, 11 Mar 2016 15:37:17 +0800</pubDate><description><![CDATA[[INSTALL_FAILED_UID_CHANGED]问题出现在某次删除了天猫客户端后，无法重新安装上了，提示报错如下：$ adb install 100000\@tmallandroid_5.16.0.apk     4820 KB/s (30783001 bytes in 6.236s)
    pkg: /data/local/tmp/100000@tmallandroid_5.16.0.a]]></description><category></category></item><item><title><![CDATA[git切换/重新关联分支]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/48102433</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/48102433</guid><author>kittyboy0001</author><pubDate>Sun, 30 Aug 2015 10:30:19 +0800</pubDate><description><![CDATA[1,重新跟踪远程文件：直接修改git remote origin set-url URL，先删除再添加删除git remote rm origin ，添加git remote add origin https://xxx.git 
2,git branch --set-upstream-to=origin/<branch> modules 能够建立关联]]></description><category></category></item><item><title><![CDATA[测量webView页面性能技术方案]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/48011193</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/48011193</guid><author>kittyboy0001</author><pubDate>Wed, 26 Aug 2015 21:51:35 +0800</pubDate><description><![CDATA[测量webView页面性能（使用UiAutomator和性能监控工具）背景：俺双11会场测试的总指挥想要确认，在猫客的webview中填多少坑位合适，所以进行了如下操作并获取性能：1，进入webview页面滑动到底部，然后再快速回到顶部， 
2，点击顶部的banner进入下级页面， 
3，页面深度3层，即重复1，2该操作3次。   
采用的技术需求拆分为2部分，webview控制脚本和性能监控。]]></description><category></category></item><item><title><![CDATA[Android帧率测试]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/47983159</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/47983159</guid><author>kittyboy0001</author><pubDate>Tue, 25 Aug 2015 20:44:08 +0800</pubDate><description><![CDATA[使用adb shell dumpsys 提供的SurfaceFlinger和gfxinfo获取帧率数据。]]></description><category></category></item><item><title><![CDATA[使用ddmlib实现android 性能监控]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/47317855</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/47317855</guid><author>kittyboy0001</author><pubDate>Thu, 06 Aug 2015 15:43:10 +0800</pubDate><description><![CDATA[1，使用ddmlib实现android 性能监控,2原理：cpuadb shell dumpsys cpuinfo packageNamememoryadb shell dumpsys meminfo   packageName流量cat /proc/uid_stat/uidxxx/tcp_rcv 
cat /proc/uid_stat/uidxxx/tcp_snd]]></description><category></category></item><item><title><![CDATA[通过JSON替换的方式实现app返回数据MOCK]]></title><link>https://blog.youkuaiyun.com/kittyboy0001/article/details/46005887</link><guid>https://blog.youkuaiyun.com/kittyboy0001/article/details/46005887</guid><author>kittyboy0001</author><pubDate>Tue, 26 May 2015 11:34:47 +0800</pubDate><description><![CDATA[本地MOCK
======
##  背景
在app的测试时，经常需要对返回的字段做替换。通常我们采用的方案是通过fiddler/charles抓包，然后替换请求。但是，由于修改了网络库，无法再继续抓包，所以产生了这种需求：对收到的请求进行替换。


## 方案
在收取请求后，在解析JSONObject 之前，进行数据的修改。修改完成后再进行正常的数据处理。


### 方案评估]]></description><category></category></item></channel></rss>