問題タブ [apache-commons-beanutils]
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.
java - 新しいプロパティが作成されると、BeanUtils / test のテストが失敗するはずです
BeanUtils を使用して、一部の DTO クラスをドメイン クラスにマップしています (およびその逆)。(BeanUtils コピー プロパティを使用)
コードをテストしたい。誰かが DTO またはドメイン クラスのいずれかに追加のプロパティを作成した場合に失敗するテストを作成するにはどうすればよいですか。
私がまだ取り組んでいる私の試みは、BeanUtils.getPropertyDescriptors(class) をトラバースし、対応する getter メソッドを見つけて、各クラス (DTO およびドメイン) の等価性をテストすることです。
何かご意見は?
プロジェクトの依存関係の制約により、Dozer のようなものは使用したくありません。Spring 3 の beanutils を使用しています。
java - Bean プロパティのアクセスと注釈
bean.prop1.prop2
ゲッター/フィールド自体の注釈へのアクセスを許可しながら、プロパティアクセスのような BeanUtils を利用できる Java ライブラリはありますか?
たとえば、次のような Bean クラスがあります。
そして、探しているプロパティの値だけでなく、値が返されているそのフィールドに注釈が付けられた注釈も取得できるようにしたいと考えています。
両方の機能を使用できるライブラリはありますか? Commons BeanUtils を使用して値の純粋なプロパティ アクセスを行い、Plain Reflection を使用してプロパティの注釈を取得できますが、両方の機能を組み合わせる方法はないようです。
jsp - BeanUtils.populate()メソッドを使用したBeanオブジェクトのスコープは何ですか?
<jsp:useBean>
以前はBeanのスコープを決定する機能を備えたタグを使用していましpage or request or session or application
たが、現在はMVCアーキテクチャに移行し、BeanUtils
クラスを使用してBeanのプロパティを設定していますServlets
。SCOPE
この方法で提供されるデフォルトは何ですか?スコープを変更したい場合はどうすればよいですか?私は構文を使用しています:
BeanUtils.populate(bean, request.getParameterMap());
java - いくつかのプロパティー値を使用して Java Bean を複製する - BeanUtils
私は Java Bean を持っています。これを複製して新しいインスタンスを取得したいのですが、新しいインスタンスでは、いくつかのプロパティに値を持たせたいのですが、その他は複製/コピーしたくないものです。
例:-
を使用することもできますcopyProperties
が、似ているが小さいクラス構造を作成する必要があります。
も使えますcopyProperty
が、何度も書く必要があります。
これに対する良い解決策はありますか。
java - commons-beans BeanUtilsを使用してJavaBeanをネストされた名前のキー/値マップに変換します
BeanUtils を使用して、Properties ファイルを JavaBean に変換し始めます。BeanUtils.populate を使用すると、これをうまく行うことができます。しかし、JavaBean から Map へのレトロな変換を正しく行うことができます (単純な値のみが格納されます)。
BeanUtils ドキュメントの従業員クラスに基づくこのサンプルを参照してください。
結果 :
map2 が BeanUtils.describe メソッドを使用して「address(pro).city」や「subordinate[1].firstName」などのキーを実際に格納するために何が欠けていますか?
java - apache commons beanutils、プロパティ値を設定する方法は?
java、commons beanutilsで、プロパティ'address'と'creditCardList'をobjectに設定しようとしましたが、エラーが発生しました:
しかし、私はそこにこの方法を持っています。コードはここにあります:
java - PropertyUtils.copyProperties がサイレント モードで失敗するのはいつですか?
PropertyUtils.copyProperties()を使用して、リフレクションを介してオブジェクトのプロパティをコピーしていますが、以前はうまく機能していました。しかし最近、何もしないようになりました。
例外はスローされませんが、フィールドはコピーされません。ソース オブジェクトには null 以外のフィールドがありますが、ターゲット オブジェクトのすべてのフィールドは null のままです。
これを再現する方法がわかりません。私にとって、それは一貫して起こりますが、ここで公開することはできないプロジェクト内にあります. このプロジェクトは、いくつかのバイトコード操作を行う Play Framework を使用しているため、それが原因である可能性があります。
これを引き起こしている可能性のあるもの、またはデバッグ方法に関するアドバイスやアイデアはありますか? 私が試すことができる代替のフィールドコピーも大歓迎です (以前に一度 BeanUtils を試しましたが、覚えていないいくつかの警告のために PropertyUtils に切り替えました)。
java - BeanUtils-'describe'メソッドが誤った配列値を返す
Beanクラスをマップに変換したい(key =メンバーの名前、value =メンバーの値)。
BeanUtils.describe(beanClass);メソッドを使用しています。
(編集:commons-beanutils 1.8.3、jdk 1.6.0_20を使用していますが、commons-beanutils 1.5では機能します)
問題は、戻り値が正しくないことです(マップには、配列の最初の項目のみが含まれています)。
コード:
- 期待される出力:
key = myList、value = [first_value、second_value]
key = class、value = class $ Demo
- しかし、実際の出力は次のとおりです。
key = myList、value = [first_value]
key = class、value = class $ Demo
ご覧のとおり、配列には2つの値が含まれていますが、出力(およびマップ)には1つしか含まれていません。なぜですか?
ありがとう、
ベニー
java - BeanUtils を使用してキーと値のペアにシリアル化する
任意のデータを取得して MySQL データベースに格納する Java プログラムを作成したいと考えています。データは後で再度読み取ることができ、元のオブジェクト構造が再構築されます。
背景は、完了するために電子メールの確認が必要なフォーム用の汎用ツールが必要だということです。そう:
- ユーザーがフォームに記入し、
- データは上記のように保存されますが、
- データセットを識別する特定の UUID を含むリンクを含む電子メールがユーザーに送信されます。
- ユーザーがリンクをクリックし、
- サーブレットは、リンク内の UUID を使用して格納されたデータをロードし、データを処理します。
String/String または String/int ペアだけでなく、任意のデータに対してこれが機能することを望みます。ツールにデータを渡す手段として、org.apache.common.beanutils の LazyDynaBean を使用することを考えていました。
問題は、プリミティブだけでなく、値が Bean (Java Bean に制限しましょう) の場合でも、そのようなものをシリアル化する良い方法はありますか?
データベーステーブルは次のようになると思っていました
それはまったく実現可能ですか?DynaBean をこの構造に格納およびロードする方法について、誰かが私を正しい方向に向けることができますか? または、私が見逃した代替案はありますか?
本当にありがとう。
java - BeanUtils.cloneBean()ディープコピー
Bean内のすべてのオブジェクトがSerializable
インターフェースを実装している場合BeanUtils.cloneBean()
、ディープコピーを実行しますか?