山崎屋の技術メモ

IT業界で働く中でテクノロジーを愛するSIerのシステムエンジニア👨‍💻 | AndroidとWebアプリの二刀流🧙‍♂️ | コードの裏にあるストーリーを綴るブログ執筆者✍️ | 日々進化するデジタル世界で学び続ける探究者🚀 | #TechLover #CodeArtisan、気になること、メモしておきたいことを書いていきます。

Effective Java 項目1 コンストラクタの変わりに static ファクトリーメソッドを検討する

Effective Java を再度読み直して感想や考察を書いています。今回は、項目1「コンストラクタの変わりに static ファクトリーメソッドを検討する」です。static ファクトリーメソッドを使用する際のメリットが 4 つ、デメリットが 2 つ紹介されています。 st…

フロイドの循環検出法を学んだ

[ 7, 8, 9, 0, 1, 2, 0, 1, 2, 0, 1, 2・・・ ][ 10, 20, 30, 50, 60, 70, 80, 50, 60, 70, 80, 50, 60, 70, 80,・・・]のような数列があって、明らかに途中から繰り返しになっています。繰り返しがどこから始まって、何個周期で繰り返しているのか検出した…

プログラミングコンテストの問題解いてみた

野球選手が素振をするように。 マラソン選手がランニングをするように。 ボディービルダーが筋トレをするように。 そう、われわれプログラマーは定期的にプログラミングコンテストの問題を解いて、常に能力の向上に勤しむべきだ。 山崎屋 今日はちょっと古い…

Spring Boot メッセージソースの利用

アプリケーションに表示するメッセージは一般的にプログラムとは別に管理されることが多いです。理由としては、「プログラムによる問題解決」と「表示するメッセージ」は互いに干渉しないので別々に管理しておきたいということが考えられます。Spring Boot …

Spring Boot + Thymeleaf ユーザの入力を Controller で取得

Spring Boot + Thymeleaf の基本です。ユーザのフォーム入力をコントローラで取得する方法をメモしておきます。JSP でも応用可能です。Controller クラスはそのまま使えます。 1つの文字列を受け取る場合 単純な1つの文字列を受け取るこのような画面を作成…

【Heroku】無料プランの Sleep を回避する

前回の記事で Web アプリを動かすことができるプラットフォーム、 Heroku の無料プランについて紹介しました。www.shookuro.com 記事内にもあるとおり、無料プランでは 30 分間アクセスがないと Sleep 状態となり、次回アクセスした際にレスポンスが遅れます…

【Heroku】無料プランの概要

Heroku とは、Paas 上で 自作の Web アプリや バッチプログラムを稼動することができるホスティングサービスです。有名どころの似たようなサービスには Google の AppEngine やアマゾンのAWS、マイクロソフトの Azure などがあります。Heroku は無料プランが…

【Heroku】DB を使うアプリをデプロイ

以前の記事で、Heroku 上に空のアプリを作成し、Postgresql アドオンを追加する記事を書きました。www.shookuro.com今回はこの応用編として、DB を使うアプリをあらかじめローカル Eclipse で作成し、それを Heroku にデプロイする方法を書いておきたいと思…

【JUnit入門】ユニットテストの基本

JUnit を使ったユニットテストについての基本を、命名規則やお作法なども交え、自分なりに整理してみました。公式サイト: JUnit 5基本のみなので、細かいバージョンは意識しませんが、JUnit 4.12 を使用します。例は Eclipse を使用していますが、他の IDE …

【Spring MVC】@RequestMapping の基本

Spring MVC の @RequestMapping の使い方をメモしておく。Spring Boot も Spring MVC を使っているので使い方はまったく同じ。 RequestMappng とは Spring MVC のコントローラに付与して、リクエスト URL に対して、どのメソッドが処理を実行するか定義する…

【解決!!!】LocalDate から Date への変換で怪現象

趣味で西暦・和暦変換処理を作っていて不思議な現象にあいました。LocalDate を Date に変換する必要があったので、ネットで調べたらいくつかのサイトがヒットしました。String、Date、LocalDateの変換 - Qiitajava.util.Date型にjava.time.LocalDateを変換…

【Heroku Postgresql】アドオンを追加し、テーブル操作を行う

Heroku シリーズの第三弾として、Heroku にデプロイしたアプリから参照できるテーブルを作成したいと思います。第一弾 Heroku のユーザー登録 - 山崎屋の技術メモ第二弾 Spring boot で作ったアプリを Heroku にデプロイして全世界に公開 - 山崎屋の技術メモ…

Jar に依存ライブラリを全て含めて配布する

ツールをみんなで共有したいときなど、各自にライブラリ Jar を用意してもらうのはなかなか難しいと思います。単純にダブルクリックやコマンドライン一行で使用できるよう、全てのライブラリを Jar ファイルに含めてしまう方法を紹介したいとおもいます。こ…

【幻の】VirtualBox マウス統合ツールのインストール

注意!! 結果失敗に終わりました。CentOS の GUI 環境を構築していない人には効果ありません。 3 回にわたり、 VirtualBox のインストールから、CentOS インストール・ネットワーク設定を取り上げました。VirtualBox を Windows にインストール - 山崎屋の…

VirtualBox に入れた CentOS のネットワーク設定

VirtualBox シリーズの第二弾です。 第一弾 VirtualBox を Windows にインストール - 山崎屋の技術メモ 第二弾 VirtualBox で作成した仮想マシンに CentOS をインストール - 山崎屋の技術メモ 第三弾 VirtualBox に入れた CentOS のネットワーク設定 ← この…