Hibernate是一個高性能的對象/關(guān)系持久性和查詢服務(wù)許可下的開源GNU通用公共許可證(LGPL),并免費下載。在這一章中,我們要學(xué)習(xí)如何實現(xiàn)Struts2與Hibernate集成。如果你不熟悉與Hibernate,那么可以查看我們的Hibernate教程。
在本教程中,我會使用“struts2_tutorial”MySQL數(shù)據(jù)庫。我連接到我的機器上使用這個數(shù)據(jù)庫的用戶名“root”,并且沒有密碼。首先,你需要運行下面的腳本。此腳本創(chuàng)建稱為student ,并創(chuàng)建一個新的表,此表中的記錄數(shù):
CREATE TABLE IF NOT EXISTS `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `first_name` varchar(40) NOT NULL, `last_name` varchar(40) NOT NULL, `marks` int(11) NOT NULL, PRIMARY KEY (`id`) ); -- -- Dumping data for table `student` -- INSERT INTO `student` (`id`, `first_name`, `last_name`, `marks`) VALUES(1, 'George', 'Kane', 20); INSERT INTO `student` (`id`, `first_name`, `last_name`, `marks`) VALUES(2, 'Melissa', 'Michael', 91); INSERT INTO `student` (`id`, `first_name`, `last_name`, `marks`) VALUES(3, 'Jessica', 'Drake', 21);
接下來讓我們創(chuàng)建這是Hibernate的配置文件hibernate.cfg.xml中。
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="hibernate.connection.driver_class">c om.mysql.jdbc.Driver </property> <property name="hibernate.connection.url"> jdbc:mysql://www.yiibai.com/struts_tutorial </property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password"></property> <property name="hibernate.connection.pool_size">10</property> <property name="show_sql">true</property> <property name="dialect"> org.hibernate.dialect.MySQLDialect </property> <property name="hibernate.hbm2ddl.auto">update</property> <mapping class="com.yiibai.hibernate.Student" /> </session-factory> </hibernate-configuration>
讓我們通過hibernate的配置文件。首先,我們正在使用的MySQL驅(qū)動程序。然后,我們聲明 JDBC URL連接到數(shù)據(jù)庫。然后,聲明連接的用戶名,密碼以及池的大小。我們也表示,我們希望“show_sql”轉(zhuǎn)向真正看到SQL的日志文件中。請經(jīng)過Hibernate教程,了解這些屬性是什么意思。最后,我們設(shè)置了的映射類com.yiibai.hibernate.Student,我們將本章中創(chuàng)建。
接下來,這個項目需要一大堆的jar文件。附所需的JAR文件的完整列表的截圖:
大部分的JAR文件可以作為Struts的分布的一部分。如果有一個如GlassFish應(yīng)用服務(wù)器,WebSphere或JBoss安裝,那么可以得到的大部分jar文件從應(yīng)用服務(wù)器的lib文件夾。如果沒有,可以單獨下載的文件:
Hibernate jar files - Hibernate.org
Struts hibernate plugin - Struts hibernate plugin
JTA files- JTA files
Dom4j files - Dom4j
SLF4J files - SLF4J
log4j files - log4j
其余的文件,應(yīng)該能夠從struts2的分發(fā)得到。
現(xiàn)在讓我們來創(chuàng)建Hibernate集成所需的Java類。以下內(nèi)容Student.java:
package com.yiibai.hibernate; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name="student") public class Student { @Id @GeneratedValue private int id; @Column(name="last_name") private String lastName; @Column(name="first_name") private String firstName; private int marks; public int getId() { return id; } public void setId(int id) { this上一篇:Struts2 注釋類型下一篇:Password 示例