您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 史上最简单的Hibernate入门简介
史上最简单的Hibernate入门简介其实Hibernate本身是个独立的框架,它不需要任何webserver或applicationserver的支持。然而,大多数的Hibernate入门介绍都加入了很多非Hibernate的东西,比如:Tomcat,Eclipse,Log4J,Struts,XDoclet,甚至JBoss。这容易让人产生Hibernate复杂难懂的误解,特别是打击了初学者的积极性。在这篇文章将不涉及Eclipse,log4j,Struts,Tomcat,XDoclet,和JBoss。本文的目的是演示一下Hibernate的安装过程以及最基本的功能,从而给初学者一个低得不能再低的入门门槛。下载文件你需要JavaSDK、Hibernate包、Ant包、和JDBCDriver。1、Hibernate包下载地址:=date&sort=desc2、Ant包下载地址:、JDBCDriver要根据你用的database来定,一般database官方网站上都会有。Hibernate支持常用的database,比如MySQL,Oracle,PostgreSQL,和MS-SQLServer。这些数据库都有JDBCDriver:OracleJDBCDriver下载地址(下载前必须同意Oracle协议书)下载地址下载地址下载地址=9f1874b6-f8e1-4bd6-947c-0fc5bf05bf71&displaylang=en4、将Hibernate包和Ant包分别解压至c:\dev\下(此目录不重要,你可以换其它任何目录)。配置环境1、你需要添加一个新的环境变量:ANT_HOME,让它指向c:\dev\你的ANT包所在目录。并在PATH环境变量里添加%ANT_HOME%\bin。2、你需要添加一个新的环境变量:JAVA_HOME,让它指向你的j2sdk根目录。并在PATH环境变量里添加%JAVA_HOME%\bin。3、创建一个项目目录,比如c:\workspace\My1stHibernate。在项目目录下,另外创建三个目录:src,classes,lib。在lib目录下,创建两个目录:hibernate和db。这样你有了如下的文件结构:c:\workspace\My1stHibernate\c:\workspace\My1stHibernate\srcc:\workspace\My1stHibernate\classesc:\workspace\My1stHibernate\libc:\workspace\My1stHibernate\lib\hibernatec:\workspace\My1stHibernate\lib\db4、将c:\dev\你的Hibernate包所在目录\hibernate2.jar文件copy到c:\workspace\My1stHibernate\lib\hibernate下。将c:\dev\你的Hibernate包所在目录\lib\下的所有文件同样copy到c:\workspace\My1stHibernate\lib\hibernate下。将你的JDBCDriver文件(一般是一个jar文件)copy到c:\workspace\My1stHibernate\lib\db下。创建数据库1、用你最喜爱的database软件,创建一个hibernate_test的数据库。2、在此数据库下,新建一个table名为CUSTOMERCREATETABLECUSTOMER(CIDINTEGERNOTNULLPRIMARYKEY,USERNAMEVARCHAR(12)NOTNULL,PASSWORDVARCHAR(12));编写Java文件publicclassCustomer{privateintid;privateStringusername;privateStringpassword;publicintgetId(){returnid;}publicStringgetPassword(){returnpassword;}publicStringgetUsername(){returnusername;}publicvoidsetId(intid){this.id=id;}publicvoidsetPassword(Stringpassword){this.password=password;}publicvoidsetUsername(Stringusername){this.username=username;}}将此类存为c:\workspace\My1stHibernate\src\Customer.java文件。编写Test类importnet.sf.hibernate.*;importnet.sf.hibernate.cfg.*;publicclassTest{publicstaticvoidmain(String[]args){try{SessionFactorysf=newConfiguration().configure().buildSessionFactory();Sessionsession=sf.openSession();Transactiontx=session.beginTransaction();for(inti=0;i200;i++){Customercustomer=newCustomer();customer.setUsername(customer+i);customer.setPassword(customer);session.save(customer);}tx.commit();session.close();}catch(HibernateExceptione){e.printStackTrace();}}}将此类存为c:\workspace\My1stHibernate\src\Test.java文件。创建Hibernate映射文件因为这里只有一个Class---Customer和一个Table---CUSTOMER,你只需要建立一个映射文件---Customer.hbm.xml,来对应Customer类和CUSTOMER表之间的关系。?xmlversion=1.0?!DOCTYPEhibernate-mappingPUBLIC-//Hibernate/HibernateMappingDTD//EN=Customertable=CUSTOMERidname=idcolumn=CIDgeneratorclass=increment//idpropertyname=usernamecolumn=USERNAME/propertyname=passwordcolumn=PASSWORD//class/hibernate-mapping把此文件存为c:\workspace\My1stHibernate\src\Customer.hbm.xml,和Customer.java放在同一目录下。编写Antbuild.xml文件你不一定要知道这个build.xml的细节,其实Ant也不是Hibernate所必须的。这里用Ant是为了简化一些任务,比如:编译、copy、运行,等。?xmlversion=1.0?projectname=My1stHibernatedefault=buildbasedir=.propertyname=base.dirvalue=./propertyname=src.dirvalue=src/propertyname=lib.dirvalue=lib/propertyname=build.dirvalue=classes/pathid=myclasspathfilesetdir=${lib.dir}includename=**/*.jar//filesetpathelementlocation=${build.dir}//pathtargetname=initmkdirdir=${build.dir}//targettargetname=builddepends=initdescription=compilethesourcefilesjavacclasspathref=myclasspathsrcdir=${src.dir}destdir=${build.dir}/copytodir=${build.dir}filesetdir=${src.dir}excludename=**/*.java//fileset/copy/targettargetname=rundepends=buildjavaclasspathref=myclasspathclassname=Testfork=true//targettargetname=cleandeleteincludeEmptyDirs=truefilesetdir=${build.dir}//delete/target/project配置Hibernate描述文件Hibernate描述文件可以是一个properties或xml文件,其中最重要的是定义数据库的连接。我这里列出的是一个XML格式的hibernate.cfg.xml描述文件。?xmlversion=1.0encoding=utf-8?!DOCTYPEhibernate-configurationPUBLIC-//Hibernate/HibernateConfigurationDTD//EN=java:/hibernate/HibernateFactorypropertyname=show_sqltrue/propertypropertyname=connection.driver_classoracle.jdbc.driver.OracleDriver!--这里是Oracle9i的JDBCdriverclass名--/propertypropertyname=connection.urljdbc:oracle:oci8:@hibernate_test!--这里是Oracle的hibernate_test数据库URL--/propertypropertyname=connection.use
本文标题:史上最简单的Hibernate入门简介
链接地址:https://www.777doc.com/doc-3905621 .html