|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
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环境搭建 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |