0

私は次のようにHibernateマッピングを使用しています:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <hibernate-mapping>
      <class entity-name="TestClass.TestClass" table="TestClass">
        <id name="id" type="integer" unsaved-value="any">
          <column name="TestClassId" not-null="true" />
          <generator class="assigned" />
        </id>

        <array name="arrayProp " table="arrayProp ">
          <key column="id" />
          <index column="ordre" />
          <element column="arrayItem" type="string" />
        </array>

     </class>
    </hibernate-mapping>

ここで、arrayPropに格納されている要素を取得したいので、次のクエリを作成しました。

select arrayProp from TestClass

そして私が得るのは:

 Wrapped Exception: No data type for node: org.hibernate.hql.ast.tree.IdentNode 
     \-[IDENT] IdentNode: 'arrayProp' {originalText=arrayProp}

arrayPropからデータを取得する方法を知っている人はいますか?助けてくれてありがとう?

4

1 に答える 1

0

クエリを使用してみてください:

String queryText = "select tableClass.arrayProp from TableClass";
Query query = session.createQuery(queryText);

次に、query.list()を使用すると、List(または、JPAのようなList)が得られると思います。getListを使用する場合、Object[]配列の最初の要素は文字列String[]の配列になります。

于 2012-08-09T12:11:10.117 に答える