Java で暗号化 ZIP を作成する

はじめに zip4j zip4j の利用 暗号化ZIPファイルの作成 まとめ はじめに Java で暗号化ZIP扱うライブラリなんて腐るほどあるだろう。 なんなら標準ライブラリだけで完結できるだろう。 と高を括っていましたが、Commons Compress でも no support for encryp…

「gyp: No Xcode or CLT version detected!」を修正する

No Xcode or CLT version detected npm install や yarn install などで以下のエラーが発生。 gyp: No Xcode or CLT version detected! gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 ... macOS Catalina でバージョンを…

Deno on VSCode

はじめに VSCode Deno extension はじめに 前回 blog1.mammb.com で Deno を使った TypeScript の始め方について紹介しました。 TypeScript なので VSCode を使うことが多いと思いますが、そのままだとエディタ上でエラー表示されます。 最初のエラーは、イ…

TypeScript のはじめかた - Deno編 -

はじめに Deno とは Deno のインストール Hello TypeScript With Deno Http server TypeScript Compiler Options はじめに 前回 blog1.mammb.com では Node を使った TypeScript の始め方について見てきました。 今回は、Deno を使って TypeScript の始め方…

TypeScript のはじめかた-環境編-

はじめに Node のインストール プロジェクトの初期化 TypeScript コンパイラの導入 TypeScript の設定 Hello TypeScript DOM 操作 まとめ はじめに 簡単なサンプルを交えて TypeScript の始め方について紹介します。 Node のインストール Node (と npm ) が…

SchemaSpy で既存データベースから綺麗なデータベースドキュメント生成

はじめに データベースの準備 SchemaSpy の準備 SchemaSpy の起動 SchemaSpy のドキュメント Redmine のデータベースドキュメント まとめ はじめに SchemaSpy は、既存のデータベースからデータベースのドキュメントをHTMLで出力するJava製のツールです。 こ…

Docker Compose で Redmine 公式イメージを起動する

はじめに Docker Compose の準備 Redmine の起動 コンテナの停止 はじめに Docker Compose で Redmine をとりあえず起動するだけの手順です。 Docker Compose の準備 Docker の準備は以下を参照してください。 blog1.mammb.com Docker Compose を使うので準…

Docker エンジンと docker-compose.yml のバージョン

Docker エンジンと Compose ファイルのバージョン対応表 Version 2.0 Version 2.1 Version 2.2 Version 2.3 Version 2.4 Version 3.0 Version 3.1 Version 3.2 Version 3.3 Version 3.4 Version 3.5 Version 3.6 Version 3.7 Docker エンジンと Compose ファ…

IntelliJ IDEA Command Line Launcher の使い方

はじめに Command Line Launcher の作成 Command Line Launcher の使い方 はじめに IntelliJ IDEA をコマンドラインから起動する Command Line Launcher の使い方について紹介します。 Command Line Launcher の作成 Tools - Create Command-line Launcher..…

Quarkus のスレッドモデルと Quarkus Reactive Routes

はじめに Micronaut のスレッドモデル Quarkus のスレッドモデル Quarkus Reactive Routes Quarkus Reactive Routes のパフォーマンス まとめ はじめに 先日、Quarkus のブログに以下の記事がポストされました。 quarkus.io Micronaut 陣営が行ったマイクロ…

テトリスから何か学んだことがあるとすれば、間違いが積み重なると成果は消え去ってしまうということだ

etc

2011年ごろに Twitter で(様々な亜種とともに)広まった格言 If Tetris has taught me anything, it's that errors pile up and accomplishments disappear.

Quarkus 1.4 で追加されたコマンドラインモード

はじめに プロジェクトの作成 メインクラスの作成 実行 QuarkusMain アノテーション main メソッドからの実行 メインスレッドでの待機 はじめに Quarkus 1.4 で Web アプリケーションではなく、コマンドラインアプリケーションの作成がサポートされました。 …

ソフトウェアシステムアーキテクチャ構築の原理におけるビューポイント

アーキテクチャとアーキテクチャ記述 アーキテクチャ記述(architecturaldescription,AD)とは、ステークホルダが理解でき、アーキテクチャがその関心事に合致していることを説明できる方法で、アーキテクチャを文書化した成果物のことである。 優れたアーキ…

クラウドネイティブシステムの特性

Cloud Native DevOps with Kubernetes におけるクラウドネイティブシステムの特性 自動化可能 アプリケーションのデプロイや管理が自動化されている ユビキタスかつ柔軟 ディスクなどの物理リソースや、実行基盤となるコンピューティングノードに関する詳細…

Quarkus リリースノートまとめ

Quarkus 1.4 Quarkus 1.3 Quarkus 1.2 Quarkus 1.1 Quarkus 1.4 2020年4月 Java11 が標準となり Java8 が非推奨になった Java8 のサポートは Quarkus 1.6 で終了予定 コマンドラインアプリケーションの構築が可能となった Quarkus 1.4 で追加されたコマンド…

Apache POI 4.X チートシート

はじめに 依存 ワークブックの新規作成 既存ワークブックのオープン ブックの保存 シートの作成 シートの取得 行の取得 行と列の移動 セルの取得 セルへの値設定 セル値の文字列取得 行とセルの走査 値が設定されている範囲の取得 罫線の設定 セルスタイルプ…

Apache PDFBox でテーブルを表示する

はじめに PDFBox での矩形描画 PDFBox でのテーブル描画 セルテキストの Box 表示 easytable によるテーブル表示 まとめ はじめに 前回は PDFBox による文章の Box 表示を見ました。 blog1.mammb.com PDFBox が提供する PDF 操作の API は、低レベルな操作に…

Apache PDFBox で折り返しのある文章を表示する

はじめに HelloWorld True Type Font の指定 段落文章の表示 まとめ はじめに Apache PDFBox は PDF を操作する Java ライブラリです。 PDFの作成やテキストの抽出、PDFの分割やマージなどを行うことができます。 Apache PDFBox は比較的低レベルな API セッ…

Java におけるタスクのキャンセル処理

タスクのキャンセル 単純なキャンセル可能タスク スレッドのインタラプト Future によるキャンセル Future による実行時間の制限 インタラプトできないブロッキング Socket の I/O ブロックに割り込みする まとめ タスクのキャンセル Java にはスレッドを強…

JavaFX で ace.js を使ったエディタのテキストがコピーできない

はじめに Workaround 1 Workaround 2 Workaround 3 ace.js におけるコピー処理 まとめ はじめに windows での挙動は試していませんが、MacOS 上で JavaFX の WebView を使い、ace.js を組み込んだ際にテキストのコピーが動かない事象がありました。 環境は J…

Java lambda における this 参照について

はじめに 匿名クラスの this 参照 lambda の this 参照 lambda コードの展開 lambda で自身を参照する はじめに lambda は、匿名クラスの単なる構文糖ではなく、その実現方法の違いから発生するいくつかの違いがあります。 ここでは、lambda ブロックにおけ…

JavaFX でダイアグラムを書く

はじめに マウスドラッグ可能なダイアグラムの作成 最初のダイアグラムの表示 ダイアグラムを繋ぐコネクタの作成 クラス図の表示 まとめ はじめに 前回は JavaFX の環境構築についてのポストでした。 blog1.mammb.com 今回は、JavaFX により、上記のような簡…

JavaFX の始め方(Gradle 編)

はじめに プロジェクトの作成 OpenJFX プラグインの導入 アプリケーションの実行 モジュール はじめに Java 11 からは、JavaFX が同梱されなくなったため、別途 OpenJFX を導入する必要があります。 しかし、Maven や Gradle 向けにプラグインが提供されてい…

ANTLR による構文解析の始め方

ANTLR とは ANTLR の導入 ANTLR の実行 ANTLR による構文解析 ANTLR の文法ファイルと生成ファイルの関係 まとめ ANTLR とは ANTLR (ANother Tool for Language Recognition) は構文解析器を生成するパーサジェネレータで、yacc や JavaCC などと同じ類いの…

JPA Schema Generation プロパティ

はじめに プロパティ一覧 persistence.xml での設定例 Spring Boot での設定例 はじめに JPA2.1 から標準化されたスキーマ生成プロパティですが、意外にまとまった情報が見当たらないので。 プロパティ一覧 javax.persistence.schema-generation 説明 connec…

Maven Central Repository への公開手順(Gradle版)

はじめに sonatype で JIRAアカウント作成 New Project の issue 登録 GnuPG の導入 GnuPG による鍵の生成 公開鍵を鍵サーバへ登録 秘密鍵をエクスポート Gradle プラグインの導入 build.gradle の設定 リポジトリへの公開 まとめ はじめに Maven Central Re…

プログラマ向け ASCII 記号の読み方

etc

記号 名前 ~ tilde ` backquote / grave accent / left quote / back tick ! exclamation mark / bang / not @ at sign / at # hash / sharp / number sign / pound $ dollar sign / dollar % percent sign / mod ^ caret / hat / circumflex & ampersand / …

日本郵便の郵便番号データ ken_all をどうにかする

はじめに 郵便番号と住所の割当についての注意点 郵便番号データのカラム定義 複数行に分割されるレコード 町域名の編集 "以下に掲載がない場合" "・・の次に番地がくる場合" "・・一円" カンマ区切りされた町域名 地割 町域名がカッコ付きで補足されるパタ…

Set や Map のキーを前方一致の Like 検索する

はじめに NavigableSet NavigableMap まとめ はじめに 入力項目の自動補完(auto complete)などで、前方一致の Like 検索を行いたい場合があります。 Set や Map は、key または key-value のデータ構造なので、これらの用途には向いたものではありませんが、…

【これだけで大丈夫】.gitignore チートシート

git

リポジトリで管理したくないファイル(or ディレクトリ) は.gitignore に定義することで git add 実行時にインデックスに追加されなくなる。 指定 除外対象 foo.txt 配下のサブディレクトリのどこかにある foo.txt ファイル(or ディレクトリ) /foo.txt 現在の…