Liang Guizhao, Ms. Chen, sail, DiaoZhengXin | author (study group)

I. Official tools

IntelliJ IDEA comes with many tools installed by default, such as Git Integration, Maven Integration, Markdown Support, SSH Remote Run, etc. There are a lot of useful but little-known tools.

1. REST client

In the daily development process, we are more or less involved in testing the API interface. For example, some people use Postman for Chrome or RestClient for Firefox. In fact, these tools are one of the most effective ways to test API interfaces, and I’ve been using Postman for API testing before. Today, I recommend another handy gadget to help you quickly test your API. This tool is the Editor REST Client for IDEA. The Editor REST Client for IDEA was supported in IntelliJ IDEA 2017.3, and many features were added in 2018.1. In fact, it is an HTTP Client plug-in for IntelliJ IDEA. In detail using document, reference: http://blog.720ui.com/2018/restclient_use/

2. UML Support

If you need to explore the source code, the built-in UML Support plug-in is a good way to look at class inheritance relationships. In detail using document, reference: https://www.jetbrains.com/help/idea/class-diagram.html

To be continued…

Second, market plug-in

  • Ali code protocol detection

  • Shortcut Key Promoter X

  • Code annotation plug-in: Lombok

  • Code generation tool: CodeMaker

  • Unit test test generator: JUnitGenerator

  • Mybatis plugin Free Mybatis plugin

  • Maven Helper: Maven Helper

  • JSON to domain object tool: GsonFormat

  • Domain object to JSON tool: POJO to JSON

  • SequenceDiagram generation tool: SequenceDiagram

  • String Manipulation: String Manipulation

  • Code Coloring tool: Rainbow Brackets

  • RESTful Service development tools: RESTful Toolkit

  • Log tool: Grep Console

  • Generate object set method: GenerateAllSetter

  • Redis Visualization: Iedis

  • K8s tool: Kubernetes

  • Translation tools: Translation

1. Ali code protocol testing

“Alibaba Java Development Manual” is the collective wisdom crystallization and experience summary of Alibaba Group’s technical team, which has undergone many large-scale first-line actual combat tests and continuous improvement, systematically organized into a book. Of course, the specification is only a reference, and we need tools to help us achieve real-time detection. At present, Alibaba Java Code Guidelines plug-in realizes 53 rules in the development manual, most of which are implemented based on PMD, among which 4 rules are implemented based on IDEA, and real-time detection function is realized based on IDEA Inspection. Some rules implement the Quick Fix function. At present, plug-in detection has two modes: real-time detection and manual trigger. In detail using document, reference: https://github.com/alibaba/p3c/blob/master/idea-plugin/README_cn.md

  • Alibaba Java development manual (full version) : https://github.com/alibaba/p3c/blob/master/ alibaba Java development manual (detailed). PDF

  • GitHub : https://github.com/alibaba/p3c

  • The IDEA of plug-in address: https://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines

Similar plug-ins include FindBugs and CheckStyle.

2. Shortcut Tool: Key Promoter X

The Key Promoter X is a shortcut Promoter, so if we replace the mouse Promoter with the Key Promoter X, we will run the Key Promoter. In detail using document, reference: https://plugins.jetbrains.com/plugin/9792-key-promoter-x

3. Code annotation plug-in: Lombok

The use of lombok, reference: https://projectlombok.org/. We need to introduce the binary library into our code and then install the Lombok plug-in.


     

    <dependency>

      <groupId>org.projectlombok</groupId>

      <artifactId>lombok</artifactId>

    <version> Latest version number </version>

    </dependency>

Copy the code

4. Code generation tool: CodeMaker

During development, repetitive code is often written by hand. CodeMaker is now available to define Velocity templates to support custom code templates to generate code. Currently, CodeMaker comes with two templates. Model: Generate a class with similar properties from the current class to automatically generate the corresponding domain class for the persistent class. Converter: This template requires two classes as input contexts for automatically generating the domain class and the transformation class for the persistent class. For details, please refer to https://github.com/x-hansong/CodeMaker

5. Unit test Test generator: JUnitGenerator

Unit testing is essential! We can use the JUnitGenerator plug-in to create unit tests automatically. We can customize the unit test output code using the Velocity template provided. If a unit test is created where it already exists, the user is prompted to overwrite or merge. Merge operations allow users to selectively create object file content. In detail using document, reference: https://plugins.jetbrains.com/plugin/3064-junitgenerator-v2-0

6. Mybatis plugin: Free Mybatis plugin

Now, MyBatis framework has occupied half of the country. As a result, more and more plugins and tools surround MyBatis. The Free Mybatis Plugin is very convenient to jump between Mapper interface and XML file. In detail using document, reference: https://plugins.jetbrains.com/plugin/8321-free-mybatis-plugin. The Mybatis Plugin is also available for a fee.

There are many other tools for Mybatis, such as Mybatis – log-Plugin and CodeHelper.generator. In addition, non-IDEA tools include: Mybatis paging plug-in Mybatis-PageHelper, Mybatis code generation tool Mybatis- Generator, etc. Address: http://www.mybatis.org/generator/

7. Maven Helper: Maven Helper

If jar packages introduced by Maven have conflicts, you can use the Maven Helper plugin to help analyze them. In detail using document, reference: https://plugins.jetbrains.com/plugin/7179-maven-helper

8. JSON to domain object tool: GsonFormat

During development, we may encounter situations where jSON-formatted strings are converted into entity-class parameters. This plug-in can automatically generate entity-class parameters from jsonObject-formatted strings. In detail using document, reference: https://github.com/zzz40500/GsonFormat, then, how to use? We can use GsonFommat’s shortcut keys, default Option + S (MAC), Alt + S (Win) to modify the shortcut keys in the following way. Or click Generate in the toolbar to evoke the Generate tool.

9. Domain object to JSON tool: POJO to JSON

For testing purposes, we need to convert simple Java domain objects into JSON strings that can be easily simulated using Postman or curl. In detail using document, reference: https://plugins.jetbrains.com/plugin/9686-pojo-to-json

10. SequenceDiagram generation tool: SequenceDiagram

Sometimes we need to comb through the business logic or read the source code. From this, we need to understand the entire invocation link, and the reverse generation of UML sequence diagrams is a strong requirement. The SequenceDiagram plug-in is a great one. In detail using document, reference: https://plugins.jetbrains.com/plugin/8286-sequencediagram

String Manipulation tool: String Manipulation

The String Manipulation plug-in provides very rich String Manipulation tools, For example, name substitution ((camelCase, kebab-lowercase, kebab-uppercase, snakecase, SCREAMINGSNAKE_CASE, dot. Case, words lowercase, Words Capitalized, PascalCase, etc. In detail using document, reference: https://plugins.jetbrains.com/plugin/2162-string-manipulation

Code Coloring tool: Rainbow Brackets

Rainbow Brackets can be matched with the same color and highlight the selected area code. In detail using document, reference: https://plugins.jetbrains.com/plugin/10080-rainbow-brackets

In fact, once the code is colored, it’s very easy to read. A similar tool is Grep Console to customize the Console output color.

13. RESTful Service development tool set: RESTful Toolkit

During development, the RESTful Toolkit provides a set of assistant tools for RESTful service development and provides the following functions:

Jump directly to the corresponding method definition based on the URL (Ctrl \ or Ctrl Alt N); Provides a Services Tree display window; A simple HTTP request tool; Useful functionality has been added to the request method: copy generates the URL; , copy method parameters… Other features: Add Convert to JSON function on Java class, format JSON data (Windows: Ctrl + Enter; Mac: Command + Enter).

In detail using document, reference: https://plugins.jetbrains.com/plugin/10292-restfultoolkit

14. Log tool: Grep Console

Reference: https://plugins.jetbrains.com/plugin/7125-grep-console

Different levels of logs are distinguished by color

Highlighting the log

Easy log retrieval

15. Generate object set method: GenerateAllSetter

In development, it is sometimes possible to copy attributes between objects using utility classes such as BeanUtil, but sometimes manual assignment is required. With GenerateAllSetter, you can generate all the set statements of an object in one click.

16. Redis visualization: Iedis

Reference: https://plugins.jetbrains.com/plugin/9228-iedis USES reference: https://codesmagic.com/iedis/userguide/getting-started to add and remove check change and convenient execution using the command line.

17. K8s tool: Kubernetes

Reference https://plugins.jetbrains.com/plugin/10485-kubernetes supports editing Kubernetes resource file, as follows: You can easily view the default values of various placeholder values in YAML, and easily link to the value location.

18. English Translation tools: Translation

What is the sluttiest operation? Fan shared a set of “semi-Chinese programming” on the group: when it comes to naming variables, write them in Chinese first, and then translate and replace them with English in one click. This is efficient and accurate. In detail using document, reference: https://plugins.jetbrains.com/plugin/8579-translation

>>> Join the “back end circle” family (click to join)<<<

More wonderful articles, all in the “server-side thinking”!

Recommended reading

  • The Final version of Java Interview

  • How to design code layering properly

  • Beginner’s Guide to microservices design

  • Good API design guidelines

  • HTTPS project field guide

  • Common performance monitoring guide

  • The core idea of ensuring the availability of four nines

  • An application of CPU high blood investigation process

  • Explore the whole process of Redis timeout culprit analysis

  • Find out who is responsible for the weird memory growth in Redis

  • How to strengthen your back-end services

  • Analysis of message middleware selection

After reading, quickly click a “nice ha

Left left left