网站首页 新闻首页 网页设计图形动画软件编程网站开发办公软件操作系统数据库网络技术认证考试范文资料黑客攻防 书籍教程 进入论坛

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

http://www.diybl.com/ 2007-2-6  网络 点击:  [ 评论 ]
文章搜索:    【点击打包该文章】


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">







   

[1] [2]
如果图片或页面不能正常显示请点击这里 站内搜索:   

文章评论

请您留言

 

最新新闻