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

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

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

記号 名前 ~ 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 現在の…

より良い .gitignore を一瞬で手に入れる

git

はじめに Github 管理の .gitignore テンプレート .gitignore の作成 まとめ はじめに Git を利用する際 .gitignore にファイルやディレクトリを指定することで、リポジトリ管理の対象から除外することができます。 例えば Windows の場合のThumbs.db や mac…

RGBカラーコードで明度・彩度・色相を変更する

RGBカラーコードとHSVモデル 明度を変更する 彩度を変更する 色相を変更する まとめ CSS でカラーコードを指定する際に、少し明るい色が欲しいな、とか、少し鮮やかな色が欲しいなといったケースがよくあります。 ここでは、RGBカラーコードで明度・彩度・色…

Quarkus 1.1 で追加されたテンプレートエンジン Qute

はじめに Qute とは プロジェクトの作成 Hello Qute Qute テンプレートの文法 Template Extension Methods まとめ はじめに マイクロサービス・アプリケーション・フレームワークである Quarkus の バージョン 1.1 が 2019年12月17日にリリースされました。 …

Java でリストを逆順にイテレートする

はじめに ListIterator による逆順イテレート ListIterator ユーティリティを利用した逆順イテレート DescendingIterator による逆順イテレート はじめに 以下のようなリストを逆順で末尾からイテレートしたいケースがあります。 List<String> list = Arrays.asList(</string>…

HTML 要素の disabled 属性と readonly 属性の違いと正しい使い方

はじめに <input> 要素の disabled 属性 と readonly 属性の違い <input> 要素の readonly 属性の例外 <select> 要素の readonly 属性 readonly 属性が効かないコントロールで readonly を模倣する4つの方法 option 要素を disabled 指定する select コントロールの操作を無効化す</select>…

Markdown で簡単にオンラインドキュメントを生成できる mdBook の使い方

mdBook とは mdBook の導入 mdBook の始め方 mdBook でビルドする mdBook のコマンド mdBook での作業 mdBook で Rust コードを実行 mdBook とは Markdown 形式できれいなドキュメントを作成するためのツールです。 チャプター別に執筆した Markdown ファイ…

Java Stream でよく使う Map 変換

Map へ変換(キー重複無し) Map へ変換(キー重複有り) LinkedHashMap へ変換 任意キーでグルーピング グルーピングして集計 グループ分け Map へ変換(キー重複無し) 以下の Item のリストを id をキーにした Map に変換します。 List<Item> list = Arrays.asList( n</item>…

Vaadin と Spring Boot で作る 「Javaだけ」 Web アプリケーション

はじめに プロジェクトの作成 最初のアプリケーション 画面レイアウトの設計 レイアウト構築の概要 レイアウトの実装 エンティティの準備 アカウント一覧コンポーネントの作成 アカウント一覧のフィルタリング AccountService の追加 アカウント編集フォーム…

Rust のマルチプラットフォーム UI ライブラリ OrbTk の使い方

OrbTk とは プロジェクトの作成 Hello OrbTk Template によるレイアウト定義 イベント処理 まとめ OrbTk とは Redox という Rust で書かれた UNIX ライク OS のサブプロジェクトとして開発されている Widget Toolkit です。 OrbTk の機能としては以下が謳わ…

Bootstrap のファイル選択を custom-file-input できれいにする

はじめに テンプレート デフォルトの ファイル インプット カスタム・ファイル・インプット bs-custom-file-input を使う ラベルの変更 取消ボタン 取消イベントのマルチブラウザ化 まとめ はじめに Bootstrap の Forms コンポーネントは、デフォルトだと fi…

Java Beans の大罪 〜 getter/setter を捨てて美しきオブジェクトの世界で生きよ〜

まえがき はじめに Java Beans の誕生 サーバサイドの台頭 Struts と BeanUtilsの興起 Enterprise JavaBeans ORM の台頭 getter/setter は良くない習慣です なぜ getter/setter は悪なのか 悪の囁きに対する処方箋 まとめ まえがき 以下のコードを見てくださ…

macOS アップデート後にいつも出くわす invalid active developer path エラー

macOS のメジャーアップグレード後にいつも出くわすやつ macOS のメジャーアップグレード後には、いつも以下のようなエラーに出くわします。 xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Libra…

bash の初期化ファイル .profile, .bashrc, .bash_profile の使い分けと管理方針

はじめに bash の初期化ファイル ログインシェルとは インタラクティブ(対話的)シェルとは ログインシェルとインタラクティブシェルの分類 各種環境における初期化ファイル CentOSの初期化ファイル Ubuntuの初期化ファイル macOS(Catalina以前)の初期化ファ…

Node のバージョン管理ツール n の使い方

Node のバージョン管理ツールである「n」を紹介します。 はじめに n のインストール n 利用準備 node のインストール node のバージョン切り替え node のバージョン削除 はじめに Node のバージョン管理ツールは、nvm nodenv 日本だと nodebrew など色々あり…

Quarkus の始め方 〜 Gradle 編 〜

はじめに Project Starter アプリケーションの起動 プロジェクトの構成 ネイティブ・ビルド ネイティブバイナリの実行 JVM モードのコンテナ作成 RestAssured によるテスト まとめ はじめに クラウドネイティブなアプリケーションフレームワークである Quark…

JUnit5 Jupiter による Parameterized Test の使い方

はじめに JUnit5 の導入 CsvSource による Parameterized Test Parameterized Test の型変換 ArgumentsAccessor で引数をまとめて受け取る ArgumentConverter で任意のオブジェクトを受け取る ArgumentsAggregator で複雑なインスタンスを扱う MethodSource …

CSS だけで並び替え矢印 ソートインジケータ を作る

はじめに CSS で三角形を作る 準備 ボーダーで正方形を書く ボーダーを広くする ボーダーをさらに広くする 不要なボーダーを消す 2つ目の三角形を作成する 2つの三角形の並びを調整する テーブルを作る ソートインジケータ を付ける クリックイベントで動き…

REST と RESTful と RESTish について

はじめに REST とは RESTful とは RESTish とは まとめ はじめに REST と RESTful 、さらに最近では RESTish という用語についてのまとめです*1。 REST とは REST(REpresentational State Transfer)という言葉が何を指すかは、かなり発散する話題です。 元と…

Docker でロードバランサ・アプリケーションサーバ・DBサーバの環境構築

はじめに Nginx でロードバランサを構成する Webサーバ1号機の作成 Webサーバ2号機の作成 ロードバランサの作成 ロードバランサとWebサーバの起動 Web アプリケーションの準備 Docker でアプリケーションをビルドする DBサーバの準備 ロードバランサとアプリ…

Docker のインストールからイメージビルド・コンテナ起動・Composeまで

はじめに Docker のインストール Docker の起動 コンテナの起動 Docker Hub から nginx のイメージを取得 取得したイメージから ws-nginx という名前でコンテナを作成 作成したコンテナを起動 コンテナの操作 動いているコンテナの一覧 コンテナの停止 停止…

Chrome と Firefox で異なる Cookie の送信について

はじめに Cookie 検証用コード Chrome による Cookie 送信 Firefox による Cookie 送信 RFC 6265 での定義 まとめ はじめに とあるシステムで Chrome では動くけど、Firefox だと動かないという障害がありました。 JavaEE の Flash スコープを使った箇所で問…

Quarkus で Panache を使ったアプリケーション作成

はじめに Panache とは Panache の利用準備 Entity の定義 Entity の操作 永続化 IDによる検索 一覧取得 ソート 件数取得 削除 Stream 操作 ページング ページの取得 件数の取得 メソッドチェーン クエリー Entity メソッド トランザクション ロック カスタ…

Quarkus で JPA を使ったアプリケーション作成

はじめに プロジェクトの作成 Entity の作成 サービスの作成 リソースの作成 データベースの起動 アプリケーションの起動 登録レコードの確認 まとめ はじめに 以下では Quarkus による JAX-RS を使った簡単なアプリケーションを作成しました。 blog1.mammb.…

アクセスログフォーマットの種類とカスタマイズ

Common Log Format Combined Log Format カスタム Log Format Common Log Format 伝統的な host ident authuser date request status bytes 形式のログ出力です。 以下のような出力となります。 127.0.0.1 user-identifier frank [10/Oct/2000:13:55:36 -070…

Quarkus による初めてのアプリケーション作成

Quarkus とは このガイド アーキテクチャ プロジェクト作成 エンドポイント リソースの作成 開発モードで起動 インジェクションの利用 機能テスト パッケージング Quarkus とは Red Hat が作っている、最近流行りのマイクロサービス向けの Java アプリケーシ…