代码改变世界

应该具备的调试技能(java)

2016-05-01 13:40  chen.simon  阅读(500)  评论(0编辑  收藏  举报

------Java部分----------


1. tomcat在eclispe中怎样启动调试模式
2. 带有main方法的Java应用程序怎样启动调试模式
3. 调试在eclispe中的快捷键 F5 F6 F7 F8作用
4. eclipse的调试视图下各个窗口是做什么用的
5. eclipse的调试视图下各个窗口上的每个菜单、图标按钮是做什么用的
6. 在断点时,快速查看变量值的快捷键是什么
7. 在断点时,怎样在断点不走(断点停那不动),执行一个表示式的值。比如断点停在List<Person> personList = personService.queryByRole(roleName);这行代码处,如何在断点停在这里时候 触发personService.queryByRole(roleName)的执行
8. 如何在调试过程中改变变量的值,比如断点停在7中的代码处,但是程序运行到这个断点的时候roleName是"admin",但是调试时我想顺便在此测试下roleName 值是 manager的结果,如何在断点不走的情况下达到效果
9. 如何知道当断点停在7中的代码处,代码是怎么一路调用过来的(a调用b,b调用c)
10. 9的问题解决后,如何查看在上一级调用时,上一级调用过程中变量的值
11. 没有显式声明构造函数的类,如何打断点,能使得这个类new的时候被断点停住
12. 如何在实例变量存取(读写)的断点停住
13. 如何调试jar包中的代码
14. 在jar包没有源码的时候,如何通过反编译出来的代码进行调试
15. for(String xx : xxList){
    xxService.process(xx);
   
}
上述代码 如何打断点能使得在处理第500个元素的时候停住(假设列表有1500个元素),前提是不能改动代码
16. 15的代码,如何打断点,能使得xx为"test"的时候停住
17. IxxInterface xx = xxFactory.getXXService();
当上述代码的工厂创建出xx后,xx.toString()是被重写过的,你如何知道xx是哪个类的实例(假设IxxInterface是一个接口,有多个实现)
18. 如何在调试的时候查看Hashmap中的值
19. 如何在调试的时候查看ArrayList中的值
20. 如果tomcat部署在另一台机器上,如何在你的机器上接上去调试。
21. 常见异常的调试 比如出NullPointerException了,应该先确定什么。比如xx.getzz().getaa().handle();这行代码出空指针了,应该先确定什么

22. 如何在网络上找到jar包的源码包

-----------JS部分(chrome)-------------------


1. 找出类似java F5 F6 F7 F8作用的操作
2. 如何查看调用堆栈
3. 如何查看变量值
4. debugger;使用
其他需要学习的参见java部分

-----------CSS部分(chrome)-------------------


1. 如何在调试器中查看元素目前的样式
2. 如何在调试器中修改元素目前的样式

-----------网络部分(chrome)-------------------


1. 如何在调试器中查看当前页面到请求了多少url
2. 如何在调试器中查看单个网络请求的请求与响应数据(体和头)

-----------接口部分-------------------


1. 如何用sopaUI测试webserice接口
2. 如何用chrome的插件Advanced Rest Client测试http rest json的接口

-----------网络部分(wireshark)---------


1. 如何抓包(本地127.0.0.1不能抓包)
2. 如何筛选出目的地是特定ip地址的网络数据包
3. 如何筛选出源是特定ip地址的网络数据包
4. 如何导出http包中的数据

-----------环境、日志查看(linux)---------


1. 如何查看端口号是否被占用
2. 如何查看当前系统是哪个发行版本 
3. 如何查看某端口号被哪个进程占用
4. 如何查看某个程序的进程号是多少
5. 如何杀掉一个进程  -9 与不加选项有什么区别 (这5个问题 在部署环境时非常有用)
6. vi操作  如何用vi修改文件
7. vi操作  如何保存
8. vi操作  如何不保存
9. vi操作  如何一下子调到文件的最后一行(定位问题到环境上看日志 这个技能尤其有用,环境上日志一般比较大)
10. vi操作  如何一下子跳到文件的第一行
11. vi操作  如何向上查找causeby关键字(这也是定位问题最常用的)
12. vi操作  如何向下查找exception关键字
13. vi操作  如何不区分大小写查找
14. 如何在某个目录下(比如logs目录下有一堆xx1.log xx2.log xx3.log...),找出所有含有error的那行文字
15. 如何用tar 打一个tar.gz/tar包?解包呢
16. 如何打包zip 和解包zip (这两个问题 在定位问题 调试的时候 需要备份的时候就非常有用)
17. 如何用一条命令将一个文件夹整个 复制到另一台机器上 (两台机器都是linux 网络互通)
18. 如何在当前目录(包含字母中)查找特定文件名的文件