それ以外の方法はありますか? 、あなたは、データベースのデフォルト値を使用しない場合は
が、あなたのJavaコードで、単純にデフォルト値 :
の方法は、より多くのあなたに合った、あなたのデータベースまたはhibernate like in this questionにデフォルト値を使用しています単にコードをきれいにして行うことを
のようなあなたの変数を初期化する明確なロジック:
private Integer myColumn = 100;
とにかく、あなたの質問:)
良いです答えてみましょうか?
アプリのニーズに応じて異なります。
- このフィールドを取得するためのロジックは、高い計算コストを持っている場合は、この計算コストを節約するために隠しフィールドを使用することができます
このようなすべてのフィールドの更新フォームの隠しフィールドを作成しかし、このデータをharcodedしている限り、これはあなたの問題ではないようです。更新時の再
のハードコーディングはアカデミックプログラミング外のオプションではありませんが、更新のフィールドが変更されるためにこの固定値を作ることができれば、あなたの最良のオプションは、これが更新する前にフィールド再生成することです。
UPDATE:
私はまた、ハードコードされた値を避けたいです。隠されたフィールドの安全性だけが懸念されています。私の現在のケースでは、セキュリティは大きな問題ではないと私は第二の選択肢に従うことができます。
はい、第2の選択肢があなたには良いです。明確にするために
、これはハードコーディングされます。すなわち:
int prize = 100;
をしかし、フォームで賞を尋ねると、あなたのような一定のフィールドを持っている場合:あなたが更新すると
// CONSTANT
private final Integer VAT = 18;
// ATTRIBUTE (filled by user in form)
int prize;
エンティティでは、毎回税額を払い戻し(例:floating point error dividingに注意してください)
// calculated field/attribute
double finalPrize = prize * VAT/100;
ハードコーディングおよび定数は我々の友人
;)
UPDATEありません、定数を使用しています
:SECURITY
が、私は
安全、これらの値を維持する必要がある場合、私は何を知って好奇心
セキュリティについては、簡単な方法がたくさんありますか?サーバー側で更新不可能な値を保持することで、クライアント側で必要な場合は、それらを検証し、必要に応じてコンテンツを非表示にするために暗号化することもできます(javascript
/hibernate
)。
お返事ありがとうございました – Anuja
お寄せいただきありがとうございます。お気軽にご連絡ください。 –
返信ありがとうございますが、値は固定されていません。デフォルト値は使用できません。私はハードコーディングされた値を避けたい。隠されたフィールドの安全性だけが懸念されています。私の現在のケースでは、セキュリティは大きな問題ではなく、私は第二の選択肢に従うことができます。私はこれらの値を安全に保つ必要があるかどうかを知りたいと思っています。 – Anuja