問題タブ [spring-mvc-initbinders]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - Spring InitBinder、ネストされた Bean のリストのバインド日
プロパティとしてBeanDealSheetForm
を持つ Beanがあります。OrderDtos には 4 つの日付フィールドがあります。コントローラーのように日付形式をバインドしていました。ここで、日付フィールド形式の 1 つを次のように変更する必要があります。List
OrderDto
@InitBinder
MM/dd/yyyy
MM/dd/yyyy hh:mm:ss
CustomDateEditors
2を作成しようとしまし@InitBinder
たが、日付形式に変更はありませんでした。誰かが可能な解決策を持っている場合は、私を助けてください。
OrdersDto Bean を含む DealSheetBean は次のとおりです。
これが私のコントローラーです
java - json デシリアライゼーション用の initbinder の書き方は?
私は次のPOJOを持っています:
フォームからオブジェクトを受け入れて(構築)、String を HttpStatus に正しく変換すると、次のように記述しましたInitBinder
。
フォームについては、クールに機能します。
jsonを受け入れるコントローラーメソッドもあります:
次のように httpStatus を渡します。
しかし、正しく変換されず、次のエラー メッセージが表示されます。
私が理解しているように、それは正しく変換されません。
このプロセスをカスタマイズするにはどうすればよいですか?
java - HV000030: タイプのバリデーターが見つかりませんでした: java.math.BigDecimal
私はフィールドを持っています: Ordinality DB: ORDINALITY NOT NULL NUMBER(2)
- 入力を数字のみに制限したいのですが、正確な注釈構文はどうなりますか。
- 適切な値を指定しているときと、値を指定していないときにページを送信すると、エラーが発生します。
java - jspからフォームオブジェクトを結合するときに依存コレクションのSpring MVCミスID
ビューを返す次のコントローラーがあります。
次の ID を持つコレクションを返します。
jsp では、次のようにレンダリングします。
このオブジェクトを受け入れる次のコントローラーがあります。
terminalAdmin
デバッグでは、ID のない adminRoles が付属していることがわかります。
これを修正する方法は?
PS
spring-mvc - SpringMVC フォーム フィールドに必要なカスタム バインディング
次の SpringMVC の問題に遭遇しました。特定の Address サブオブジェクトを使用するドメイン オブジェクトがありますが、変換によって別のAddress オブジェクトを使用するには、ゲッター/セッターを微調整する必要があります。これはアーキテクチャ上の要件です。
次に、JSP で、入力テキスト フィールドを新しいAddress オブジェクト (変換の結果) にバインドします。これを処理する必要があります。この新しい 2 番目の Address オブジェクト ( anotherpackage.new.Address
) には、古いオブジェクトの「Street1」とは異なる「addressLine1」などのフィールドがあります。
私の問題は、この場合、バインディングのためにセッター setAddress() が呼び出されないことです (デバッガーで確認)。これに対する解決策はありますか?
java - Spring initBinder が CustomDateEditor を呼び出さない
次のコードを使用して、文字列入力フォーム パラメータを Bean の日付プロパティにバインドしようとしています。registrationDate
日付フォーマッタをbeanという名前の特定のプロパティにのみバインドしたいUser
。registrationDate
の呼び出しでフィールド名を指定するさまざまな方法を試し
ましたbinder.registerCustomEditor
が、呼び出されCustomDateEditor
ませんでした。
CustomDateEditor
以下のコントローラーのメソッドの最後のコメント行で示されているように、呼び出しからフィールド名を削除し、binder.registerCustomEditor
すべての日付フィールドに対してグローバルにする場合にのみ機能します。initBinderAll()
誰かが私を正しい方向に向けてくれることを願っています。
user.jsp :-
User.java :-
UserController.java :-
spring - Spring initbinder は、複数のカスタム エディター String.class を登録します。
ControllerAdvice クラスに次の initBinder があります
HtmlEscapeStringEditor を init バインダーに追加すると、文字列トリマーが機能しなくなりました。1 つのクラスに複数のカスタム エディターを登録する方法はありますか?
回答ありがとうございます