快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

用eclipse+Hibernate Synchronizer(plugin)开发例子(原创)


1. 开发环境预备

       Eclipse3.0.1

       下载:http://www.eclipse.org/

Eclipse Plugin:Hibernate Synchronizer

下载:http://sourceforge.net/project/showfiles.php?group_id=99370

       Hibernate-2.1.8

       下载:http://internap.dl.sourceforge.net/sourceforge/hibernate/hibernate-2.1.8.zip

       MyS       QL 4.1

       下载:http://www.mysql.com

2.演示一个简朴例子

2.1在mysql数据库中的test数据库下创建表内容表Content,脚本如下:

CREATE TABLE Content (

FID int(11) NOT NULL auto_increment,

FTitle varchar(100) NOT NULL default \\\'\\\',

FContent Text ,

PRIMARY KEY  (FID)

);

 







2.2检测Hibernate插件是否安装成功,进入菜单”window”下的”Preferences”,就有如下图所示的:





 







2.3用eclipse创建一个JAVA项目,如下所示:

 









选“Next>”一直到完成。

有一点要注重的是,创建完项目后,还要将Hibernate库及mysql驱动加入到项目的Libraries中。

2.4加入Hibernate配置文件“hibernate.cfg.xml”

选择该项目,点右键,“New”à “Other”进入如下界面,





选择“Hibernate Configuration File”à “Next”



选择数据库类型、Database URL、Username及Password,OK, 文件“hibernate.cfg.xml”系统自动生成。

2.5加入“*.hbm”配置文件

同样是,选择该项目,点右键,“New”à “Other”进入,不过这次要选择的是“Hibernate Mapping File”,点“Next”进入如下界面





注重,假如数据库有密码,则要先要输入密码再点“Refresh”按钮,数据中的表就会显示在Tables框中。选择一个表,如content后,点“Finish”按钮。

2.6根据content.hbm生成相关的JAVA代码,选择Content.hbm右键,操作如下界面:



2.7接一来简朴地增加几行代码就可以了,进入系统生成的包DAO中,如例子中的“com.hibernate.example.dao”,打开文件ContentDAO.java,代码修改如下:

0: /*



1:  * 创建日期 2004-12-10



2:  * @author Oscar Lao



3:  * CopyRight 2005 S.W.S



4:  */



5:



 6: package com.hibernate.example.dao;



7:



 8: import org.apache.log4j.Logger;



9:



10: import com.hibernate.example.Content;



11: import com.hibernate.example.base.BaseContentDAO;



12:



13: /**



14:  * @author Oscar Lao



15:  * QQ:63065068



16:  * Email:e-silver@163.com



17:  * ClassDesc:Hibernate Example



18:  **/



19: public class ContentDAO extends BaseContentDAO {



20:     private static final Logger logger = Logger.getLogger(ContentDAO.class);



21:



22:     public static void main(String[] args){



23:         if (logger.isDebugEnabled()) {



24:             logger.debug("程序正在运行...");



25:         }



26:



27:         try {



28:             _RootDAO.initialize();



29:            



30:             ContentDAO cond = new ContentDAO();           



31:             Content cont = new Content();



32:             for (int i = 1; i < 100; i++) {



33:                 cont.setFid(new Integer(i));



34:                 cont.setFTitle("Title"+i);



35:                 cont.setFContent("Content"+i);



36:                 cond.save(cont);



37:            }



38:         } catch (Exception e) {



39:             logger.error("运行时出现非常...", e);



40:         }



41:



42:         if (logger.isDebugEnabled()) {



43:             logger.debug("运行完毕。");



44:         }



45:     }



46: }

 







3.欣赏成果

假如所有的配置准确,ContentDAO类应该可以运行了,运行后,程序会向表Content插入100条记录。祝你好运!!







4.在我测试时出现如下错误,现在也贴出来,希望对大家有所帮助:







4.1假如运行时出现如下非常







Could not find UserTransaction in JNDI javax.naming.NoInitialContextException:…







解决:把配置文件“hibernate.cfg.xml”中的







  <property name="hibernate.transaction.factory_class">







           net.sf.hibernate.transaction.JTATransactionFactory







       </property>







       <property name="jta.UserTransaction">







           java:comp/UserTransaction







       </property>







 两行设置JTA控制事务的属性注释掉就可以了,因为程序里还未使用JTA控制事务。







4.2 假如运行时出现如下非常







Error parsing XML: /hibernate.cfg.xml(33) The content of element type "session-factory" is incomplete, it must match "(property*,mapping+,(class-cache|collection-cache|jcs-class-cache|jcs-collection-cache)*)".

       解决:在配置文件“hibernate.cfg.xml”中的<session-factory>与</session-factory>之间加







              <mapping resource="Content.hbm" />







      







 







第一次写关于Hibernate的文章,如有不对的地方,请批评指正。







最后,祝大家成功!!^_^










返回类别: 教程
上一教程: robbin写的EJB调用的原理分析
下一教程: Beginner: Using Servlets to display, insert and update records in database.(1)

您可以阅读与"用eclipse+Hibernate Synchronizer(plugin)开发例子(原创)"相关的教程:
· 用Eclipse Hibernate Synchronizer插件开发Hibernate应用
· 利用Eclipse开发Hibernate应用程序
· Eclipse迅速上手Hibernate--2. 利用Hbm映射文件开发
· Eclipse迅速上手Hibernate--3. 利用XDoclet开发
· 初探Eclipse结合Lomboz开发EJB-Eclipse环境搭建
    微笑服务 优质保证 索取样品