首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Learning Hibernate step by step - 01 Hello World

2012-09-22 
Learning Hibernate step by step -- 01 Hello World既然数据库可以连通了,今天就要学习如何通过Hibernate

Learning Hibernate step by step -- 01 Hello World
既然数据库可以连通了,今天就要学习如何通过Hibernate完成对数据库的操作了,还是以简单的HelloWorld程序来做个演示。
一、 准备工作
我们需要创建三个文件,分别是Domain Object、Mapping、DB table
1. 先创建Domain Object--类Greetings.java,这个类包括三个字段:
id: ID标识符
name: 问候对象
greeting: 问候语


3. 在test数据库中创建对应的表T_Greetings
c. 继续运行,出现如下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: org/objectweb/asm/Type,原因是缺少相关jar包,导入asm.jar及asm-attrs.jar。
d. 继续运行,
控制台输出:Hibernate: insert into T_Greetings (`name`, `greeting`) values (?, ?)
观察后台数据库,数据已经成功保存到数据库中:
mysql> use test;
Database changed
mysql> select * from t_greetings;
+----+---------+---------------+
| id | name    | greeting      |
+----+---------+---------------+
|  1 | TriEyes | Say Hello to  |
+----+---------+---------------+
1 row in set
4. 更近一步--检索数据
在HelloWorld类中增加如下代码:

5. 运行测试类,出现如下异常:
Exception in thread "main" java.lang.NoClassDefFoundError: antlr/ANTLRException,原因是缺少相关jar包,导入antlr-2.7.6.jar包。
6. 继续运行,控制台输出:
Hibernate: insert into T_Greetings (`name`, `greeting`) values (?, ?)
Hibernate: select greetings0_.id as id1_, greetings0_.`name` as name2_1_, greetings0_.`greeting` as greeting3_1_ from T_Greetings greetings0_
2 greeting(s) found.
Say Hello to  TriEyes
Say Hello to  TriEyes
数据保存成功,并且可以从刚插入的表中检索出数据。
三、相关jar包,为了顺利运行程序,我们新引入了三个jar包,缺少这三个jar包,会引发相关异常:
2asm.jar和cglib类似Exception in thread "main" java.lang.NoClassDefFoundError: org/objectweb/asm/Type3asm-attrs.jar和cglib类似?4antlr-2.7.6.jaribernate使用ANTLR来产生查询分析器Exception in thread "main" java.lang.NoClassDefFoundError: antlr/ANTLRException
四、总结:
1. 涉及的三个对象:Domain Object、Mapping、DB table
2. 映射文件不会自动加载,需要在配置文件中指定
3. Hibernate不会自动提交事务,需要显示地执行Transaction
4. 到目前为止,已经引入的Hibernate的必须的包如下:
LearningHibernate
+src
+lib
  antlr-2.7.6.jar
  asm.jar
  asm-attrs.jar
  cglib-2.1.3.jar
  commons-collections-2.1.1.jar
  commons-logging-1.0.4.jar
  dom4j-1.6.1.jar
  hibernate3.jar
  jta.jar

热点排行