概括spring hibernate集成

开发 后端
这里介绍Spring Hibernate,在我们实际进入集成这两个技术之前,让我们理解这种集成需求,大家都知道Hibernate是一种位于应用和数据库之间的强大的ORM 工具。

Hibernate有很多值得学习的地方,这里我们主要介绍Spring Hibernate,包括介绍集成Sample等方面。

一.介绍

最近我参与了北美一家银行的审计系统的后台软件设计和开发工作,除了使用Web Service以外,我们集成了Spring和Hibernate,通过Spring的HibernateTemplate实现了对数据库数据的存取。众所周知Hibernate是一种广泛应用的一种强大的数据持久层技术, 另一方面Spring作为支持IOC的依赖注入框架, 其优点是能够非常好地集成大多数主流技术。 本文我们将讨论如何集成 Spring Hibernate.

二.Spring Hibernate基础

在我们实际进入集成这两个技术之前,让我们理解这种集成需求,大家都知道Hibernate是一种位于应用和数据库之间的强大的ORM 工具。 它可使应用以独立平台的方式从各种数据库访问数据,对应用来说没有必要依赖于低级DBC 细节如管理连接, 处理statements 和result sets. 所有访问特定数据源的细节很容易在Xml文件中配置,另一个好处是Hibernate和J2SE和J2EE应用兼容得很好。

使用Hibernate 问题之一是使用Hibernate Framework访问数据库的客户应用必须依赖Hibernate APIs如Configuration, SessionFactory and Session. 这些个对象在应用代码中持续扩散。而且应用代码必须用手工维护和管理这些对象。但是在Spring的环境,业务对象通过IOC的帮助下是能够通过配置完成的,简单地说,一个对象状态能够从应用代码中分离。意思是现在使用Hibernate 对象作为Spring Beans是可能的,他们能够得到Spring提供的所有方便。

三.集成Sample

我们没有打算研究Spring包里集成的各种API,我们想通过实例源码来学习和理解这些APIs. 下列部分包括了集成Spring-Hiberante 的每个步骤并附有详细的解释。

1.创立数据库

下面的应用使用Oracle数据库。 Oracle10g的express版本可以从http://www.oracle.com/technology/products/database/xe/index.html免费下载,安装后, 先用管理员身份登录和创建用户schema,username and password,再以用户身份登录后去SQL command 或SQL Script运行以下SQL statement :create table Activitylog(id varchar(10), name varchar(20), taskcode varchar(3), tasktime timestamp);现在一个空表已创立。

2.ActivityLog类

现在让我们创建叫做Activitylog POJO代码用于存储从Activitylog表取出的数据,此类的设计使表'Activitylog'的列名将被映射到Java类Activitylog适当类型的变量名。 可使用ant工具或plug-in产生,Activitylog类完整的代码列举如下:

  1. package com.xxx.audit.pojo;  
  2. public class Activitylog {  
  3. private String id;  
  4. private String name;  
  5. private String taskcode;  
  6. private Timestamp tasktime;  
  7. public Activitylog () {  
  8. }  
  9. public String getId(){   
  10.  return id;  
  11. }  
  12. public void setId(String id){  
  13. this.id = id;  
  14. }  
  15. public String getName(){  
  16. return name;  
  17. }  
  18. public void setName(String name){  
  19. this.name = name;  
  20. }  
  21. public String getTaskcode(){  
  22. return taskcode;  
  23. }   
  24. public void setTaskcode(String taskcode){  
  25. this.taskcode = taskcode;  
  26. }  
  27. public Timestamp getTasktime(){  
  28. return tasktime;  
  29. }  
  30. public void setTasktime(Timestamp tasktime){  
  31. this.tasktime = tasktime;  
  32. }  
  33. public String toString(){  
  34. return "Id = " + id + "Name = " + name + "Taskcode = "   
  35. + taskcode + ", Tasktime = " + tasktime;  
  36. }  

注意toString() 方法重写是为了Activitylog 对象的显示。以上介绍Spring Hibernate。

【编辑推荐】

  1. 浅析Hibernate orm框架
  2. Hibernate Callback简单概括
  3. 概述Hibernate dbcp连接池使用方法
  4. Hibernate Shard三种策略剖析
  5. 讨论Hibernate和模型对象
责任编辑:佚名 来源: IBMDW
相关推荐

2009-09-22 13:31:28

Hibernate C

2009-09-24 09:25:10

Hibernate批量

2009-09-28 15:24:38

Hibernate V

2009-09-28 17:27:27

Hibernate A

2009-09-21 16:56:14

Hibernateibatis

2009-09-25 15:15:54

Hibernate检索

2009-09-29 16:29:40

Hibernate查询

2009-09-22 09:31:15

Hibernate主键

2009-09-27 14:33:01

Hibernate批量

2009-09-28 09:56:53

Hibernate属性

2009-09-22 09:40:03

cascade和invHibernate

2009-09-23 18:05:48

2009-09-25 13:18:15

Hibernate数据

2009-09-22 13:12:25

Hibernateibatis

2009-09-22 14:52:55

Hibernate p

2009-09-25 10:22:35

Hibernate多表

2009-09-24 13:45:53

Hibernate性能

2009-09-23 13:21:32

Hibernate O

2009-09-21 16:40:42

Hibernate可行

2009-06-19 15:28:03

SpringHibernate
点赞
收藏

51CTO技术栈公众号