blog

ネジの導入と使用

データベースドキュメントは、チームメンバーがExcelを書くことができるように設計されて、開発のその後の要件の最終的な要約は、時々データベースの設計文書を更新することを忘れますが、今、このツールを介し...

Oct 4, 2020 · 3 min. read
シェア

はじめに

データベースドキュメントは、チームメンバーがエクセル、開発のためのその後の需要の最終的な要約を書くことができるように設計されて、時にはデータベースの設計文書を更新することを忘れて、今、このツールを介して、反復の各バージョンは、クラスの後に文書の生成の実装では、より多くの時間を節約する努力です。

依存関係の導入

<!--データベースドキュメントのコアの依存関係-->
 <dependency>
 <groupId>.smallbun.screw</groupId>
 <artifactId>screw-core</artifactId>
 <version>1.0.2</version>
 </dependency>
 <!-- HikariCP -->
 <dependency>
 <groupId>com.zaxxer</groupId>
 <artifactId>HikariCP</artifactId>
 <version>3.4.3</version>
 </dependency>
 <!--mysql driver-->
 <dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <version>8.0.20</version>
 </dependency>

テストクラスの作成


public class GenerateDocsTest {
 public static void main(String[] args) {
 }
 @Test
 public void shouldAnswerWithTrueTest() {
 //  
 HikariConfig hikariConfig = new HikariConfig();
 hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");
 hikariConfig.setJdbcUrl("データベースのアドレス");
 hikariConfig.setUsername("データベースのユーザー名");
 hikariConfig.setPassword("データベースパスワード");
 // テーブルの備考情報を取得するように設定する
 hikariConfig.addDataSourceProperty("useInformationSchema", "true");
 hikariConfig.setMinimumIdle(2);
 hikariConfig.setMaximumPoolSize(5);
 DataSource dataSource = new HikariDataSource(hikariConfig);
 // 設定を生成する
 EngineConfig engineConfig = EngineConfig.builder()
 // ファイルパスを生成する
 .fileOutputDir("生成ドキュメントは、ローカルパスを保存する")
 // ディレクトリを開く コード実行後に自動的に対応するパスフォルダを開くにはtrueに設定する。
 .openOutputDir(true)
 // ファイルの種類は、現在docとhtmlの2種類がある。
 .fileType(EngineFileType.HTML)
 // テンプレートの実装を生成する
 .produceType(EngineTemplateType.freemarker).build();
 // テーブルを無視し、これらのテーブルは、ドキュメントに生成されない。
 ArrayList<String> ignoreTableName = new ArrayList<>();
 ignoreTableName.add("test_user");
 ignoreTableName.add("test_group");
 // テーブルの接頭辞を無視し、これらのテーブルは、ドキュメントに生成されない。
 ArrayList<String> ignorePrefix = new ArrayList<>();
 ignorePrefix.add("test_");
 // テーブルの接尾辞を無視し、これらのテーブルは、ドキュメントに生成されない。
 ArrayList<String> ignoreSuffix = new ArrayList<>();
 ignoreSuffix.add("_test");
 ProcessConfig processConfig = ProcessConfig.builder()
 // テーブル名を無視する
 .ignoreTableName(ignoreTableName)
 // テーブルの接頭辞を無視する
 .ignoreTablePrefix(ignorePrefix)
 // テーブルの接尾辞を無視する
 .ignoreTableSuffix(ignoreSuffix).build();
 //  
 Configuration config = Configuration.builder()
 //  
 .version("1.1.3")
 //  
 .description("データベース設計ドキュメント")
 //  
 .dataSource(dataSource)
 // 設定を生成する
 .engineConfig(engineConfig)
 // 設定を生成する
 .produceConfig(processConfig).build();
 // 世代を実行する
 new DocumentationExecute(config).execute();
 }
}
Read next

leetcode|最短順序なし連続部分配列

今日はケビンのアルゴリズムの旅の13日目です。LeetCodeの問題581を説明します。これは「配列」に関する簡単な問題です。 同様に、右から左へループし、最小の値をminとして記録します。もしnums[i] > minなら、位置iを調整する必要があり、ループが終了し、調整が必要な最小の位置iがlowとして記録されます。

Oct 4, 2020 · 3 min read