知识大全 Java开源项目Hibernate快速入门
Posted 文件
篇首语:盛年不重来,一日难再晨,及时当勉励,岁月不待人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java开源项目Hibernate快速入门相关的知识,希望对你有一定的参考价值。
Java开源项目Hibernate快速入门 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
其实Hibernate本身是个独立的框架 它不需要任何web server或application server的支持 然而 大多数的Hibernate入门介绍都加入了很多非Hibernate的东西 比如: Tomcat Eclipse Log J Struts XDoclet 甚至JBoss 这容易让人产生Hibernate复杂难懂的误解 特别是打击了初学者的积极性 在这篇文章将不涉及Eclipse log j Struts Tomcat XDoclet 和JBoss 本文的目的是演示一下Hibernate的安装过程以及最基本的功能 从而给初学者一个低得不能再低的入门门槛 下载文件 你需要Java SDK Hibernate包 Ant包 和JDBC Driver Hibernate包下载地址: _by=date&sort=desc Ant包下载地址: ant bin zip JDBC Driver要根据你用的database来定 一般database官方网站上都会有 Hibernate支持常用的database 比如 MySQL Oracle PostgreSQL 和MS SQL Server 这些数据库都有JDBC Driver: Oracle JDBC Driver下载地址(下载前必须同意Oracle协议书) _jdbc/htdocs/l MySQL JDBC Driver下载地址 PostgreSQL JDBC Driver下载地址 MS SQL Server JDBC Driver下载地址 x?FamilyID= f b f e bd c fc bf bf &displaylang=en 将Hibernate包和Ant包分别解压至c:\\dev\\下(此目录不重要 你可以换其它任何目录) 配置环境 你需要添加一个新的环境变量: ANT_HOME 让它指向c:\\dev\\<你的ANT包所在目录> 并在PATH环境变量里添加%ANT_HOME%\\bin 你需要添加一个新的环境变量: JAVA_HOME 让它指向你的j sdk根目录 并在PATH环境变量里添加%JAVA_HOME%\\bin 创建一个项目目录 比如c:\\workspace\\My stHibernate 在项目目录下 另外创建三个目录: src classes lib 在lib目录下 创建两个目录: hibernate和db 这样你有了如下的文件结构: c:\\workspace\\My stHibernatec:\\workspace\\My stHibernate\\src c:\\workspace\\My stHibernate\\classes c:\\workspace\\My stHibernate\\lib c:\\workspace\\My stHibernate\\lib\\hibernate c:\\workspace\\My stHibernate\\lib\\db 将c:\\dev\\<你的Hibernate包所在目录>\\hibernate jar文件copy到c:\\workspace\\My stHibernate\\lib\\hibernate下 将c:\\dev\\<你的Hibernate包所在目录>\\lib\\下的所有文件同样copy到c:\\workspace\\My stHibernate\\lib\\hibernate下 将你的JDBC Driver文件(一般是一个jar文件)copy到c:\\workspace\\My stHibernate\\lib\\db下 创建数据库 用你最喜爱的database软件 创建一个hibernate_test的数据库 在此数据库下 新建一个table名为CUSTOMER CREATE TABLE CUSTOMER ( CID INTEGER NOT NULL PRIMARY KEY USERNAME VARCHAR( ) NOT NULL PASSWORD VARCHAR( ) ); 编写Java文件 public class Customer private int id; private String username; private String password; public int getId() return id; public String getPassword() return password; public String getUsername() return username; public void setId(int id) this id = id; public void setPassword(String password) this password = password; public void setUsername(String username) this username = username; 将此类存为c:\\workspace\\My stHibernate\\src\\Customer java文件 编写Test类 import net sf hibernate *; import net sf hibernate cfg *; public class Test public static void main(String[] args) try SessionFactory sf = new Configuration(nfigure() buildSessionFactory(); Session session = sf openSession(); Transaction tx = session beginTransaction(); for (int i = ; i < ; i++) Customer customer = new Customer(); customer setUsername( customer + i); customer setPassword( customer ); session save(customer); mit(); session close(); catch (HibernateException e) e printStackTrace(); 将此类存为c:\\workspace\\My stHibernate\\src\\Test java文件 创建Hibernate映射文件 因为这里只有一个Class Customer 和一个Table CUSTOMER 你只需要建立一个映射文件 Customer hbm xml 来对应Customer类和CUSTOMER表之间的关系 <?xml version= ?> <!DOCTYPE hibernate mapping PUBLIC //Hibernate/Hibernate Mapping DTD//EN mapping dtd > <hibernate mapping> <class name= Customer table= CUSTOMER > <id name= id column= CID > <generator class= increment /> </id> <property name= username column= USERNAME /> <property name= password column= PASSWORD /> </class> </hibernate mapping> 把此文件存为c:\\workspace\\My stHibernate\\src\\Customer hbm xml 和Customer java放在同一目录下 编写Ant build xml文件 你不一定要知道这个build xml的细节 其实Ant也不是Hibernate所必须的 这里用Ant是为了简化一些任务 比如: 编译 copy 运行 等 <?xml version= ?> <project name= My stHibernate default= build basedir= > <property name= base dir value= /> <property name= src dir value= src /> <property name= lib dir value= lib /> <property name= build dir value= classes /> <path id= myclasspath > <fileset dir= $lib dir > <include name= **/* jar /> </fileset> <pathelement location= $build dir /> </path> <target name= init > <mkdir dir= $build dir /> </target> <target name= build depends= init description= pile the source files > <javac classpat srcdir= $src dir destdir= $build dir /> <copy todir= $build dir > <fileset dir= $src dir > <exclude name= **/* java /> </fileset> </copy> </target> <target name= run depends= build > <java classpat classname= Test fork= true /> </target> <target name= clean > <delete includeEmptyDirs= true > <fileset dir= $build dir /> </delete> </target> </project> 配置Hibernate描述文件 Hibernate描述文件可以是一个properties或xml 文件 其中最重要的是定义数据库的连接 我这里列出的是一个XML格式的hibernate cfg xml描述文件 <?xml version= encoding= utf ?> <!DOCTYPE hibernate configuration PUBLIC //Hibernate/Hibernate Configuration DTD//EN configuration dtd > <hibernate configuration> <session factory name= java:/hibernate/HibernateFactory > <property name= show_sql >true</property> <property name= connection driver_class > oracle jdbc driver OracleDriver <! 这里是Oracle i的JDBC driver class名 > </property> <property name= connection url > jdbc:oracle:oci :@hibernate_test <! 这里是Oracle的hibernate_test数据库URL > </property> <property name= connection username > 你的数据库用户名 </property> <property name= connect cha138/Article/program/Java/ky/201311/28817相关参考
知识大全 求推荐几个好的java方面开源项目还有基本学习java好用的书
求推荐几个好的java方面开源项目还有基本学习java好用的书mvnForum,一个小的开源论坛系统,java开源论坛中做得较好的一个;OpenCms,历史最悠久和使用广泛的java开源CMS系统的老
知识大全 Struts+Spring+Hibernate快速入门
Struts+Spring+Hibernate快速入门 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
java开源数据库项目Derby的问答 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! IBM?在
开源框架Hibernate3的新特性以及发展趋势 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 基于hibernate的开源通用查询框架-bba96
bba框架当前版本包含 bbacore核心框架封装HibernateCriteria提供方便的查询以及分页支持查询参数 bbastruts基于Struts的开发框架依赖core提供便捷的CRU
Flex和Java快速开发的Flamingo项目 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
开源项目的代码哪里下阿sourcefe.opensource.code.google.open-open.PHP开源项目这个不一定是开源的,可能是自己根据开源项目归划的需求。和ecmall符合。哪里可
Java开源UML建模 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ArgoUML 使用ja
c#开源项目Vmukti 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! c#开源项目Vmukti
如何用Java平台访问开源云存储? 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 尽管云计算这一