山崎屋の技術メモ

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

java の例外設計

プロジェクトの設計フェーズ序盤で、例外の扱いについて方針を決める必要がある。もし、自分が方針を決めるとしたらこうするというものをメモしておく。 1.検査例外と非検査例外の使い分け 最近では検査例外を悪と考え、すべて非検査例外にラップしてスロ…

Eclipse で Maven プロジェクトの作成から slf4J + logback の設定

どのようなプログラムでもログ出力は必ず必要になります。したがって、Eclipse でプロジェクトを作成したら、まずログ出力できるような設定を行ってしまいましょう。今回は現時点でロギングフレームワークのデファクトスタンダードである slf4j + logback で…

Java オーバーロードの条件

オーバーロードの話です。オーバーライドではありません。 違いを簡単に オーバーロードオーバーライドの違いを簡単に説明します。オーバーライドは、親クラスのメソッドを子クラスで定義しなおすことです。通常、メソッドに @Override アノテーションを付与…

Eclipse 関連記事のリンク集

Eclipse の設定まわりの記事など、思いついたときに書いていたら結構な記事数になった。一覧でまとまっていたほうが目的の記事を見つけやすいので、ここにまとめておく。今後、Eclipse 関連の記事を書いたら、これも随時更新していく予定。 インストール Ecl…

Java の引数、参照型は「参照の値渡し」

Java でメソッドを呼び出すときの引数についてのお話です。今回は参照型編。プリミティブ型(基本型)の記事はこちら。よく「Java ではすべて値渡し」って説明を初心者にしている人を見ます。決して間違いではないのですが、ちょっと不親切な気がします。 丁…

javaの引数 プリミティブ型(基本型)は値渡し

丁寧に説明しているサイトはいっぱいあるので、結論をメモしておきます。プリミティブ型(基本型)の引数は値渡しです。 public class Argument { public static void main(String[] args) { int a = 2; methodA(a); System.out.println("変数aの内容は[" + …

Spring Framework で管理されるオブジェクトはデフォルトでシングルトン(singleton)

タイトルに書いたとおりだが、Spring を使用する上でこれを常に頭に入れておかないと、とんでもないバグを仕込んでしまう。 実験してみる Spring のバージョンは 4.3.7 を使用しているが、他のバージョンでも、これに関しての仕様は同じ。フォルダ構成。pom.…

Eclipseの検索機能、スコープとは

Eclipse で複数のファイルから、特定の文字列を探すべく、ファイル検索をよく使うことがあります。ショートカットは Ctrl + H。今回は検索ダイアログの Scope についてまとめてみました。(Working set 以外)選択肢は4つで、意味は次のとおり。 選択肢 説明 …

Eclipse 検索ダイアログを整理する

Eclipse で、Ctrl + H もしくは、メニューの Search から、さまざまな検索がおこなえて便利である。しかし、その便利な機能の反面、検索ダイアログのタブが異常に多くて笑える。私は Java 開発がメインなので、使うのは File 検索がメインで、たまに Java 検…

Eclipse で Maven プロジェクトの作成から JDK バージョンの設定

前回は、コマンドラインでMavenプロジェクトを作成し、Eclipse にインポートする記事を書いた。yyama1556.hateblo.jp今回はより実践的に Eclipse を使用してMavenプロジェクトを作成してみる。また、なぜか作成したプロジェクトの Java バージョンが 1.5 に…

maven で作ったプロジェクトを Eclipse にインポートする

コマンドラインで作成した maven プロジェクトを Eclipse にインポートする手順を掲載する。普通は Eclipse で maven プロジェクトを作成すれば済むので、あまり利用場面はないかもしれないが、念のためメモしておく。 各種バージョン OS は Windows7。Eclip…

【postgresql】 SQL Shell (psql) でパスワードの入力を不要にする方法

Windows で postgresql をコマンドラインで操作する場合、インストールすると一緒についてくる SQL Shell を使用することがある。そのときサーバー・データベース名・ポート・ユーザ名・クライアントエンコーディングなどを入力する必要がある。こんな感じ。…

【java】DTO のテストコードを自動生成への道②

前回の記事はこちら。yyama1556.hateblo.jp とりあえず動くものを作った。github.comDtoTestGenerator と命名した。今のところ対応している型は int, long, Integer, Long, String のみ。テスト対象にできるクラスは 1 個 で、クラス名もハードコードとなっ…

java パッケージ配下のクラス一覧を取得 外部ライブラリは使用しない

外部ライブラリを使用せずにパッケージ配下のクラス一覧を取得する方法を調査した。DIコンテナなどは、「パッケージを指定して、その配下のクラスをコンテナに登録する」というのが一般的だと思うが、その仕組みを理解するのに役に立つ。あと、個人的な課題…

【Spring MVC】簡単なアンケートアプリで学習する。

Spring MVC でいろいろ勉強していきたいので、ベースとなるアプリを作った。一応動くが、まだ実装は不十分である。今後、少しずつ不足している箇所を実装していきたい。 アプリの動き 3 画面でできている。トップ画面はアンケートの入力画面。ユーザに「年齢…