要將 Hibernate 整合到 Spring 框架中,請遵循以下步驟:新增 Maven 相依性;設定資料來源;建立 EntityManager Bean;設定事務管理器;啟用 Persistent Exception Translation。
如何將 Hibernate 整合到 Spring 框架?
引言
Hibernate 是一個用於物件-關係映射(ORM) 的持久化框架,而Spring 是一個受歡迎的Java 應用程式框架。將 Hibernate 整合到 Spring 中可以簡化資料庫訪問,並提供企業級功能。
整合步驟
1. 新增依賴項
在Maven 專案的pom.xml 檔案中,新增下列依賴項目:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency>
2. 設定資料來源
在Spring 設定檔中(例如application.properties),設定資料庫連線詳細資料:
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/mydb spring.datasource.username=user spring.datasource.password=password
3. 建立EntityManager Bean
建立一個EntityManagerFactoryBean Bean 以管理與資料庫的互動:
@Bean public EntityManagerFactory entityManagerFactory() { HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter(); vendorAdapter.setGenerateDdl(true); LocalContainerEntityManagerFactoryBean factory = new LocalContainerEntityManagerFactoryBean(); factory.setDataSource(dataSource()); factory.setJpaVendorAdapter(vendorAdapter); factory.setPackagesToScan("com.example.myproject.entity"); return factory.getObject(); }
4. 設定事務管理器
建立一個PlatformTransactionManager Bean 以管理交易:
@Bean public PlatformTransactionManager transactionManager(@Qualifier("entityManagerFactory") EntityManagerFactory emf) { JpaTransactionManager transactionManager = new JpaTransactionManager(); transactionManager.setEntityManagerFactory(emf); return transactionManager; }
5. 啟用Persistent Exception Translation
透過在Spring 設定檔中新增下列屬性,啟用Persistent Exception Translation:
spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true
實戰案例
以下Java 程式碼展示如何使用Hibernate 儲存一個實體:
@Entity public class Person { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; private String name; } @Service public class PersonService { @Autowired private EntityManagerFactory entityManagerFactory; public void save(Person person) { EntityManager entityManager = entityManagerFactory.createEntityManager(); entityManager.getTransaction().begin(); entityManager.persist(person); entityManager.getTransaction().commit(); } }
以上是Hibernate 如何與 Spring 框架整合?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver Mac版
視覺化網頁開發工具

記事本++7.3.1
好用且免費的程式碼編輯器

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。