私はHibernateを初めて使用し、サンプルのJavaアプリをダウンロードして、より便利になるように変更しました。これまでのところ、私のアプリには、Javaアプリで定義されている2つのdbクラスがあります。Actor.javaとCity.javaです。 .hbm.xmlファイルは次のようになります。
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated Jun 17, 2009 11:42:48 AM by Hibernate Tools 3.2.1.GA -->
<hibernate-mapping>
<class name="sakila.entity.Actor" table="actor" catalog="sakila">
<id name="actorId" type="java.lang.Short">
<column name="actor_id" />
<generator class="identity" />
</id>
<property name="firstName" type="string">
<column name="first_name" length="45" not-null="true" />
</property>
<property name="lastName" type="string">
<column name="last_name" length="45" not-null="true" />
</property>
<property name="lastUpdate" type="timestamp">
<column name="last_update" length="19" not-null="true" />
</property>
</class>
</hibernate-mapping>
<hibernate-mapping>
<class name="sakila.entity.City" table="city" catalog="sakila">
<id name="cityId" type="java.lang.Short">
<column name="city_id" />
<generator class="identity" />
</id>
<property name="city" type="string">
<column name="city" length="45" not-null="true" />
</property>
<property name="countryId" type="string">
<column name="country_Id" length="45" not-null="true" />
</property>
<property name="lastUpdate" type="timestamp">
<column name="last_update" length="19" not-null="true" />
</property>
</class>
</hibernate-mapping>
このアプリはこれまでのところうまく機能しています。しかし、私の質問は、データベース内のActorやCityなどの何百ものオブジェクトを処理できるようにアプリを変更する必要がある場合、すべてのマッピングファイルを定義する必要があるかどうかです。プログラミング時にユーザーがクエリする可能性のあるdbオブジェクトがわからない場合は、すべてを定義する必要がありますが、それは不可能と思われるので、質問は次のとおりです。* .hbm.xmlファイルは必要ですか?ユーザーが必要なオブジェクトをクエリできるアプリを作成する必要があり、データベースに何が含まれているのかさえわからない場合は、そのようなアプリを作成する方法を教えてください。Hibernateで実行可能ですか?