問題タブ [hbmxml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Hibernate と IllegalArgumentException
休止状態のマッピングで次のエラーが発生します。
私はそれがどこで発生したのか理解できないようです.誰かが私を助けることができますか?
私のCategory.hbm.xml:
私のカテゴリクラス。
Advertentie.hbm.xml
Advertentie.java
最後のいくつかの log4j 行:
この永続的なエラーを修正するにはどうすればよいですか? もう何時間も画面を見つめています。
hibernate - 抽象クラスフィールドとサブクラスフィールドを使用して、休止状態で複数列の一意の制約をマップする方法
要するに:一意制約の1つのフィールドが抽象クラスのマッピングの一部であり、別のフィールドがサブクラスマッピングで定義されている、2列の一意制約を持つ休止状態のxmlマッピングを記述する方法はありますか?
長いバージョン: 私はAbstractCustomFieldValue
他の 2 つのクラス、いくつかのエンティティRefType
と別のエンティティを参照するクラスを持っていますCustomField
。AbstractCustomFieldValue
以下に示すように、いくつかの実装があります。
AbstractCustomFieldValue
は抽象クラスとしてマップされ、実装はサブクラスとしてマップされます。
との組み合わせは一意である必要がrefObjekt
あります。customField
このマッピングでこれを達成する方法はありますか?
customField
ハイバネートせずにデータベースに一意のキーを定義するか、抽象マッピングから削除してサブクラス マッピングに配置するオプションがまだあります。
しかしcustomField
、抽象クラスのマッピングを維持しながら、休止状態の一意の制約を定義できる方法はありますか?
java - Java hbm.xml 1 列の複数インデックス
例えば、
field_1
とfield_2
2 つのインデックスの説明が必要な場合。次のことはできますか?またはそれを達成する方法は?
field_1
and field_2
will には、自分自身のインデックスが 2 つあります。
hbm.xmlで hibernate 3.6, 5.1.4.2 プロパティ マッピングを参照すると、 でindex
フィールドを割り当てることができるようonly one column
です。
PS、
このプロジェクトは古いもので、多くの人によって維持されているため、注釈構文を使用して を追加することはできませんindex
。
java - データ保存時の Hibernate TransientPropertyValueException
hibernate を使用して DB にデータを挿入しようとしています。これが私がそのアクションを実行する方法です
しかし、それは私に言うエラーを与えます
スレッド「メイン」org.hibernate.TransientPropertyValueException の例外: 非 null プロパティが一時値を参照しています - 現在の操作の前に一時インスタンスを保存する必要があります
ここに私の学生の詳細エンティティがあります
My StudentDetails hbm.xml
私のサブジェクトエンティティは次のようになります
Subject.hbm.xml
SubjetcHasStuDetails エンティティは次のとおりです。
SubjectHasStuDetials.hbm.xml
誰かがこのエラーについて私を助けてくれますか...ありがとう..
java - Hibernate 5 のマッピングが見つからない例外を修正するには?
こんにちは、私は休止状態が初めてで、現在、実際に何かをしようとしています。しかし、いくつかのエラーがあります。
プロジェクトで休止状態を使用しようとしています。チュートリアルを読み、Hibernate を Java Maven プロジェクトに統合し始めました。まず、次の依存関係を追加しました。
次のステップは、hibernate.cfg.xml ファイルを src/main/resources ディレクトリに追加することでした。このファイルは次のようになります。
次にUserInfo.java
、マッピングuser_info
テーブルを作成して中src/main/java/milkiv/mytestproject/models/UserInfo.java
に入れ、中UserInfo.hbm.xml
に入れたファイル src/main/resources/milkiv/mytestproject/models/UserInfo.hbm.xml
。
UserInfoManager
次のようなクラスも作成しました。
メソッドのテストを作成しようとすると、ファクトリー初期化のコンストラクター add(UserInfo user)
で失敗しました。UserInfoManager
Mapping (RESOURCE) not found : milkiv/mytestproject/models/UserInfo.hbm.xml : origin(milkiv/mytestproject/models/UserInfo.hbm.xml)
そのため、最終的には場所がわかりましたが、これを修正する方法がわかりません。stackoverflow でこの質問に対する多くの回答を読みましたが、誰もこのエラーを修正するのを手伝ってくれませんでした。
この問題を解決するためのアイデア、ヘルプ、説明をいただければ幸いです...
完全なスタック トレース: マッピング (リソース) が見つかりません: milkiv/mytestproject/models/UserInfo.hbm.xml: origin(milkiv/mytestproject/models/UserInfo.hbm.xml) org.hibernate.boot.MappingNotFoundException at org.hibernate.boot .spi.XmlMappingBinderAccess.bind(XmlMappingBinderAccess.java:56) org.hibernate.boot.MetadataSources.addResource(MetadataSources.java:274) org.hibernate.boot.cfgxml.spi.MappingReference.apply(MappingReference.java:70) ) org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:413) で org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87) で org.hibernate.cfg.Configuration.buildSessionFactory( Configuration.java:692) の org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:724) の milkiv.mytestproject.managers.UserInfoManager.(UserInfoManager.java:22) milkiv.mytestproject.managers.UserInfoManagerTest.testAdd(UserInfoManagerTest.java:24) で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ) org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java の java.lang.reflect.Method.invoke(Method.java:497) :44) org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) で org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) で org.junit.internal. org.junit.runners.BlockJUnit4ClassRunner の runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)。runNotIgnored(BlockJUnit4ClassRunner.java:79) org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71) org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49) org.junit.runners.ParentRunner $3.run(ParentRunner.java:193) org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) org.junit. runners.ParentRunner.access$000(ParentRunner.java:42) org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) org.junit.runners.ParentRunner.run(ParentRunner.java:236) org .apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) の sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) の sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) の sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl. java:43) で java.lang.reflect.Method.invoke(Method.java:497) で org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) で org.apache.maven.surefire .booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess (ForkedBooter.java:115) org.apache.maven.surefire.booter.ForkedBooter.main (ForkedBooter.java:75) で(JUnit4Provider.java:112) で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) で、sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) で、sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) でjava.lang.reflect.Method.invoke(Method.java:497) で org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) で org.apache.maven.surefire.booter.ProviderFactory $ProviderProxy.invoke(ProviderFactory.java:165) の org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) の org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java) :115) org.apache.maven.surefire.booter.ForkedBooter.main (ForkedBooter.java:75) で(JUnit4Provider.java:112) で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) で、sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) で、sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) でjava.lang.reflect.Method.invoke(Method.java:497) で org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) で org.apache.maven.surefire.booter.ProviderFactory $ProviderProxy.invoke(ProviderFactory.java:165) の org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) の org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java) :115) org.apache.maven.surefire.booter.ForkedBooter.main (ForkedBooter.java:75) でNativeMethodAccessorImpl.invoke0(Native Method) の sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) の sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) の java.lang.reflect.Method.invoke(Method. java:497) org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) で org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) で org org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter .ForkedBooter.main(ForkedBooter.java:75)NativeMethodAccessorImpl.invoke0(Native Method) の sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) の sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) の java.lang.reflect.Method.invoke(Method. java:497) org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) で org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) で org org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter .ForkedBooter.main(ForkedBooter.java:75)org.apache.maven.surefire.util で java.lang.reflect.Method.invoke(Method.java:497) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) で (NativeMethodAccessorImpl.java:62) を呼び出す.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory) .java:85) org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) で org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) でorg.apache.maven.surefire.util で java.lang.reflect.Method.invoke(Method.java:497) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) で (NativeMethodAccessorImpl.java:62) を呼び出す.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory) .java:85) org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) で org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) でorg.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) の org.apache.maven.surefire.booter.ProviderFactory の Surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)。 org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) の invokeProvider(ProviderFactory.java:85) org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) のorg.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) の org.apache.maven.surefire.booter.ProviderFactory の Surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)。 org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) の invokeProvider(ProviderFactory.java:85) org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) のbooter.ForkedBooter.main(ForkedBooter.java:75)booter.ForkedBooter.main(ForkedBooter.java:75)
更新 誰かが必要な場合は、@ v.ladynev回答のコメントで解決してください。
java - 2 つの外国語キーを使用した Hibernate マッピング
昨日から、このエラーを修正しようとしました。マッピングdbのどこに問題があるのか わかりません。courseSubcaegro を追加したときに問題が発生しました
コース hbm:
コースモデル:
サブカテゴリー hbm:
サブカテゴリ モデル:
コースサブカテゴリ hbm:
CourseSubcategory モデル:
ハイバネート cfg の一部:
そして最後にスタックトレース:
java - hibernate マッピング注釈を hbm.xml ファイルに変換する
このような休止状態のマッピング アノテーションがあり、それを xml に変換する必要があります。
これが私のSQLテーブル構造です:
どうすればいいですか?