..


スポンサーリンク

データアクセス - HibernateとJPAを使用してORMレイヤーを作成する

今すぐHibernate 3にJPA 2を使用してORMレイヤーを作成する方法を見てみましょう(このレッスンの正しい理解のための、それは読者がデータソースとHibernateとJPAの操作に関する基本的な知識を持っていることを前提としています)。

我々は、DBがあると仮定MySQLは我々のマシンにインストールされて、最初のが私たちのDBに接続する当社のapplicationContext.xmlをデータソースを定義しましょう:






 <! - データソース - >







 <bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">



  



 <property name="d​​riverClassName" value="com.mysql.jdbc.Driver" />



  



 <property name="url" value="jdbc:mysql://localhost:3306/mrweb" />



  



 value="mrweb" /> <property name="username"



  



 value="s3cret" /> <property name="password"







 </ビーン>



かつて我々は、ファイルのMETA-INF/persistence.xmlにあるJPA 永続性ユニットの作成 ​​したデータソースを作成します。





 <?xmlバージョン="1.0"エンコード="UTF - 8"?>







 <持続性のxmlns ="​​http://java.sun.com/xml/ns/persistence"



  



 xmlns名前:XSI ="http://www.w3.org/2001/XMLSchema-instance"



  



にxsi:schemaLocation属性="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"



  



バージョン="2.0">







 <persistence-unit name="pu" transaction-type="RESOURCE_LOCAL" />







 </持続性>



この時点では、HibernateとJPAと統合する準備が整いました。





 <! - JPAとHibernate - >







 <bean id="jpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">



  



 <property name="d​​atabase" value="MYSQL" />



  



 <property name="showSql" value="true" />



  



 <property name="generateDdl" value="true" />







 </ビーン>



この私たちのcreaimo EntityManagerFactoryをすることなくそれが私たちのEntityMangerにDAOを注入できるようになります。





 < - !工場長のENTITY - >







 <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">



  



 <property name="d​​ataSource" ref="myDataSource" />



  



 <property name="persistenceUnitName" value="pu" />



  



 <property name="jpaVendorAdapter" ref="jpaVendorAdapter" />







 </ビーン>



エンティティの例では、我々は現在、車を作成します。





 it.mrwebmaster.hibernateパッケージ;









 java.util.Dateをインポートすること;









 javax.persistence.Column輸入;







 javax.persistence.Entityの輸入;







 javax.persistence.GeneratedValueの輸入;







 javax.persistence.Id輸入;







 javax.persistence.PersistenceUnitの輸入;









 @エンティティ







 @ PersistenceUnit(ユニット名="缶")







パブリッククラスの車{





  



 @オーバーライド



  



公共の文字列のtoString(){



    



リターン"カー[ID ="+ ID +"名前="+名+"、年="+年間+"]";



  



 }





  



 @ Idを



  



 @ GeneratedValue



  



プライベート文字列のid;



	

  



 @コラム



  



プライベート文字列名;





  



 @コラム



  



プライベート日付年;





  



公共整数getId(){



    



 idを返す。



  



 }





  



公共の文字列のgetName(){



    



名前を返します。



  



 }





  



公開日のgetYear(){



    



年を返します。



  



 }





  



します。public void setId(整数ID){



    



 this.id = ID;



  



 }





  



公共ボイドのsetName(String name)を{



    



 this.name =名前;



  



 }



	

  



公共ボイドsetYear(日付年){



    



 this.year =年;



  



 }







 }



ID、名前、およびYear、Id列は、Hibernateによって自動的に生成される私たちの主キーである:私達のエンティティは、3つの列のみを持っています。
私たちの設定パラメータ"=真の法案"に指定されていること、Hibernateは自動的に私たちのDB内のテーブルを更新します。
'Sこの設定ラインnell'applicationContext xmlと注釈@ PersistenceUnitの使用。。





 <! - JPAの注釈 - >







 <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />



私たちのアプリケーションでエンティティのリストは、永続性ユニット内で、指定する必要がなくなります。

スプリングJavaのガイド
E -ラーニング
Linuxの(コース) Linuxの(コース)
オープンソースシステムへの完全なガイド。 49€から。
PHP(コース) PHP(コース)
動的なWebサイトを作成するためのフルコース。 49€から。
RubyとRuby on Rails(コース) RubyとRuby on Rails(コース)
RubyとRoRのと、ソフトウェアやWebアプリケーションを作成します。 39€から。
スポンサーリンク