未経験Javaエンジニア転職の記録

20代転職未経験エンジニア

52日目 バリデーション

作っていたシステムが完成した。

在庫を管理するシステムで、在庫の参照、追加、更新、削除などの機能をデータベースと連携させて作った。

今日は最後の仕上げでエラーチェック、バリデーションに使った一日だった。

エラーメッセージはmessagespropertiesに外部化。

主に、
@NotEmpty
@Size
@Pattern
の3つを使いバリデーションを行った。

@バリデーション.フィールド名
とすることで、フィールドごとにエラー分を振り分けることができる。

苦戦したのが@Patternでの正規表現

未入力を通し、入力値があった場合チェックする。

という記述がわからず、if文を使いごちゃごちゃしていたが、記号を組み合わすことで、未入力を通す正規表現が作れると知った。
先頭を表す「^」
末尾を表す「$」
を繋げて「^$」と書くことで未入力をパスすることができる。
なので、
「^$|[a-z0-9]」
などと書けば、入力があった場合、英数のみとする。
という正規表現が作れる。

正規表現は奥が深い。