jpa--No Persistence provider for EntityManager named xx

前幾天跟着傳智博客的黎活明老師學習作一個電子商務網站--巴巴運動網(http://www.babasport.com/),老師講解的很詳細這也是以他爲主開發的購物網站,可想而知老師費了多少精力,雖然暫時沒有可以盈利運營,我想這不算什麼,老師可以無私的把源碼分享給咱們而且還有配套視頻(http://www.itcast.cn/itcast_static/babaSport_video.htm),把整個項目軟件開發流程清晰地展示給J2EE愛好者以供學習,在此感謝黎活明老師!!java

在初時階段搭建jpa開發環境是把全部用到的jar文件依次加到了User Librarary裏:mysql

同時也在web工程的類路徑下新建了META-INF文件夾web

並在此文件夾下面新建了persistence.xmlspring

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
 xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"  version="1.0">  
  
<persistence-unit name="itcast" transaction-type="RESOURCE_LOCAL">  
   <provider>org.hibernate.ejb.HibernatePersistence</provider>
   <properties>  
    <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" />  
    <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" />  
    <property name="hibernate.connection.username" value="root" />  
    <property name="hibernate.connection.password" value="123456" />  
    <property name="hibernate.connection.url" value="jdbc.mysql://localhost:3306/itcast?useUnicode=true&amp;characterEncoding=UTF-8" />  
    <property name="hibernate.max_fetch_depth" value="3" />  
    <property name="hibernate.show_sql" value="true" />  
    <property name="hibernate.hbm2ddl.auto" value="update"/>  
    <property name="hibernate.jdbc.fetch_size" value="18" />  
    <property name="hibernate.jdbc.batch_size" value="10" /> 
    <property name="hibernate.format_sql" value="true" />   
   </properties>  
  
</persistence-unit>  
  
</persistence>

 

然後使用單元測試測試jpa搭建平臺是否成功是報出以下異常sql

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named itcast
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:89)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:60)
	at junit.test.Test.main(Test.java:13)

因而那個着急啊,到不少網站上結果仍是沒有答案,一連好幾天都沒有一點進展,直到有一次在soso問問上看到一位哥們一樣出現如此狀況,這位哥們卻本身解決了,不得不說是牛逼的人啊,我都快放棄了,他回覆說:「hibernate版本不同 配置文件的DTD聲明不app

 同」我又有了一絲但願,想到了黎活明老師曾經開的spring2.5教程視頻裏關於jpa的環境搭建視頻,看了一點後,同時下載了ide


解壓後選用了幾個核心文件後異常解除單元測試

我終於鬆了口氣,「hibernate版本不同 配置文件的DTD聲明不學習

」這個解釋我也只好同一類,以前還覺得就卡在這裏解決不了了呢,很是感謝那位哥們的提醒。。測試

相關文章
相關標籤/搜索