目录

java开发工具2你真的会用IDEA么中TOTOdebugSpring功能介绍

java开发工具(2)你真的会用IDEA么?(中)TOTO、debug、Spring功能介绍

上面一篇文章 .我们说了Idea的Struture功能和Favorites功能。这一期,针对java开发人员,我想做javaWeb开发的人员基本都是用Spring框架把,所以今天我将向你介绍Idea的 Spring , debug 和 TODO 功能。

一、TODO

我想TODO功能,你一定知道,而且经常使用,它的常规使用方式就是在代码行中的注释后面写上“TODO”即可,如下:

// TODO 等商品中心rpc出来后进行对接

这时候上面的 TODO 会高亮显示。

下面我将TODO的使用界面分为3块向你介绍:

https://i-blog.csdnimg.cn/blog_migrate/3a7fce1e40f7989d1288ca30201e2fe3.png#pic_center

  • TODO注释处
  • TODO列表栏
  • TODO底部展示按钮

1、TODO注释处

上面我们说了常规写TODO的方式,与TODO类似功能的还是 fixme ,同时与别人一起开发的时候,如果大家都使用TODO,我们一定想找到 自己所注释的TODO ,我们就分别针对这两种特殊情况看看要怎么处理。

  1. TODO与FIXME:fixme的用法与todo一样,就是在注释的地方把todo改成fixme。不过官方给出两种使用场景不同:
    1. todo:标记待处理的功能
    2. fixme:标识代码需要修正,甚至代码是错误的,需要修改

其实我们在使用的过程中很多时候不用区分那么清楚,能用todo说明要做的事情即可。

  1. 如果多人都是开发,怎么找到自己标记的TODO:此时你可以定义一个自己的todo,表明这个是自己专用的,后面搜索的时候可以通过过滤条件搜索你自己专用的,关于添加的方式,我们后面会进行介绍。

2、TODO底部展示按钮

上图的 标记3处 ,当你标记了TODO后,需要展示自己所标记的所有TODO,对未完善的工作进行完善,此时就是上面介绍的,位于idea底部的TODO按钮。

3、TODO列表栏

上图的 标记2处 ,里面有一个横栏和一个竖栏,关于横栏和竖栏的功能我进行一一介绍。

横栏

横栏展示图如下: https://i-blog.csdnimg.cn/blog_migrate/fb77452792f2cf655a3d2dc8a81518c1.png

  1. project:还记得之前我们说过怎么查看自己设置的TODO么? 本地做的修改,才会显示在这个project处,别人标注的TODO在此处不显示
  2. currentFile:展示你当前打开的文件中的TODO
  3. ScopeBased:这里会显示 所有的 TODO,你筛选指定目录下面的TODO
  4. DefaultChangelist:这里会展示你 未提交的代码 中的TODO
竖栏

竖栏展示图如下:

https://i-blog.csdnimg.cn/blog_migrate/bc8c500bb7981f383f74224d6b34a26c.png

竖栏的功能点如下:

  1. https://i-blog.csdnimg.cn/blog_migrate/3ebd224334ef5ff966e40b977db84fbf.png 是否展示模块路径
  2. https://i-blog.csdnimg.cn/blog_migrate/dc57329a2a1f1affbc40d5e79d5f0746.png 展示包路径
  3. https://i-blog.csdnimg.cn/blog_migrate/d65d9d84f320fe25936c6234e09c5518.png 展示包路径
  4. https://i-blog.csdnimg.cn/blog_migrate/62fae2c891731e40af4e8ce92f61e4b7.png 点击这个后,点击对应的TODO代码会跳转到对应类中
  5. https://i-blog.csdnimg.cn/blog_migrate/c4ae7e521e3de95508bd0ee8e3390f47.png 过滤,创建自己的TODO,或者过滤自定义的TODO
  6. https://i-blog.csdnimg.cn/blog_migrate/86add88fb9c01946fa32b2c7b0008e72.png 不会打开相应的类文件,直接在右侧展示相应的类代码

二、debug

debug功能一定是你每天都在用的功能,常用功能就不说了,现在说一些在特殊场景下使用的功能: debug自定义面板 , 多线程debug

1、debug自定义面板

https://i-blog.csdnimg.cn/blog_migrate/b00f9cdad506e8a50e619783d91030fe.png

上图中的6个标记,我一一介绍。

  1. Suspend:断点级别, ALL 表示对程序而言, Thread 表示到线程级别。

  2. Condition:断点进入的条件

  3. Log to console:在流程走到断点时打印一些信息。示例如下

    1. “Breakpoint hit” message:
    Breakpoint reached at org.springframework.boot.SpringApplication.run(SpringApplication.java:148)
    1. Stacktrace会打印堆栈信息。
  4. Evaluate and log:打印指定参数的值

  5. Remove once hit:断点走一次就放掉

  6. Disable until breakpoint is hit:只有进入了指定断电后才能进入此断点

  7. 后面还有3块,Class filters因为基本用不到,在这里就不进行说明了

2、多线程debug

很多时候,我们都是一个程序打一个断点就行了,在一些特殊的场景,如果需要多线程debug,要怎么使用呢?

下面我就写个多线程debug的示例,我的代码如下:

https://i-blog.csdnimg.cn/blog_migrate/98e36572bb48f4624bcf84737bf85462.png

  1. 可以看到我写了一个多线程的代码,开了两个线程,现在启动程序进行debug

  2. 此时看到线程1已经有断点了,此时怎么看线程2的断点呢?此时需要切换线程,切换线程地址如下: https://i-blog.csdnimg.cn/blog_migrate/d6bb872d67bdbede92d60eca1a63ff96.png

    上面标红处切换线程,线程切换后,效果图如下:

    https://i-blog.csdnimg.cn/blog_migrate/c48cb6a268c3ee314f39db60dda67999.png

三、Spring

在用Spring框架做开发的时候,有时候你需要查找某些bean有么有加载进去,某个bean与其他bean之间的依赖关系是怎么样的,这时候就需要用到这个Idea的Spring功能了。

Spring的位置,我在截图中标示如下:

https://i-blog.csdnimg.cn/blog_migrate/e7f28d37ccc7a56bcb78b9169df29565.png

  1. 上图中 1 标记处,展示所有的bean
  2. 标记 2 处,展示选择的bean的依赖关系,包括被哪些bean引用,以及引用了哪些bean,和引用的方式:@Resource,@Autowired,@import等
  3. 标记 3 处,有三个选择框,分别是Beans,MVC,Data, Beans 的功能上面已经介绍,MVC可以展示服务都提供了哪些接口以及接口所在的类。

总结

这篇文章中,介绍了三个功能分别是TODO、debug、Spring

  • TODO:标记现在没做,以后要做的事情
  • debug:自定义debug条件和多线程debug
  • Spring:展示Spring的bean之间的依赖关系和MVC请求路径。

重点

我的java开发工具专栏上线了,我会每周持续更新,告诉你java开发工具中,你可能不知道的细节,有兴趣的朋友可以关注我的专栏《java开发工具》,关注方式:点击博文左侧的分类专栏,点击java开发工具,进入页面点击关注即可,当我有文章更新,会第一时间通知你。

https://i-blog.csdnimg.cn/blog_migrate/3feb1ea9401e73cadef6ff6f83358b01.png .