[学习笔记]快速开发Hibernate

<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 728x15, 创建于 08-4-23MSDN */ google_ad_slot = "3624277373"; google_ad_width = 728; google_ad_height = 15; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 160x600, 创建于 08-4-23MSDN */ google_ad_slot = "4367022601"; google_ad_width = 160; google_ad_height = 600; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

  [学习笔记]快速开发Hibernate

  2005-06-13

  樊欢java及开源项目爱好者。

  Email:heydaymail@hotmail.com

  Blog:http://heyay.blogone.net

  2005-6-13

  引言

  关于学习Hibernate的意义,咱不用多说。

  下载并安装插件

  Hibernate3

  下载:Hibernate.sourceforge.net" />http://Hibernate.sourceforge.net

  JBossIDE1.5M1

  下载:http://sourceforge.net/projects/jboss/

  HibernateSynchronizer3

  下载:Hibernatesynch/" />http://sourceforge.net/projects/Hibernatesynch/

  Mysql及JDBC开发包

  下载:http://dev.mysql.com/downloads/

  JBossIDE1.5M1基于Eclipse的IDE开发工具,你可以通过升级你的Eclipse插件进行升级,不过我升级了很多次都不成功,经常升级到一半就毫无动静,白白浪费了很多时间,所以推荐直接下载JBossIDE。

  HibernateSynchronizerEclipse的Hibernate插件。可以生成Hibernate的配置文件和Java代码。不过是基于Hibernate2的。Hibernate2与Hibernate3的Classs的包由原来的net.sf移至org包内。所以HibernateSynchronizer生成的Java代码和配置文件会有错误。我通过对HibernateSynchronizer进行反编译,并进行修改,使之适应于Hibernate3,目前使用还未发现问题。要使用我修改后的版本,请与我通过Email(heydaymail@hotmail.com实在是找不到空间可放)联系。

  第一个实例

  一、前期准备

  安装HibernateSynchronizer插件,并在JBossIDE透视图里配置好。

  启动Mysql,建表Computer:

  [table]

  CREATETABLE`computer`(

  `id`int(11)NOTNULLauto_increment,

  `cpu`varchar(50)defaultNULL,

  `mainboard`varchar(50)defaultNULL,

  `displaycard`varchar(50)defaultNULL,

  `harddisk`varchar(50)defaultNULL,

  `display`varchar(50)defaultNULL,

  `memory`varchar(50)defaultNULL,

  `soundcard`varchar(50)defaultNULL,

  `cdrom`varchar(50)defaultNULL,

  `mouse`varchar(50)defaultNULL,

  `keyboard`varchar(50)defaultNULL,

  PRIMARYKEY(`id`)

  );

  [/table]

  二、新建项目

  启动JBossIDE,新建一个DemoHibernate项目,导入Hibernate及Mysql开发包。如图:

 

  将Hiberante开发包里的log4j.properties放至项目根目录下。

  三、Hibernate配置文件

  1.通过JBossIDEHibernate插件,生成Hibernate.cfg.xml

 

  [table]

  A href="http://www.66of.com" target=_blank>Hibernate-configurationPUBLIC

  "-//Hibernate/HibernateConfigurationDTD3.0//EN"

  "http://Hibernate.sourceforge.net/Hibernate-configuration-3.0.dtd">

  <Hibernate-configuration>

 

  Hibernate.connection.username">root

  Hibernate.dialect">

  org.Hibernate.dialect.MySQLDialect

 

  Hibernate.connection.url">

  jdbc:mysql://localhost/Hibernate

 

  Hibernate.connection.driver_class">

  org.gjt.mm.mysql.Driver

 

 

  Hibernate-configuration>

  [/table]

  2.通过HibernateSynchronizer生成Mapping文件

 

  3.将Mapping文件加入Hiberante.cfg.xml文件

  [table]

  <?xmlversion="1.0"?>

  A href="http://www.66of.com" target=_blank>Hibernate-mappingPUBLIC

  "-//Hibernate/HibernateMappingDTD//EN"

  "http://Hibernate.sourceforge.net/Hibernate-mapping-3.0.dtd">

  <Hibernate-mappingpackage="my.demo.Hibernate">

 

  table="computer"

  >

 

  name="Id"

  type="int"

  column="id"

  >

 

 

 

  name="Cpu"

  column="cpu"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Mainboard"

  column="mainboard"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Displaycard"

  column="displaycard"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Harddisk"

  column="harddisk"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Display"

  column="display"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Memory"

  column="memory"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Soundcard"

  column="soundcard"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Cdrom"

  column="cdrom"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Mouse"

  column="mouse"

  type="string"

  not-null="false"

  length="50"

  />

 

  name="Keyboard"

  column="keyboard"

  type="string"

  not-null="false"

  length="50"

  />

 

  Hibernate-mapping>

  [/table]

  生成的Computer.hbm,中Id字段为自增,需要将generatorclass=”VM”参数改为increment

  将Mapping文件加入到Hibernate.cfg.xml中

 

  可以看到Hibernate.cfg.xml中增加一行

  [table]

  A href="http://www.66of.com" target=_blank>Hibernate-configurationPUBLIC

  "-//Hibernate/HibernateConfigurationDTD3.0//EN"

  "http://Hibernate.sourceforge.net/Hibernate-configuration-3.0.dtd">

  <Hibernate-configuration>

 

  Hibernate.connection.username">root

  Hibernate.dialect">

  org.Hibernate.dialect.MySQLDialect

 

  Hibernate.connection.url">

  jdbc:mysql://localhost/Hibernate

 

  Hibernate.connection.driver_class">

  org.gjt.mm.mysql.Driver

 

 

 

  Hibernate-configuration>

  [/table]

  四、生成Java代码

  通过HibernateSynchronizer生成HibernateJava代码。

 

  生成的代码结构如图:

 

  五、编写代码

  [table]

  packagemy.demo.Hibernate.Sample;

  importorg.apache.log4j.PropertyConfigurator;

  importorg.Hibernate.SessionFactory;

  importorg.Hibernate.Session;

  importorg.Hibernate.cfg.Configuration;

  importmy.demo.Hibernate.Computer;

  publicclassComputerCreate{

  /**

  *@paramargs

  */

  publicstaticvoidmain(String[]args){

  PropertyConfigurator.configure("log4j.properties");

  Configurationcfg=newConfiguration();

  cfg.configure();

  SessionFactorysf=cfg.buildSessionFactory();

  Sessionsession=sf.openSession();

  Computercomputer=newComputer();

  computer.setCpu("on(E)2.4");

  computer.setDisplay("LCD");

  computer.setDisplaycard("intel");

  computer.setHarddisk("60G");

  computer.setMainboard("inter");

  computer.setMemory("512M");

  computer.setMemory("Agiller");

  computer.setSoundcard("inter");

  computer.setKeyboard("inter");

  computer.setCdrom("cdrom");

  session.save(computer);

  session.flush();

  try{

  session.connection().commit();

  session.close();

  System.out.println("success!!!!");

  }catch(Exceptione){

  e.printStackTrace();

  }

  }

  }

  [/table]

  总结

  Hibernate实现O/RMapping,但配置文件编写非常麻烦,通过JBossIDE及HibernateSynchronizer可以快速的帮助我们构建代码,大大提高我们的工作效益。

  关于作者

  樊欢java爱好者,您可以通过heydaymail@hotmail.com与我联系。

  Email:heydaymail@hotmail.com

  Blog:http://heyay.blo

<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 728x15, 创建于 08-4-23MSDN */ google_ad_slot = "3624277373"; google_ad_width = 728; google_ad_height = 15; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"><!-- google_ad_client = "pub-2947489232296736"; /* 160x600, 创建于 08-4-23MSDN */ google_ad_slot = "4367022601"; google_ad_width = 160; google_ad_height = 600; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
阅读更多
个人分类: ajax xml
想对作者说点什么? 我来说一句

hibernate学习笔记

2008年09月25日 189KB 下载

Hibernate学习笔记

2010年03月02日 477KB 下载

Hibernate学习笔记与总结

2010年03月25日 70KB 下载

hibernate 学习笔记精要

2010年11月17日 117KB 下载

达内HIBERNATE学习笔记

2011年10月30日 201KB 下载

hibernate学习笔记mashibing

2014年05月22日 713KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭