`
willvvv
  • 浏览: 333473 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

spring 2.5.6和hibernate3.2.2集成(5)

阅读更多

这一次说一下hibernate tools这个工具的使用,ORM的R和O之间一直有一个先有鸡还是先有蛋的讨论,按照偶的习惯还是先有数据库设计。这个demo因为很多原因没有最终完成,先记录着以后完善。demo中类并不是实际通过hibernate tools生成的,是经过修改的,因为对hibernate tools不是很熟悉,所以生成的类需要修改的地方比较多。这里主要说下工具的使用。

1.数据库设计来源于springside的mini-web项目。

USE `test`;

/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;

/*Table structure for table `t_authority` */

DROP TABLE IF EXISTS `t_authority`;

CREATE TABLE `t_authority` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `display_name` varchar(255) DEFAULT NULL,
  `name` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Table structure for table `t_group` */

DROP TABLE IF EXISTS `t_group`;

CREATE TABLE `t_group` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(60) NOT NULL DEFAULT '',
  `description` varchar(250) DEFAULT NULL,
  `registeredtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `status` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

/*Table structure for table `t_group_topic` */

DROP TABLE IF EXISTS `t_group_topic`;

CREATE TABLE `t_group_topic` (
  `group_id` bigint(20) NOT NULL,
  `topic_id` bigint(20) NOT NULL,
  KEY `idx_t_group_topic_group_id` (`group_id`),
  KEY `idx_t_group_topic_topic_id` (`topic_id`),
  CONSTRAINT `fk_t_group_topic_group_id` FOREIGN KEY (`group_id`) REFERENCES `t_group` (`id`),
  CONSTRAINT `fk_t_group_topic_topic_id` FOREIGN KEY (`topic_id`) REFERENCES `t_topic` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Table structure for table `t_resource` */

DROP TABLE IF EXISTS `t_resource`;

CREATE TABLE `t_resource` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `position` double NOT NULL,
  `resource_type` varchar(255) NOT NULL,
  `value` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `value` (`value`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Table structure for table `t_resource_authority` */

DROP TABLE IF EXISTS `t_resource_authority`;

CREATE TABLE `t_resource_authority` (
  `resource_id` bigint(20) NOT NULL,
  `authority_id` bigint(20) NOT NULL,
  KEY `idx_t_resource_authority_authority_id` (`authority_id`),
  KEY `idx_t_resource_authority_resource_id` (`resource_id`),
  CONSTRAINT `FK_t_resource_authority_authority_id` FOREIGN KEY (`resource_id`) REFERENCES `t_resource` (`id`),
  CONSTRAINT `FK_t_resource_authority_resource_id` FOREIGN KEY (`authority_id`) REFERENCES `t_authority` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Table structure for table `t_role` */

DROP TABLE IF EXISTS `t_role`;

CREATE TABLE `t_role` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

/*Table structure for table `t_role_authority` */

DROP TABLE IF EXISTS `t_role_authority`;

CREATE TABLE `t_role_authority` (
  `role_id` bigint(20) NOT NULL,
  `authority_id` bigint(20) NOT NULL,
  KEY `idx_t_role_authority_role_id` (`role_id`),
  KEY `idx_t_role_authority_authority_id` (`authority_id`),
  CONSTRAINT `FK_t_role_authority_authority_id` FOREIGN KEY (`authority_id`) REFERENCES `t_authority` (`id`),
  CONSTRAINT `FK_t_role_authority_role_id` FOREIGN KEY (`role_id`) REFERENCES `t_role` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

/*Table structure for table `t_topic` */

DROP TABLE IF EXISTS `t_topic`;

CREATE TABLE `t_topic` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` char(50) NOT NULL,
  `status` tinyint(1) NOT NULL DEFAULT '1',
  `rule` varchar(255) NOT NULL,
  `creator` bigint(20) NOT NULL,
  `created` datetime NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

/*Table structure for table `t_user` */

DROP TABLE IF EXISTS `t_user`;

CREATE TABLE `t_user` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `email` varchar(255) DEFAULT NULL,
  `login_name` varchar(255) NOT NULL,
  `name` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `login_name` (`login_name`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

/*Table structure for table `t_user_role` */

DROP TABLE IF EXISTS `t_user_role`;

CREATE TABLE `t_user_role` (
  `user_id` bigint(20) NOT NULL,
  `role_id` bigint(20) NOT NULL,
  KEY `idx_t_user_role_user_id` (`user_id`),
  KEY `idx_t_user_role_role_id` (`role_id`),
  CONSTRAINT `fk_t_user_role_role_id` FOREIGN KEY (`role_id`) REFERENCES `t_role` (`id`),
  CONSTRAINT `fk_t_user_role_user_id` FOREIGN KEY (`user_id`) REFERENCES `t_user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 典型的基于角色和用户组的权限设计。

2.hibernate tools有很多使用的方法,个人感觉最简单直观的是安装hibernate tools的插件,安装方法个人倾向于采用link的方式,下图为插件的目录结构:



 hibernatetools.link文件的内容如下:

path=D:\\plug-in\\hibernate tools

 然后重启Eclipse即可!

3.成功安装插件后,就可以新建各种配置文件了,如图:



 配置文件hibernate.cfg.xml和hibernate.reveng.xml建立成功后,切换到hibernate视图,



 新建一个hibernate configuration,如下图:填入正确信息



 然后新建一个运行配置文件,如下:



 

 配置正确后点击run。

  • 大小: 19.4 KB
  • 大小: 69.9 KB
  • 大小: 28.6 KB
  • 大小: 13.1 KB
  • 大小: 49.4 KB
  • 大小: 71.2 KB
0
0
分享到:
评论

相关推荐

    spring 2.5.6和hibernate3.2.2集成(1)

    这篇博客"spring 2.5.6和hibernate3.2.2集成(1)"显然是关于如何将这两个版本的框架整合到一个项目中的教程。下面我们将深入探讨这两个框架及其集成的关键知识点。 1. Spring框架: - 版本2.5.6:这是一个较旧但...

    Struts2.1.8+Spring2.5.6+Hibernate3.3.2项目整合

    在SSH项目中,Spring作为服务层和数据访问层的容器,负责事务管理、数据源配置以及与Hibernate的集成。 Hibernate是一个持久层框架,专注于对象-关系映射(ORM),使得开发者可以通过Java对象操作数据库。Hibernate...

    Struts2.1.6+Spring2.5.6+Hibernate3.3.2整合包

    Struts2.1.6、Spring2.5.6和Hibernate3.3.2是三个在Java Web开发中广泛使用的开源框架,它们的整合为开发者提供了强大的后端支撑。这个整合包是为了解决企业在构建基于Java的Web应用程序时面临的复杂性问题,通过将...

    Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0)架包

    一、Spring MVC环境搭建:(Spring 2.5.6 + Hibernate 3.2.0)  1. jar包引入  Spring 2.5.6:spring.jar、spring-webmvc.jar、commons-logging.jar、cglib-nodep-2.1_3.jar  Hibernate 3.6.8:hibernate3.jar...

    struts1.3.8+spring2.5.6+hibernate3.3框架集成

    Struts1.3.8、Spring2.5.6和Hibernate3.3是经典的Java Web开发框架组合,常被称为SSH框架。这个集成项目是基于这三个框架的整合,旨在提供一个可快速开发、易于维护的后端系统基础。下面将详细阐述这三个框架的主要...

    spring2.5.6与hibernate3.3整合示例

    在IT领域,Spring和Hibernate是两个非常重要的框架,它们分别专注于依赖注入和对象关系映射。本示例展示了如何将Spring 2.5.6版本与Hibernate 3.3版本进行整合,以便在Java应用程序中实现高效的数据访问和事务管理。...

    Struts2.1.6-Spring2.5.6-Hibernate3.3.2

    Struts2.1.6、Spring2.5.6和Hibernate3.3.2是三个在Java Web开发中广泛使用的开源框架,它们分别是MVC框架、IoC/DI容器和对象关系映射(ORM)框架的代表。这些框架的组合在当时是非常流行的,用于构建高效、可扩展和...

    struts2+spring2.5.6+hibernate3.0+ext整合开发

    Struts2、Spring 2.5.6、Hibernate 3.0 和 Ext 是四个非常重要的Java Web开发框架,它们在企业级应用开发中扮演着关键角色。这些技术的整合使用可以构建出高效、灵活且可扩展的Web应用程序。 **Struts2** 是一个...

    struts2.1.8.1+spring2.5.6+hibernate3.5.6整合注解

    2. 配置Struts2、Spring和Hibernate的主配置文件,启用注解扫描。 3. 在实体类、DAO接口、Service接口及其实现、Action类上添加注解。 4. 创建数据库连接配置,如DataSource。 5. 配置Spring的事务管理器。 6. 在...

    struts-2.3、spring2.5.6、hibernate3.3整合示例

    这个示例项目包含了上述整合的所有配置和源代码,可以直接导入开发环境运行,帮助开发者快速理解并掌握Struts 2、Spring和Hibernate的整合技术。通过学习和实践这个示例,开发者能够更好地运用这些框架构建复杂的...

    Struts2.1.6+Spring2.5.6+Hibernate3.3.1整合

    ### Struts2.1.6 + Spring2.5.6 + Hibernate3.3.1 整合 在本文中,我们将详细介绍如何将Struts2.1.6、Spring2.5.6以及Hibernate3.3.1进行整合,并构建一个简单的MVC应用。通过这个过程,读者将了解到这三种框架的...

    Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解

    在深入探讨Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解的实现细节之前,我们先回顾一下这三个框架的基本概念及其在JavaEE企业级开发中的作用。 ### Struts2框架 Struts2是一个开源的Web应用框架,它遵循MVC...

    Struts2.1.6 +Spring2.5.6 + Hibernate3.3.2整合包

    将Struts2、Spring和Hibernate整合在一起,可以实现业务逻辑、数据访问和用户交互的无缝衔接。Struts2处理HTTP请求并调用Spring管理的Action,Spring则负责服务层的依赖注入和事务管理,而Hibernate则处理数据持久化...

    Tapestry5.1+Spring2.5.6+Hibernate3.2.5写得简单CURD的程序

    在这个简单的CURD程序中,开发者首先需要配置Tapestry、Spring和Hibernate,包括设置项目结构、导入必要的库和配置文件。接着,定义实体类并创建与之对应的数据库表,使用Hibernate的注解进行映射。然后,建立Spring...

    spring2.5.6+hibernate3.3.2+struts2.1.8

    标题 "spring2.5.6+hibernate3.3.2+struts2.1.8" 提供了一个经典的Java Web开发技术栈,这个组合被称为S2SH(Spring、Struts2和Hibernate)。这个版本的集成对于初学者来说是一个很好的起点,因为它包含了三个主要的...

    struts2.1.8+spring2.5.6+hibernate3.3.2整合项目开发

    - **测试与优化**:完成上述配置后,进行单元测试和集成测试,确保各部分功能正常。根据性能需求,可能需要对查询优化、缓存策略等进行调整。 在这个整合项目中,"login"可能是一个登录功能的Action或者相关页面。...

    Struts2.1.6+Spring2.5.6+Hibernate3.3.1框架整合开发

    Struts2.1.6+Spring2.5.6+Hibernate3.3.1框架整合开发 http://www.cnitblog.com/intrl/archive/2009/04/13/56322.aspx 这篇文章的源码由于他的上传的空间用户可能下载失败,作者相当牛而且具有奉献精神

    Jboss4.2.2+Spring2.5.6+hibernate+JTA事务的实现

    1. **配置JBoss**:首先,你需要将Spring和Hibernate的相关库添加到JBoss的类路径中,并且可能需要对JBoss的配置文件进行调整,以支持Spring和JTA。 2. **配置Spring**:创建Spring的配置文件,定义数据源、...

    Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解实例详解

    Struts2.1.6、Spring2.5.6和Hibernate3.3.1是Java Web开发中的三个重要框架,它们分别负责MVC(模型-视图-控制器)架构的控制层、业务逻辑层和数据持久化层。在这个全注解实例详解中,我们将深入探讨如何将这三个...

Global site tag (gtag.js) - Google Analytics