-
Notifications
You must be signed in to change notification settings - Fork 0
Notes
hyukke edited this page Nov 25, 2019
·
12 revisions
その他ナレッジの覚書。
#equals(Enum)
より==
を使用した方がいい。
- 単一オブジェクトであることが保証されているため、
==
で問題ない - コンパイル時に型チェックが行われるため安全である
- 変数として使用された場合は、
null
の際にNullPointerException
が発生してくれるため状況がわかりやすい- たとえば
SampleEnum.ENUM1.equals(enumVal)
でenumVal
がnull
だった場合、例外ではなくfalse
になってしまう
- たとえば
- 参考
+
演算子よりjava.lang.StringBuilder#append(String)
の方がいい。
-
+
演算子では、コンパイル時に内部的にStringBuilder
への変換が行われる分だけ、処理が遅くなるため
クラスタ構成(AP サーバ複数台とロードバランサの構成など)の環境において、アクセスされたリクエスト処理で、セッションのオブジェクトが上手く生成されない可能性がある。
- 対象のクラスに
Serializable
が付与されていないことで発生する - セッションに格納するシリアライズ可能なオブジェクトが、複数のサーバのインスタンス間でレプリケート(セッションを複製)されるが、シリアライズ可能でないとその対象外になってしまう
- 参考