2024-01-01から1年間の記事一覧
開発者向けのPC初期設定時にやることで忘れがちな作業をまとめていく Mac OS X:Sonoma 14.7.1 Chrome ブックマーク エクスポート ブックマークマネージャーを開いて、右上の3つの点のメニューでエクスポート インポート Chrome 設定 > ブックマークとリス…
Debeziumの紹介 Debeziumは、DBテーブルへの変更をKafkaトピックに格納し、アプリケーションがその変更内容をリアルタイムで監視・受信できるようにするソフトウェアです。元々はマイクロサービスの実装を目的として開発されましたが、現在ではマイクロサー…
テスト実行を早くするためのアイディアについてメモしておく テスト実行のrunnerのスペックを上げる 単純にスペックを上げられる場合は、上げてみる name: ci on: pull_request: branches: - master ・ ・ jobs: gradle-check: runs-on: [ runner-large ] # …
個人のプロジェクトで間違って別アカウントでコミットして取り消した時のメモです。 コミットの著者情報を変更する際に使ったコマンド # 変更対象コミットが含まれる範囲を指定。エディタで変更箇所をeditに変更して保存 $ git rebase -i HEAD~3 # edit指定…
バージョン:IntelliJ IDEA 2024.3 (Ultimate Edition) における初期設定が必要だった項目について記載する Java バージョン設定 プロジェクトのJavaバージョンが17だったので、Javaコンパイラーの指定を変更 Gradle JVMもバージョンを合わせる
プロジェクト参画時やPC交換時にいつもやることをまとめてみる ターミナル自体の設定 ターミナル PRO フォント:SF Mono Regular (サイズ18) 黒い画面かつ、好きなフォントへ変更 Git gitコマンド打つとデベロッパーツールがないとなったのでインストール ユ…
概要 Gatlingは負荷試験のためのテストツールです。インストールから実行結果の確認までの手順を説明する インストール OpenJDKのインストール Oracle公式サイトからJDKをダウンロードし、インストールする。 java -versionコマンドでインストール確認。 Gat…
Vertex AI APIとは Google Cloud が提供する機械学習および AI モデルの開発、デプロイ、管理を支援するための API https://cloud.google.com/vertex-ai/docs/reference/rest 利用可能な機能 データの準備 データのインポート、前処理、ラベリングなどのデー…
Logbackとは SLF4J(Simple Logging Facade for Java)のAPIを経由して利用するjavaのロギングライブラリのこと 設定ファイル 構成として以下 springProfile → root level → appender springProfile : 開発環境指定 root level:ログレベルの指定。DBUG, INFO,…
MessageDigestを使ったハッシュ化 KotlinでSHA-512アルゴリズムを使ってハッシュ化する。 repeatで1000回繰り返す fun generateSalt(length: Int = 16): ByteArray { val salt = ByteArray(length) SecureRandom().nextBytes(salt) return salt } fun String…
Kotest(Kotlinテストフレームワーク) 概要 Kotlinの言語仕様で書けるテストフレームワーク。Junitよりもコード量を減らせる ネストして実装可能でどんなテストを書くかを継承させるSpecで変えられる 実装例 FunSpecを使った実装例。contextを使って階層構造…
ResponseEntityExceptionHandler どの例外が発生したときになにを返すかのハンドリングを行う ResponseEntityExceptionHandlerクラスを継承して例外ごとに定義されているメソッドをオーバーライドすることで、処理カスタマイズできる ResponseEntityExceptio…
value class DDDの「値オブジェクト」に近い プリミティブ値をラップして別物として扱う 用途や実態はプリミティブ値に近いような値を扱う IDを持たない値ベースのクラス。IDを保持するとDDDで言うところのEntity class 実行時の負荷を軽減することが可能 制…
SpringBootデフォルト設定 以下の設定がdisableになっている MapperFeature.DEFAULT_VIEW_INCLUSION すべての項目がJson変換対象となる。disableでないと個々でjson変換対象のアノテーション付与などが必要 DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTI…
git pull --rebase時に使うコマンド 以下のようなコマンドで取り込む $ git pull --rebase origin master #conflict時は修正して $ git rebase --continue $ git push origin feature/myBranch --force rebase後は、コミットを改変しているので、fast-forwar…
Date and Time APIによって提供されるの日時クラス クラス タイムゾーン 内容 LocalDateTime なし 日付時刻、 ZonedDateTime あり 時差と地域付の日時 OffsetDateTime あり 時差情報付の日時 Instant - 日時(絶対時間としてのエポック秒)、Date型と相互変…
スネークケース JSON をキャメルケース フィールドに逆シリアルにする設定を記載する 方法1 setPropertyNamingStrategy ObjectMapperのsetPropertyNamingStrategyメソッドを使用して、objectMapperを用いたすべてのシリアル化を設定できます。 ObjectMapper …
なぜhttpsにする必要があるのか ユーザーがブラウザを使用する場合、インターネットを通じてブラウザとサーバーの間でデータの送受信が行われます。 この際、https(常時SSL)であればデータが暗号化されるため、第三者によって情報が改ざんされたり、盗聴さ…
INSERT IGNOREとは? INSERT句に付与可能な修飾子 レコード登録時に無視可能なエラーが発生した場合に無視してレコード登録できる INSERT ステートメントの実行中に発生する無視可能なエラーは無視されます 無視されるエラー一覧 ER_BAD_NULL_ERROR ER_DUP_E…
fatal: Need to specify how to reconcile divergent branches GitHub側で、親ブランチの修正が入り、変更をrebaseで取り込んだ場合にローカルでgit pullすると発生する。 git pullする際に、mergeで取り込むかrebaseで取り込むかが指定されていないため、wa…
DDDの言及する範囲 思想・哲学: 複雑なシステムへの取り組み方、開発の考え方や進め方 設計戦略: ドメインモデリングに繋げるためのアプローチの方針 ドメインエキスパートとの協調、ユビキタス言語、境界づけられたコンテキスト等 実装パターン: ドメインモ…
generatorMysqlConfigの書き方 初回設定時に必要と思った設定を以下にコメント付きで記載しておく <generatorConfiguration> </generatorconfiguration>
Keyの作成方法の一例を書いておく head -c 32 /dev/urandom > test.key cat test.key | base64
Slackでのリマインダー設定方法 メッセージフィールドに、次の形式でリマインダーの詳細を入力します /remind [yourself or #channel] [what] [when] タイミングの設定方法 every day(毎日) every Monday(毎週月曜日) every weekday(平日に毎日) every…
移動系 履歴 ワークスペース 検索 フォーカス移動 編集、書式設定 表示、非表示 移動系 説明 コマンド 補足 「未読」に移動する Command + Shift + A 「スレッド」に移動する Command + Shift + T 「DM」に移動する Command + Shift + K 「メンション&リアク…
GitHub Actionsとは? ビルド、テスト、デプロイなどを自動化するCI/CDプラットフォームのこと。GitHub内のサービスのため、GitHub内で完結することができる。 GiHub Actionsの仕組み 設置場所:.github/workflows ファイル形式:yml 記載内容:ワークフロー…
Apache Kafkaとは? メッセージングシステム 利用メリット Apache Kafkaの構成 Apache Kafkaの特徴 分散システム 分散システムのメリット データの永続化 データ永続化によるメリット 参考URL Apache Kafkaとは? 複数台のサーバーで大量データを処理する分…
便利そうと思って導入したプラグインの概要について以下に記載する。 詳しい内容は、参考URLを参照のこと。 便利プラグイン コード入力支援 String Manipulation キャメルケース <=> スネークケースへの変換、エスケープ文字の処理、URLエンコードなど変換が…
メッセージに付けるノートが思うように出力できなかったので、記載しておく note 【表示位置】 of 【起点の要素】 【表示位置】 :right left over 【起点の要素】:participantで定義した要素 参考ソースと画面イメージ @startuml participant Alice partic…
AWS App Runner ECRにコンテナイメージをpushまたは、GitHubにコードpushすると、自動デプロイしてくれる コンテナがデプロイされるとApp RunnerがマネージドのLBを設定してくれる コンテナ管理とかVPC周り、ALB,NLBとかscalingなどを隠蔽して提供してくれる…