作記録

記憶代わり

世の中の分類

存在の分類 コト モノ モノの種類 気体 液体 固体 観点のまとめ 自然 社会 経済 政治 法

RabbitMQのチュートリアルのまとめ

RabbitMQのチュートリアルのうち、1 ~ 6 までの Spring AMQP のチュートリアルに出てくる言葉をまとめる。 1. Producing メッセージを送る事を指す。 1-1. Producer メッセージを送るプログラムを指す。 Deliver, Publisherという言い方もしている。 後述す…

EVERY LAYOUT の3つのレイヤー

CSSスタイル設定の3つのレイヤー グローバルスタイル レイアウトプリミティブ ユーティリティクラス 1. グローバルスタイル :root { /* モジュラースケールの考え方 */ --ratio: 1.5; --s1: calc(var(--s0) * var(--ratio)); --s2: calc(var(--s1) * var(--r…

HTMLのブロック要素とインライン要素について

1. 参考 2. 言葉の整理 2-1. コンテンツ HTMLタグの間にあるものを指す。 例1 <div>おはよう</div> divタグにとって おはよう の一文字一文字がコンテンツ 例2 <span>こんにちは</span> spanタグにとって こんにちは の一文字一文字がコンテンツ 例3 <div> <span>こんばんは</span> </div> divタグにとって <span>こ</span>…

複合主キーではなくサロゲートキーを使う理由

1. 定義 1-1. サロゲートキー(Surrogate key) A surrogate key (or synthetic key, pseudokey, entity identifier, factless key, or technical key[citation needed]) in a database is a unique identifier for either an entity in the modeled world o…

Spring Boot Application でログファイル(spring.log)を出力する

前提 Spring Boot Application の jarファイル をデプロイしている事。 上記1のjarファイルをsystemd を利用して起動している事。 OSのuserはroot以外のuserを利用している事。 1. /var/log 配下に対象アプリケーション用のディレクトリを作成する 本番環境…

JavaScriptのイベント change, keyup, input について

入力するフォームのバリデーションを実装する際に、バリデーションの検証をするタイミングには大きく分けて下記の3つがあると思っている。 change keyup input JavaScript コード例 const input = document.querySelector('#name'); const button = document…

flex を使うと Safari で右に謎の空間が生まれる問題と解決策

結論 下記のように (1) Google Material Symbols を head タグで読み込み、 (2) Google Material Symbols を span タグで配置したものを (3) flex で並べると Safari でのみ右に謎の空間が生まれる模様。 <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </meta></meta></head></html>

Spring Boot Application の application.properties にとりあえず記述しておくと良さそうなもの

1. 結論 # 2-1 logging.pattern.dateformat=yyyy/MM/dd HH:mm:ss.SSS,Asia/Tokyo # 2-2 spring.thymeleaf.cache=false # 2-3 spring.flyway.clean-disabled=false 2. 説明 2-1. logging.pattern.dateformat=yyyy/MM/dd HH:mm:ss.SSS,Asia/Tokyo Spring Boot …

Spring Boot Application の logback が記録する時刻を日本標準時刻にする

結論 application.properties に下記を記述する。 logging.pattern.dateformat=yyyy/MM/dd HH:mm:ss.SSS,Asia/Tokyo 参考 https://spring.pleiades.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties.core.lo…

Safari のプライベートブラウズだと LINEログイン 出来ない

1. 使用技術 Spring Boot Starter Security 2.7.1 2. 原因 Safariのプライベートブライズモードだと、タブ毎にCookie管理を行なっている(はず。。)。 よって、別タブに切り替えるとログインしているSessionの情報を保存している Cookie が無くなる。 LINE…

loggin.file.path を指定しても spring.log ファイルが出力されない場合

問題 Spring Boot のドキュメントを参考に、application.properties に下記のように追記した。 **** は、サービスの名前のディレクトリにした。 logging.file.path=/var/log/**** しかし、var/log/**** 配下にログが出力されなかった。 解決方法 /var/log/**…

Spring Framework の @ModelAttribute の使い方

概要 @ModelAttribute の使い方には、下記の2つがある。 1. @Controllerのメソッドに使う方法 参考...https://spring.pleiades.io/spring-framework/docs/current/reference/html/web.html#mvc-ann-modelattrib-methods 2. @Controllerのメソッド引数に使う…

Spring Security OAuth2 Login と LINEログイン を利用してログイン機能を実装する

version Spring Boot Starter Security 2.7.1 参考 まずは、下記の動画、documentを理解すると分かりやすいと思う。 https://www.youtube.com/watch?v=PKPj_MmLq5E https://qiita.com/TakahikoKawasaki/items/701e093b527d826fd62c また、下記のSpring Secur…

デザイン基本対応表

1. レスポンシブ対応 デバイス 大きさ Tailwind CSS スマートフォン縦 320px ~ 639px なし スマートフォン横 640px ~ 767px sm タブレット縦 768px ~ 1023px md タブレット横 1024px ~ 1279px lg PC小 1280px ~ 1535px xl PC大 1536px ~ 2xl 2. 文字の大きさ…

linuxコマンドの 1>, 2> の意味

結論 1> は、標準出力をfileに出力することを指す。 2>は、標準エラー出力をfileに出力することを指す。 具体例 ファイルを探したいとき $ find / -name postgresql.conf 2> /dev/null 上記のようにやると、findによりreadする際に権限がないことで発生する …

UbuntuでPostgreSQLを起動してアプリケーションで使える状態にする

前提として本記事は、コチラの記事の後を想定したものです。 つまり、Ubuntuサーバーには、アプリケーションを利用するユーザーが追加されていることを想定しています。 また、Ubuntuサーバーのローカル環境でのPostgreSQLの使用を想定しています。 1. versi…

Ubuntuのuserのpasswordを変更する

コマンド ****はuserの名称。 $ sudo passwd **** userの名称の確認方法 /etc/passwdファイルにuser一覧が確認出来る。 $ less /var/passwd 参考

Ubuntuのgroupとuserの確認方法

1. user一覧 1-1. 出力 Ubuntuのuserは /etc/passwd のファイルに記載してある。 よって、下記のコマンドで出力出来る。 $ less /etc/passwd ↓出力↓ root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/…

PostgreSQLで自分が作成したテーブルの数を表示する

SELECT count(relid) FROM pg_stat_user_tables; 参考 https://www.postgresql.jp/document/13/html/monitoring-stats.html

認証・認可関連の言葉の整理

WEBシステム開発における認証・認可関連の言葉の整理をする。 ●識別子(Identifier) 集合の中から要素を識別するための情報。 識別子の例は、UUIDやメールアドレス。 ●アカウント システム内で行動を行なった事を記録する際に、その行動を行なった者を示す…

PostgreSQLの内部結合(INNER JOIN)と外部結合(OUTER JOIN)の動きについて

1. 前提テーブル 1-1. weatherテーブル city temp_lo temp_hi prcp date San Francisco 46 50 0.25 1994-11-27 San Francisco 43 57 0 1994-11-29 Hayward 37 54 1994-11-29 1-2. citiesテーブル name location San Francisco (-194, 53) 2. 定義 2-1. 内部…

PostgreSQLのモデル

https://github.com/sakuoden/PostgreSQL-model

公開鍵(public key)と秘密鍵(private key)の仕組みについて

公開鍵と秘密鍵の仕組みの面白さがようやく分かったので抽象度を上げてメモする。 前提定義 公開鍵と秘密鍵...公開鍵と秘密鍵は、1対1の関係で紐づけられる。 公開鍵(public key)...公開鍵で暗号化したモノは、紐づけられた秘密鍵でのみ復号することが出来…

システム開発におけるモデリング

現状、僕が関わった開発では、モデリングをする開発、しない開発があった。 これらの開発をした経験上では、モデリングをしない開発は、画面デザインを根拠としてシステム設計を行っている傾向がある。 画面デザインを先に作り、それに従ってDB設計を行い、…

Instagram Graph APIにSpring Bootアプリケーションからリクエストする

概要 大まかに下記の手順を踏むことで Instagram Graph API にリクエストする。 1. Spring Security OAuth2 Clientを利用してFacobookにログイン 2. ログインした状況で、Instagram Graph API にリクエストを行うAccess Token を取得する 3. Access Token を…

複数アプリケーション + 単体DBの運用パターン

前提 マイクロサービスのような言い方があるのかもしれないけど、マイクロサービスとは何かを明確に言葉に出来ないので分かっている範囲の言葉を使う。 複数アプリケーションが単体のDBの情報を利用しなければいけない場合に現状試しているパターンを列挙す…

IntelliJ IDEA と Spring Boot と Thymeleaf で Tailwind CSS を使う

前提 開発中のHTMLとCSSの確認は、IntelliJ IDEA で Controllキー + D を押して「ビルド + Spring Boot Application起動」してローカル環境でWEBブラウザを目視する事を前提としている。 (HTML または CSS を変更する事で自動でビルド + 起動はしない。) V…

個人的なCSSフレームワークの使い分け

以下、全て個人的な使い分けと感想。 画面設計書をHTMLとCSSで書く場合、 Buluma を使うと良さそう。 画面設計書としてのHTMLとCSSの目的は、WEBブラウザで実際のデータの動きや画面の本質的な動きを自分やデザイナーやお客さんに見せる事である。 よって、…

IntelliJ IDEA で 1 usage という表示や commiter を非表示にする

version IntelliJ IDEA 2022.1 非表示にする対象 下記画面のオレンジで囲んだような 1 usage や sakuoden といったcommitter。 手順 Preference を開く Editor > Inlay Hints を選択する Code vision の Usages と code author のチェックを外す