incoder Help

Incoder Code Generation

Incoder is a plugin developed by Netwisd Company for JetBrains IDEA, aimed at facilitating code generation within IDEA. It supports code generation for single tables, multi-level parent-child table relationships, and offers features such as custom templates, custom generation rules, and custom data conversion.

Prerequisites

The current version requires the following conditions to be met:

  • IDE version: 2025.1 and above

Installation

Marketplace

Search for "Netwisd Incoder" in the IDE's plugin marketplace and click to install. This method of installation is recommended.

Incoder

Configuration

Open the IDE settings panel, go to Tools -> Netwisd -> Incoder settings, and click to enter the settings page.

Setting

General Configuration

General

The general settings mainly include setting the basic generation rules, including:

  • Company: Company name, generally used to generate package route company information, e.g., com.netwisd.

  • Author: Author, generates author information, e.g.,

  • AppCode: Project code, used to generate the value of the @App annotation in the code, mainly used in conjunction with the incloud platform. The value type is the index value of the word separated by underscores in the table, starting from 1. For example: the table name is incloud_base_wf_process_log, and the AppCode value is 3, which means that this application is wf.

  • Base pkg: Base package name, used to generate the base package name of the code. The base package name generally refers to business classification, e.g., com.netwisd.demo, com.netwisd.base. The value type is the index value of the word separated by underscores in the table, starting from 1. For example: the table name is incloud_base_wf_process_log, and the Base pkg value is 2, which means that this application is base.

  • Module: Module name, used to generate the module name of the code. The module name generally refers to the business module, e.g., com.netwisd.base.user. In general, large projects are divided according to Base pkg, and then divided according to the module name. Small projects can be the same as Base pkg, and the value type is the index value of the word separated by underscores in the table, starting from 1, e.g., the table name is incloud_base_wf_process_log, and the Module value is 3, which means that this module is wf.

  • Includes: Includes which code to generate, e.g., entity, dao, service, controller, etc., generally the default options are sufficient.

General settings are project-level settings and are not global. Each project has its own values.

Template Settings

Template

The template settings are divided into two parts: groups and templates.

The system by default provides templates for the public group. Users can customize templates according to their own needs. Each time a new group is created, the system will by default copy the template of the public group and make modifications on this basis to meet the requirements for customizing their own group templates.

Each group has four types of templates, namely: Single, Multi, Single-wf, Multi-wf, corresponding to single table, multi-table, single table workflow, and multi-table workflow, respectively.

Data Conversion

Data convert

Data conversion settings are used to convert database field types into Java types. The system by default provides common conversion rules, and users can customize conversion rules according to their own needs.

The system by default provides templates for the public group. Users can customize templates according to their own needs. Each time a new group is created, the system will by default copy the template of the public group and make modifications on this basis to meet the requirements for customizing their own group templates.

Internal Field Settings

Internal fields

Internal field settings are used to set fields that are automatically added when generating code. The system by default provides common internal fields, and users can customize internal fields according to their own needs.

The system by default provides templates for the public group. Users can customize templates according to their own needs. Each time a new group is created, the system will by default copy the template of the public group and make modifications on this basis to meet the requirements for customizing their own group templates.

help

Help

During the process of assistance, you can obtain the template generation program generated by Incoder, which is compatible with different platform versions.

Home Page

The plugin's home page icon is displayed as a robot icon; clicking on the icon opens the Incoder plugin's home page. The plugin icon can be dragged to the left toolbar of IDEA for quick access to the plugin.

Plugin

Data Source Management

Clicking on the data source management icon on the plugin's home page opens the data source management page, used for managing data sources. The current version supports MySQL8+, PostgreSQL14+ databases, and most third-party databases based on these two, as well as DM8。

Datasource

Clicking the Test Connection button allows testing if the data source connection is normal. If there is an error, corresponding error log information will be displayed.

Test connection

Clicking the Add button, and the delete button can add or delete data sources.

Data Source Refresh

Clicking the data source refresh icon on the plugin's home page refreshes the data source. Refreshing the data source is to re-acquire the table structure and table relationships in the data source.

Table Structure Tree

After maintaining the data source, double-clicking the data source name on the plugin's home page opens the table structure tree page for viewing the table structure in the data source. There are two types of tree structures, where the tables type represents the original table structure queried from the data source.

Relation tree

On the table structure tree page, double-clicking a table name opens the table structure editing page for editing the table structure and generating code for a single table. For code generation, see Code Generation Section.

Table Relationship Tree

After maintaining the data source, double-clicking the data source name on the plugin's home page opens the table structure tree page for viewing the table structure in the data source. There are two types of tree structures, where the relations type represents the business relationship tree maintained locally based on the tables queried from the data source, which is used for generating code for multi-level master-detail table relationships.

Relation tree

On the table relationship tree page, double-clicking a table name opens the table structure editing page for editing the table structure and generating code for a single or multiple tables. For code generation, see Code Generation Section.

Maintaining Table Relationships

Dragging a table name onto another table name establishes a table relationship, prompting a dialog box for setting the type of relationship and the fields of the relationship. The dragged table represents the child table, and the table being dragged onto represents the master table.

Relation

In this dialog box, you can set the type of relationship and the fields of the relationship. The tree on the left represents the structure of the relationship, and the table on the right represents the fields of the relationship.

The operation buttons on the left can delete added relationships, but only the last level of relationship can be deleted, not cascade deletion.

The operation buttons on the right can add or delete fields of the relationship, where relationship fields are required and cannot be empty.

Also, by selecting any node on the main interface and clicking the relationship button in the operation buttons above, you can open the relationship editing page to edit table relationships.

Relation edit

Once saved, the relationship is persistent, meaning it is saved locally and will not be lost due to a restart of IDEA.

If you want to delete all relationships, you can select the relations and then click the delete button above to remove all relationships. Note, this action does not delete the table relationships in the data source, but rather removes the locally maintained relationships.

Relation del

Code Generation

By clicking on the nodes in the left tree, you can open the table structure editing page, which is used for editing table structures and for generating code for single or multiple tables. If the table is under the tables node, only single table code can be generated. If the table is under the relations node, multiple table code can be generated.

Generate code

Modifying Field Attributes

n the default column tab, you can modify field attributes, including field name, field type, field length, field precision, field comments, etc. After modification, there will be a preview of the SQL statement below, and clicking the save button will synchronize the updates to the data source.

Generate code edit

Code Generation

In the table structure editing page, clicking on the Generate tab will open the code generation page for generating code.

Generate download

Fill in the relevant information according to the situation, then click the generate button to produce the code.

It should be noted that: The Out Dir directory is matched automatically based on the table name. If your table name follows the module name rules, it will automatically generate in the corresponding submodule. Otherwise, there are two scenarios: if you have set a custom output directory, it will output to the custom directory; if not, it will generate in the root directory.

25 七月 2025