UML工具Visual Paradigm教程:如何在不使用SQL的情況下訪問數(shù)據(jù)庫(下)
Visual Paradigm是包含設(shè)計(jì)共享、線框圖和數(shù)據(jù)庫設(shè)計(jì)新特性的企業(yè)項(xiàng)目設(shè)計(jì)工具?,F(xiàn)在你只需要這樣單獨(dú)的一款模型軟件 Visual Paradigm就可以完成用UML設(shè)計(jì)軟件,用BPMN去執(zhí)行業(yè)務(wù)流程分析,用ERD企業(yè)設(shè)計(jì)數(shù)據(jù)庫的任務(wù)。Visual Paradigm現(xiàn)已加入在線訂購,現(xiàn)在搶購立享優(yōu)惠!
點(diǎn)擊下載Visual Paradigm最新試用版
使用生成的Hibernate代碼進(jìn)行編程
這是本教程的核心部分-使用生成的Hibernate代碼。
將記錄插入數(shù)據(jù)庫
1、打開ormsamples.CreateToyStoreData.java。
2、讓我們注釋掉將樣本數(shù)據(jù)插入數(shù)據(jù)庫的代碼,并編寫我們自己的代碼。
3、該示例代碼已經(jīng)具有用于對(duì)象創(chuàng)建的基本模板。讓我們對(duì)其進(jìn)行修改以插入我們自己的數(shù)據(jù)。讓我們使用setter方法將實(shí)例ltoystoreCategory的名稱定義為RC模型。
PersistentTransaction t = toystore.ToyStorePersistentManager.instance() .getSession().beginTransaction(); try { toystore.Category ltoystoreCategory = toystore.CategoryDAO.createCategory(); ltoystoreCategory.setName("RC Model"); ...4、對(duì)于ltoystoreProduct,將其名稱指定為數(shù)量300的1:24 RC Car。
... toystore.Product ltoystoreProduct = toystore.ProductDAO.createProduct(); ltoystoreProduct .setName(“ 1:24 RC Car”); ltoystoreProduct .setStockQTY(300); ...5、接下來,我們將ltoystoreCategory與ltoystoreProduct相關(guān)聯(lián)。由于一個(gè)類別包含許多產(chǎn)品(還記得我們將其定義為一對(duì)多關(guān)系嗎?),因此我們可以通過在生成的代碼中使用集合來關(guān)聯(lián)它們。集合的名稱是根據(jù)關(guān)聯(lián)中的角色名稱生成的,在這種情況下,它是Category類中的product變量。
... ltoystoreCategory.product.add(ltoystoreProduct); ...您的代碼應(yīng)如下所示。
6、現(xiàn)在,讓我們嘗試一下該程序。右鍵單擊代碼編輯器的空白區(qū)域,然后從彈出菜單中選擇“運(yùn)行方式”>“ Java應(yīng)用程序 ”。
7、再次打開SQL Server Management Studio,您會(huì)發(fā)現(xiàn)RC模型類別和1:24 RC Car產(chǎn)品已插入數(shù)據(jù)庫中。
從數(shù)據(jù)庫檢索記錄
讓我們使用Hibernate代碼檢索數(shù)據(jù)。
1、打開ListToyStoreData.java。
2、默認(rèn)情況下,示例代碼將對(duì)對(duì)象類型一一執(zhí)行查詢。但是由于我們的Category類和Product類是相互關(guān)聯(lián)的,因此我們可以利用該關(guān)聯(lián)從數(shù)據(jù)庫中檢索它們,而不必在單個(gè)請(qǐng)求中對(duì)其進(jìn)行查詢。讓我們?cè)u(píng)論一下樣本中的產(chǎn)品部分。
3、在查詢類別時(shí)編輯示例代碼,并附加代碼以打印其名稱。
... int length = Math.min(ltoystoreCategory.length, ROW_COUNT); for (int i = 0; i < length; i++) { System.out.println(toystoreCategorys[i].getName()); System.out.println("Containing Products:"); ...4、接下來,我們從類別中檢索產(chǎn)品集合,然后將其轉(zhuǎn)換為Product對(duì)象的數(shù)組。
... Product[] products = toystoreCategorys[i].product.toArray(); ...5、現(xiàn)在,遍歷數(shù)組以打印出與Category相關(guān)聯(lián)的產(chǎn)品信息。
... for (int j = 0; j < products.length; j++) { System.out.println(products[j].getName() + ", QTY: " + products[j].getStockQTY()); } ...6、右鍵單擊代碼編輯器的空白區(qū)域,然后從彈出菜單中選擇“運(yùn)行方式”>“ Java應(yīng)用程序 ”以試用示例。
您可以在“ 輸出”窗口中看到類別及其包含的產(chǎn)品的詳細(xì)信息。
=====================================================
更多Visual Paradigm相關(guān)資源,請(qǐng)點(diǎn)擊此處進(jìn)行查看~
想要購買Visual Paradigm正版授權(quán)的朋友可以咨詢慧都官方客服。
關(guān)注下方微信公眾號(hào),及時(shí)獲取產(chǎn)品最新消息和最新資訊