MyEclipse持續性開發教程:用JPA和Spring管理資料(三)
MyEclipse紅運年貨節 線上購買低至69折!火爆開搶>>
本教程介紹了MyEclipse中的一些基於JPA / Spring的功能。有關設定JPA專案的基礎知識,請先閱讀JPA教程。 本教程主要關注MyEclipse中的JPA-Spring整合以及如何利用這些函式。您將學習到:
- 為JPA和Spring建立一個專案
- 反向設計一個資料庫表來生成實體
- 實現建立,檢索,編輯和刪除功能
- 啟用容器管理的事務
持續時間:30分鐘
沒有MyEclipse? 現在下載
三、寫一個應用程式
現在MyEclipse已經生成了所有這些程式碼,您可以快速地編寫您的業務邏輯。
JPA教程涵蓋了實體和DAO類所做的每個操作以及執行簡單場景的主要方法基本概述,其中包括:
- 建立一個新的實體並將其插入到資料庫中
- 檢索實體
- 更新實體
- 刪除實體
同樣,在本教程中,您將看到如何使用Spring獲取和使用DAO以及管理事務。這個演示的起點是RunJPA.java類,看看這個類的主要方法。
/* 1. Initialize the transactionManager and DAO */ ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("/applicationContext.xml"); txManager = ((JpaTransactionManager) ctx.getBean("transactionManager")); dao = ProductlineDAO.getFromApplicationContext(ctx); /* 2. Create a reference to our ID */ String productlineID = "Men Shoes"; /* 3. Save a new productline to the DB */ saveProductline(productlineID); /* 4. Load the productline from DB to make sure it worked */ loadProductline(productlineID); /* 5. Update the productline in the DB and check it */ updateProductline(productlineID); /* 6. Delete the productline from the DB */ deleteProductline(productlineID);
以藍色標記的程式碼部分是Spring呼叫,您可以從bean配置中檢索已配置的bean。 請注意,由於您正在手動管理事務,因此還可以從bean配置中檢索transactionManager。
其餘的專案#2 - #6簡單地呼叫每個 “do something”的方法。
3.1 儲存一個實體
第一個有趣的方法是saveProductline,此方法的目的是建立一個新的實體並將其儲存在資料庫中。
/* 1. Create a new Productline instance */ Productline newProductline = new Productline(productlineID, "Shoes formen.", "MenShoes", null); /* 2. Store our new product line in the DB */ TransactionStatus status = txManager .getTransaction(new DefaultTransactionDefinition()); dao.save(newProductline); txManager.commit(status);
首先,使用一些基本值建立新的Productline例項。 其次,使用transactionManager,事務在將實體儲存到資料庫之前就開始了。 儲存實體後,事務被提交。
手動管理事務的目的是因為作為開發人員,您知道“儲存”操作的範圍。根據應用程式的編寫方式,一些操作可以包含許多DB修改。 把這些全部包裝在一個單獨的交易中是非常重要的,以防萬一中途失敗。
3.2 檢索一個實體
下一個方法使用分配給它的ID從DB中檢索實體,並顯示其值; 這證實了儲存操作的工作。
/* 1. Now retrieve the new product line, using the ID we created */ Productline loadedProductline = dao.findById(productlineID); /* 2. Print out the product line information */ System.out.println("*NEW* Product Line [productLine=" + loadedProductline.getProductline() + ", textDescription=" + loadedProductline.getTextdescription() + "]");
注意在這個程式碼中,沒有使用事務。 原因是這個程式碼只執行一個讀操作而不是一個寫操作。 即使操作失敗,也不會影響資料庫中的資料。 所以,沒有必要保護使用交易的操作。
更多資訊敬請訪問MyEclipse中文網>>
相關文章
- MyEclipse持續性開發教程:用JPA和Spring管理資料(二)EclipseSpring
- MyEclipse持續性開發教程:用JPA和Spring管理資料(四)EclipseSpring
- MyEclipse持續性開發教程:用JPA和Spring管理資料(一)EclipseSpring
- MyEclipse持續性開發教程:用JPA和Spring管理資料(五)EclipseSpring
- 用MyEclipse JPA建立專案(三)Eclipse
- 可持續性從產品開發開始
- 用 MyEclipse 開發 Spring 入門操作EclipseSpring
- 快應用開發教程及資源彙總,長期維護,持續更新中。。。
- MyEclipse移動開發教程:設定所需配置的iOS應用(三)Eclipse移動開發iOS
- MyEclipse WebSphere開發教程:WebSphere 7安裝指南(三)EclipseWeb
- Spring Cloud 簡單教程 持續更新中SpringCloud
- 用MyEclipse JPA建立專案(一)Eclipse
- 用MyEclipse JPA建立專案(四)Eclipse
- 用MyEclipse JPA建立專案(二)Eclipse
- 軟體開發為何採用持續整合
- MyEclipse WebSphere開發教程:安裝和更新WebSphere 6.1, JAX-WS, EJB 3.0(三)EclipseWeb
- Spring Data JPA之Spring Data JPA快速入門(三)Spring
- 開發常識 持續更新~~
- Spring中JPA在異常後三種方法繼續事務Spring
- 對持續整合、 持續交付、持續部署和持續釋出的介紹
- Laravel 團隊任務管理系統(持續開發、優化)Laravel優化
- DBeaver安裝教程(開發人員和資料庫管理員通用資料庫管理工具)資料庫
- 微信小程式開發(持續更新)微信小程式
- 你可能需要的開發資源整理(持續更新)
- OSPO如何成為開源可持續性和安全性的關鍵槓桿
- Spring JPA資料庫連線MySQLSpring資料庫MySql
- 基於springmvc+spring-data-jpa+dubbo開發web應用SpringMVCWeb
- odrotbohm/jddd:使用Spring和JPA開發支援DDD概念的庫包Spring
- Spring Boot 2.x基礎教程:Spring Data JPA的多資料來源配置Spring Boot
- HP DP助中石油勘探開發研究院發展可持續性IT
- iOS開發常用巨集,持續更新中iOS
- HTTP非持續連線和持續連線HTTP
- Spring Data JPA 參考文件三Spring
- Jenkins 持續整合使用教程Jenkins
- 【持續更新】Eclipse使用教程Eclipse
- 持續整合、持續部署、持續交付、持續釋出
- Spring data jpa 外掛開發——解決規範和效率問題Spring
- gitlab和jenkins做持續整合構建教程GitlabJenkins