OpenCSV を使用して CSV ファイルを解析し、その値をCsvToBean
クラスを使用してモデル オブジェクト (OpenJPA エンティティ Bean) に直接バインドします。
ただし、問題は - CSV には (明らかに) として解析される値がいくつかありますがStrings
、プロパティに設定する必要があるDate
ため、基本的に CsvToBean クラスは書き込みメソッドを動的に呼び出そうとしているときに終了します (つまり、Date プロパティを設定しようとします)。生の文字列値で)。
OpenCSV 内に、各列をどのタイプにマップするかを指定できる機能はありますか? そうでない場合、これを容易にするためにどのクラスを拡張/再実装するかについての提案はありますか? ディレクトリの下の OpenCSV ソース配布で利用可能な他の戦略を調べ/test/au/com/bytecode/opencsv/bean/
ても、結論には近づきませんでした。
プロパティセッターをいじって、引数として渡される型を取得し、渡された値がまだない場合は解析しようとするジェネリックメソッドにすることができると思いますが、....永続性を使用していますOpenJPA Enhancer が突然ジェネリック セッターを嫌ったため、この「セッター ハック」が私たちの足を引っ張ったことを後で知りたいとは思いません。Date
Date
Date
私はこれについて数時間頭を悩ませてきました-おそらくリフレクションを使用して独自のBeanバインディングロジックを作成することで問題を解決できたはずですが、車輪の再発明は嫌いで、これができると感じています/希望を持っています既存の OpenCSV フレームワーク内で簡単に実行できます。
必要に応じてコードを投稿することもできますが、実際にはそれほど多くはありません。
何かご意見は?どうも。