1. 程式人生 > >Hibernate同名不同包下的對映檔案同時載入問題

Hibernate同名不同包下的對映檔案同時載入問題

如圖,經過測試如果使用同名的對映檔案,雖然不同包下,但是還是會報錯:

java.lang.ExceptionInInitializerError
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunner.java:195)
at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:244)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:241)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: org.hibernate.InvalidMappingException: Could not parse mapping document from resource com/zhen/hibernate/n_1_with_table/po/Person.hbm.xml
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3951)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXmlQueue(Configuration.java:3940)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3928)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1368)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1826)
at com.zhen.hibernate.AppTest.<clinit>(AppTest.java:24)
... 22 more
Caused by: org.hibernate.DuplicateMappingException: duplicate import: Person refers to both com.zhen.hibernate.n_1_with_table.po.Person and com.zhen.hibernate.n_1.po.Person (try using auto-import="false")
at org.hibernate.cfg.Configuration$MappingsImpl.addImport(Configuration.java:3132)
at org.hibernate.cfg.HbmBinder.bindPersistentClassCommonValues(HbmBinder.java:669)
at org.hibernate.cfg.HbmBinder.bindClass(HbmBinder.java:583)
at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:321)
at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:174)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3948)
... 27 more
這是隻需要設定,對映檔案的auto-import屬性為false即可,



相關推薦

Hibernate同名不同對映檔案同時載入問題

如圖,經過測試如果使用同名的對映檔案,雖然不同包下,但是還是會報錯: java.lang.ExceptionInInitializerErrorat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native

Eclipse4.7使用基礎 使用快捷鍵導時,遇到不同同名類時,出現選擇框

cli 提示 初始 win com 出現 導包 eclipse4 2-2 os :windows7 x64 jdk:jdk-8u131-windows-x64 ide:Eclipse Oxygen Release (4.7.0)

protobuf引入不同的proto檔案

比如現在有個RankInfoRes.proto檔案,它的package是 com.road.ddt.proto.command現在有com.road.ddt.proto.game包的一個proto引用它1、引入部分package com.road.ddt.proto.game

JavaSE8基礎 不同的子類中,創建子類對象可以繼承到父類的 受保護/公有方法

cas jdk .sh imp java png pack ges pre os :windows7 x64 jdk:jdk-8u131-windows-x64 ide:Eclipse Oxygen Release (4.7.0) 代碼: 

JavaSE8基礎 不同,沒有關系的類可以訪問到 公有方法

default not private 改進 window highlight 學習 2-2 tca os :windows7 x64 jdk:jdk-8u131-windows-x64 ide:Eclipse Oxygen Release (4.7.0

Unity不同路徑檔案拷貝

void OnGUI() { DrawButtons(); } void DrawButtons() { if (flag == 1) { flag = 2; Debug.Log ("streamingAssetsPath = " + Application.

Linux編譯多個不同目錄檔案以及靜態庫、動態庫的使用

轉自:http://blog.csdn.net/luotuo44/article/details/16970841 一、  編譯不同目錄下的多個檔案 各個檔案的佈局如下:         head.h檔案的程式碼:

解決IDEA無法讀取配置檔案的問題

在包下建立兩個配置檔案,在程式碼中載入進來使用: 編譯執行後出現如下錯誤資訊: 意思是沒找到我的配置檔案test.properties 看了下class檔案的包,是這樣的: 這裡確實

Java讀取jar檔案

問題描述 讀取jar包下面的檔案,當程式在eclipse裡面的時候,classpath下的檔案可以讀取到,可一旦將程式打成jar包,則檔案讀取不到 解決方案 //獲取InputStream流的時候,使用下面的方式獲取,在eclipse工程/jar包下都不會出錯 //path裡

hibernate與資料庫表的對映檔案詳解(Customer.hbm.xml)

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC     "-//Hibernate/Hibernate Mapping DTD 3.0//EN" &nb

Hibernate 級聯操作,對映檔案中的預設的Lazy屬性導致的異常

hibernate中的延遲載入策略一定程度上降低了記憶體開銷,但是有時候使用會出現不想要的異常。 首先,hibernate hbm 中lazy屬性(true|false),在hibernate中預設lazy是true。 Hibernate中允許使用延遲載入的地方主要有以下

03. 對映檔案載入方式和Hibernate.properties的使用

對映檔案的載入方式和Hibernate.properties的使用 對映檔案的載入方式 我們通常將Hibernate的對映檔案配置在Hibernate的核心配置檔案中,因此當Configuration物件載入配置檔案時,也會載入配置在其中的對映檔案。如果

Java 掃描指定檔案

第一種方法:利用google的guava掃描指定的包 StringBuffer value = new StringBuffer(); String packageName = "com.business.service.impl"; ClassPath classpat

Linux編譯多個不同目錄檔案以及靜態庫、動態庫的使用

先看兩篇博文,作為基礎知識。如果對C/C++編譯連結過程都瞭解的話,可以跳過不看。一、  編譯不同目錄下的多個檔案各個檔案的佈局如下:       head.h檔案的程式碼:#ifndef  HEAD_H#define  HEAD_Hint add(int a, int b);  #endif  /*HEAD

mybatis的mapper對映檔案載入(resource方式,class方式,以及掃描)

在SqlMapConfig.xml全域性配置檔案中進行配置 1.resource方式載入對映檔案 <mappers> <!-- 這是resource方式載入配置檔案 --> <mapper resource="sqlmap/User

使用Python 遞迴合併不同目錄檔案

背景 專案中, 由網路爬蟲爬取的日誌檔案, 需要匯入到 hive 資料倉庫中, 但日誌檔案包含很多的小檔案, 散落在許多子資料夾下. 總所周知, 當 hive 的輸入端如果由許多小檔案組成的話, 每個小檔案都會啟動一個 map 任務, 如果檔案多而小, 會

微信小程式不同狀態的分頁載入

之前做小程式的時候有一個需求是訂單列表有幾個不同訂單狀態的選項卡,要求之間點不同的訂單狀態頁面不重新整理,而且也要做分頁,所以比較棘手的問題就是每次分頁的資料不會錯亂,要準確的插入到指定的狀態之中去。我的思路是這樣的,page,offset,total,dataend全部設定

自動搜尋不同位置的properties檔案載入

在專案開發中,對於一些程式執行的引數可能經常需要根據實際情況修改或調整,所以這些引數我們不會在程式碼中寫死,而是它們儲存在properties(或xml)檔案中,以方便修改。這時就需要智慧載入要配置檔案,如何智慧載入,我想要的載入順序: 1. jar包所在目錄(載入jar

spring-boot不同結構同名類衝突導致服務啟動失敗解決方案

專案背景:   兩個專案的包結構和類名都很多相同,於是開始考慮使用加一級包進行隔離,類似於這種結構 但是在啟動的過程中,丟擲來這樣的異常: 1 2 3 4 5 6 7 8 9 Caused by: org.springframework.

在Eclipse手動搭建SSH框架,並使用Hibernate外掛反向生成實體類和關係對映檔案

寫在前面: 接觸SSH框架有一段時間了。在整合實戰的過程中遇到了各種各樣的問題,最後都一一解決了。 下面記錄一個SSH框架整合實戰的小演示,這個演示旨在記錄學習SSH框架的艱辛過程。 重點知識: 1,在Eclipse中下手動搭建SSH框架,並把SessionFac