In software development, repetitive tasks often take up a lot of time, especially when you need to generate a bunch of code files at once. To improve efficiency and reduce human error, TableConvert.
com offers a powerful tool called the Magic Converter. This article will introduce you to the amazing features of this tool and show you how to use it to streamline your workflow.
What is the Magic Converter?
The Magic Converter is a feature provided by TableConvert.com that allows you to convert CSV data, as well as Excel, XML, HTML Table, Markdown Table, JSON Array, Insert SQL, MySQL Query Output, LaTeX Table, MediaWiki Table, and other table data into predefined template format code. Whether you need to bulk-generate Java classes, SQL statements, or other types of files, this tool can significantly boost your efficiency.
Example Usage
Let's look at a specific example. Suppose you have the following CSV data:
Building,building
Company,company
User,user
You want to generate Java class files for each row of data, with content like this:
package com.tex.kinesis.impl;
import com.tex.kinesis.RecordHandler;
import com.tex.model.entity.User;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@Slf4j
public class UserRecordHandler implements RecordHandler<User> {
@Override
public void insert(User user) {
}
@Override
public void update(User user) {
}
@Override
public void delete(User user) {
}
}
Generation Steps
With the Magic Converter, you can easily generate the required files with a simple template and CSV data. Here are the steps:
- Prepare CSV Data: Open the Magic Converter tool and paste the CSV data above.
- Define the Template: In the converter's "Row Magic" option, input the template code:
echo 'package com.tex.kinesis.impl;
import com.tex.kinesis.RecordHandler;
import com.tex.model.entity.{$1};
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Service
@Slf4j
public class {$1}RecordHandler implements RecordHandler<{$1}> {
@Override
public void insert({$1} {$2}) {
}
@Override
public void update({$1} {$2}) {
}
@Override
public void delete({$1} {$2}) {
}
}
' > {$1}RecordHandler.java
Besides the template syntax shown in the example, the Magic Converter supports more syntax to enhance your flexibility. For a more intuitive understanding of each syntax, refer to the "Built-in Templates" section below:
- {h1} {h2} ...: Use the Nth field from the header
- {$1} {$2} ...: Use the Nth field from the current row
- {F,} {F;}: Split the current row by a specific string
- {NR} {NR+100}: Current row number
- {ENR}: End row number
- {$0}: All fields in the current row
- {NF}: Number of fields
-
{x ...}: Execute JavaScript code, e.g.,
{x new Date()}
-
Create a Generation Script and Run the Command:
Save the generated code from the steps above as a script file, for example,
gen-java.sh
, and then run the following command in the terminal:
/tmp/gen ❯ sh gen-java.sh
/tmp/gen ❯ ls -l
total 32
-rw-r--r-- 1 jerry wheel 478 Aug 14 17:25 BuildingRecordHandler.java
-rw-r--r-- 1 jerry wheel 469 Aug 14 17:25 CompanyRecordHandler.java
-rw-r--r-- 1 jerry wheel 442 Aug 14 17:25 UserRecordHandler.java
-rw-r--r-- 1 jerry wheel 1495 Aug 14 17:24 gen-java.sh
After running the script, you'll find multiple files generated, completing the bulk generation task. When you have a large number of files or content to generate with a specific pattern, this tool will save you a lot of time and effort.
Built-in Templates
In addition to custom Magic templates, the Magic Converter also comes with a variety of built-in templates for quick use:
- SQL: Update example: Generate SQL update statement examples.
- Quote: Double Quote Cells: Enclose cell content with double quotes.
- Quote: Single Quote Cells: Enclose cell content with single quotes.
- Quote: Double Quote Column: Enclose column content with double quotes.
- RENAME: by Replace(): Rename using Replace().
- RENAME: $1 to $2: Rename $1 to $2.
- Batch Create Empty File: Batch create empty files.
- Batch Create File with Content: Batch create files with content.
- PHP Array: Generate a PHP array.
- C Array: Generate a C language array.
- Columns to Rows: Convert columns to rows.
- CSV with Semi-colons: CSV separated by semicolons.
- HTML SELECT tag for first 2 fields: Generate HTML SELECT tags for the first two fields.
- JIRA Table: Generate a JIRA table.
- JSON for 2 fields: Generate JSON with two fields.
- LDIF for 3 fields: Generate LDIF with three fields.
- URL Query String: Generate URL query strings.
Final Thoughts
The Magic Converter can be used not only for bulk-generating Java classes, SQL statements, and other code files but also in scenarios where you need to create a large amount of similar content. For example, bulk-generating internationalization resource files, bulk-generating test data, and automatically generating configuration files. The potential of this tool goes far beyond these examples, and there are many more uses waiting for you to discover. Let your imagination run wild and experience the efficiency and convenience brought by the Magic Converter!
Top comments (0)