Oracleデータベースには、 "KEY"、 "VALUE"の列を持つ単純なテーブルがあります。 このテーブルをJavaコードにマップしたいのですが、 JPAでこれをまっすぐ実行していますか?または手動で行う必要がありますか?データベーステーブルをハッシュテーブルにマップ
ありがとう、 ray。
Oracleデータベースには、 "KEY"、 "VALUE"の列を持つ単純なテーブルがあります。 このテーブルをJavaコードにマップしたいのですが、 JPAでこれをまっすぐ実行していますか?または手動で行う必要がありますか?データベーステーブルをハッシュテーブルにマップ
ありがとう、 ray。
あなたは、コードのこの部分を使用することができます。
public Map<String, String> getAll() {
Map<String, String> ret = new HashMap<String, String>();
Query query = em.createQuery("select kvp from KeyValuePair kvp");
for (KeyValuePair kvp : query.getResultList())
{
ret.put(kvp.getKey(), kvp.getValue());
}
return ret;
}
あなたのテーブルが大きすぎる場合、あなたはメモリの問題を抱えて終わるかもしれないことを心に留めておくようにしてください。
Commons Configurationは、クラス値のようなJavaプロパティにキー値テーブルをマッピングするクラスがDatabaseConfigurationです。
キーと値は、基本的なまたは埋め込み型であるなら、あなたは
@ElementCollection
@CollectionTable(name = "table")
@MapKeyColumn(name = "KEY")
@Column(name = "VALUE")
protected Map<A,B> map;
を使用したい、彼らはentitesているなら、あなたは以下のためのドキュメントを見てしたいので、あなたが最もあるかを選択することができます適切な。
@OneToMany
@ManyToMany
@MapKey
@MapKeyClass
"について(KeyValuePairののkVp:query.getResultListは())" KeyValuePairのkVpのは何として参照するべきか? – rayman
'KeyValuePair'は、JPAを介して移入する永続クラスです。 –