jpa使用 at least one user library must be selected問題

來源:互聯網
上載者:User

at least one user library must be selected實際就是建立一個目錄,匯入三個包即可

①、 eclipselink.jar

②、javax.persistence.source_2.1.0.v201304241213.jar

③、javax.persistence_2.1.0.v201304241213.jar

(註:本系列筆記是在學習尚矽谷JPA課程的時候寫下的,結合課程內容和自我理解,方便自己以後進行複習)

一、在建立JPA之前看看什麼是JPA

1、Java Persistence API:用於對象持久化的 API

2、Java EE 5.0 平台標準的 ORM 規範,使得應用程式以統一的方式訪問持久層

3、結合下面兩幅圖片進行理解:

JPA功能示意圖:

Figure 1.1

JDBC功能示意圖:

Figure 1.2

4、JPA和Hibernate的關係

JPA 是 hibernate 的一個抽象(就像JDBC和JDBC驅動的關係):

——JPA 是規範: JPA 本質上就是一種 ORM 規範,不是ORM 架構 —— 因為 JPA 並未提供 ORM 實現,它只是制訂了一些規範,提供了一些編程的 API 介面,但具體實現則由 ORM 廠商提供實現

——Hibernate 是實現: Hibernate 除了作為 ORM 架構之外,它也是一種 JPA 實現

從功能上來說, JPA 是 Hibernate 功能的一個子集

二、建立JPA工程之前需要解決一個問題:at least one user library must be selected

問題描述:在Workspace中右鍵,new → JPA Project,選擇JAP version為2.0。此時,嚮導中的Finish是灰色的,不能夠點擊完成。沒辦法,只好點擊Next看看,一路Next下去看到如下圖Figure 2.1所示這樣一個問題:at least one user library must be selected。

Figure 2.1

沒有辦法建立JAP工程,只好網上搜尋,找到一篇歪果仁寫的一篇博文,很好的解決了我這個問題:

http://www.javabeat.net/eclipselink-jpa-installation-configuration/

下面將博文要點整理成如下中文:

這篇文章將向你介紹如何安裝和使用EclipseLink-JPA:

1、安裝EclipseLink JAR 檔案 從  https://www.eclipse.org/eclipselink/downloads/  處下載  EclipseLink 2.5.2 Installer Zip (38 MB)  資源(也可以選擇其它版本)。EclipseLink中提供了所有持久化服務的的實現。 持久化服務將會用到下面三個jar包:()

①、 eclipselink.jar

②、javax.persistence.source_2.1.0.v201304241213.jar

③、javax.persistence_2.1.0.v201304241213.jar 將下載好的EclipseLink 2.5.2壓縮包解壓到任何你想用於完成安裝的檔案夾中。我將檔案解壓到 “.\workspace\libraries\EclipseLink 2.5.2” 檔案夾下。

2、在Eclipse IDE中設定 JPA Facet

首先在Eclipse中建立一個動態web工程,為我們後續添加 JPA facet 作準備。步驟如下:

①、開啟 Eclipse IDE

②、建立一個動態Web工程

③、在剛剛建立好的工程上點擊右鍵,選擇properties

④、在左側那一列中點擊 “Project Facets”

⑤、然後在右側選中 JPA 選項,同時選擇 JPA version 為2.0。如下圖Figure 2.2所示:

Figure 2.2

這裡有一個要注意的,因為有後續的很多設定要完成,所以在選擇JPA和Version以後不能直接點擊OK,而是要點擊上圖中下面部分標註的“Further configuration ...”連結來進行後續配置。這個操作將會開啟一個新的對話方塊用於配置JPA Facet。

3、添加 JPA Facet

新彈開的對話方塊如下圖Figure 2.3所示。使用者可以在這個對話方塊中添加必須的庫來實現JPA。

Figure 2.3

①、對話方塊上端的platform預設情況下是“Generic 2.0”,我們可以依據我們自己下載的EclipseLink版本來進行修改。我下載的是2.5.2版本,所以如Figure 2.3所示選擇platform為EclipseLink 2.4.x/2.5.x版本

②、JPA implementation菜單不需要做任何修改。“User Library” type將會允許使用者添加JPA庫

③、點擊右側的“Manager Libraries”。除此之外,另外一個實現方法就是點擊“Download Library”來進行下載庫,但是這裡下載實在是太慢,所以不使用它。

④、點擊“Manager Libraries”以後會彈出一個對話方塊,在新的對話方塊中點擊“New”。

⑤、“New”以後又會彈出一個對話方塊,要我們填寫庫的名字,我填寫為“EclipseLink 2.5.2”。點擊OK。

到目前為止,我們已經做好了添加jar包的前期準備。接下來就是添加上面“1、安裝EclipseLink JAR 檔案”這一步中提到的那三個jar包了。到目前的效果圖如下Figure 2.4:

Figure 2.4

4、配置Library

配置Library需要我們添加JPA實現所必須的jar包。按照下面的步驟來完成配置:

①、點擊“Add External JARs...”(也就是Figure 2.4圖中紅色框中的按鈕)

②、添加 eclipselink.jar,它位於“.\workspace\libraries\EclipseLink 2.5.2\jlib”檔案夾下面

③、添加 “.\workspace\libraries\EclipseLink 2.5.2\jlib\jpa”檔案夾下 javax.persistence.* 開頭的jar包(也就是前面說的後兩個jar包)。如Figure 2.5所示

Figure 2.5

④、點擊下端的OK按鈕,會關閉添加library的對話方塊。

⑤、但是,為了避免JPA Facet報“At least one user library must be selected”這個錯誤。我們選擇剛剛產生的library

⑥、點擊OK。

到現在為止,前面提到的At least one user library must be selected錯誤已經得到瞭解決。到這裡我們再回頭去建立一個JPA工程就沒有什麼問題了。但是,歪果仁的這篇文章的目的是為了在動態Web工程中建立一個JPA環境。

這個是很有必要的,想想也是,現在單純為了學習建了一個JPA工程,以後做Web工程的時候就需要建立一個動態Web工程了。

而且,後面的兩個步驟還是挺有意思的,所以,這裡是插敘,下面繼續翻譯歪果仁的文章。

到現在為止我們建立的動態web工程已經能夠使用JPA了。但是,JPA是一個和關係型資料庫相聯絡的持久化服務。所以,接下來我們就需要建立一個資料庫連接

5、建立資料庫連結(新意在於可以在配置的同時完成連結的測試工作)

一旦你建立完成了一個user library,接下來的工作就是建立一個資料庫連接。最後一個對話方塊應該如Figure 2.6所示:

Figure 2.6

為了建立資料庫的連結,按照以下步驟進行:

①、點擊“Add Connection...”超連結(Figure 2.6中有標註)

②、Connection Profile 對話方塊將會彈出

③、選擇工程中在對話方塊中選擇工程使用的資料庫種類。本教程中假設你使用的是MySQL資料庫。

④、修改連結的名字,點擊Next

⑤、填寫“Specify a Driver and Connection Details”表單。在最初的時候可能彈出的對話方塊中沒有驅動可以選擇,這個時候我們需要手動的添加相關驅動,步驟如Figure 2.7和Figure2.8所示:

Figure 2.7

Figure2.8

點擊上面的Figure 2.8中的OK以後,新的driver就添加完成了。隨後就是在Figure 2.9中修改資料庫名,填寫使用者名稱和密碼,然後點擊“Test Connection”測試資料庫連接是否成功:

Figure 2.9

有意思的是,測試通過會彈出一個 ping successed! 提示框,如Figure 2.10所示:

Figure 2.10

⑥、在第⑤步的末尾,我們已經為JPA工程準備好了資料庫連接

⑦、點擊Figure 2.9中的finish按鈕

⑧、點擊finish以後對話方塊將會關閉,所以要確定串連已經被選中

⑨、點擊,OK關閉Further configuration dialog。繼續點擊OK關閉project facets

現在,你已經建立完成了一個新的動態web工程,同時為它配置好了JPA環境。在eclipse左側的導覽列裡面你可以在src下看見一個META-INF檔案夾了,該檔案夾下面有一個persistence.xml檔案。

6、配置persistence.xml檔案

如果你按照步驟進行到這裡了,而且所有步驟都成功操作了。現在是時候“編輯”persistence.xml檔案的時候了,這個檔案將會協助我們串連我們的資料庫。

為了配置persistence.xml檔案,你需要雙擊開啟它。它會在單獨的一個xml檔案編輯器中開啟,在這個編輯器的底端會有很多的標籤。現在我們按照以下的步驟完成persistence.xml檔案的配置工作:

①、導航到Connection標籤

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.