1

db(postgresql) にこのような名前のテーブルがいくつか"Test"あります。休止状態でこのテーブルから Java クラスを作成しようとすると、発生しません。このような名前のテーブルからクラスを取得しますtest。名前に引用符が含まれるテーブルを休止状態で表示するにはどうすればよいですか?

アップデート

多分私は正しくない質問を書いています。しかし、私はJavaクラスを作成できず、qoutesに名前を持つテーブルを逆生成する方法を知りたい. Type や Full などの名前が付けられているため、テーブル名と列名から qoutes を削除できません。

4

5 に答える 5

0

select * from """Test"""テーブル名が「Test」の場合は、データベースを確認してください 。

あなたのエンティティクラスは

@Entity
@Table(name = "\"\"\"Test\"\"\"")
public class Test {
}
于 2012-08-16T04:52:34.173 に答える
0

現在、注釈を使用していないようです...

したがって、"Test"テーブル名として使用する場合は、Bohemian で定義されている注釈を介して、POJO とテーブルのマッピングを定義する必要があります。

@Entity
@Table(name="\"Test\"")
public class Test {

Test.hbm.xmlまたは、テーブルとフィールドをJavaクラスと列にマップする必要がある場所を定義します。

于 2012-08-16T04:53:08.767 に答える
0

デフォルトでは、Hibernate はデータベース テーブル名がクラス名と同じであると想定しますが、@Tableアノテーションを使用してこの動作をオーバーライドできます。

@Entity
@Table(name="\"Test\"") // Will use "Test" (including the quotes) as the table name
public class Test {
于 2012-08-16T04:15:34.260 に答える
0

@Table アノテーションは、データを永続化するテーブルを指定するために使用されます。name 属性はテーブル名を参照します。@Table アノテーションが指定されていない場合、Hibernate はデフォルトでクラス名をテーブル名として使用します。したがって、データベースのテーブル名は「Test」であり、クラス名は「Test」を使用する必要があります。

于 2012-08-16T04:47:08.857 に答える