HibernateSynchronizer的安装与使用
HibernateSynchronizer的作用是自动生成hibernate配置文件,即hibernate.cfg.xml文件,映射文件,Plain Object类文件和一些基础数据库操作文件。
安装HibernateSynchronize
从http://www.binamics.com/hibernatesynch/plugins/com.hudson.hibernatesynchronizer_2.3.1.jar上下载com.hudson.hibernatesynchronizer_2.3.1.rar,解压缩后把com.hudson.hibernatesynchronizer_2.3.1文件夹拷贝到eclipse的plugins目录下。注意文件夹下就包含plugin.xml等文件,不要下面还保留有一层文件夹。
另一种方法是通过eclipse自动安装。点击eclipse菜单栏中的“帮助”-〉“软件更新”-〉“查找并安装…”。在打开的提示框中选择“搜索要安装的新功能部件”,然后点击“下一步”,点击“新建远程站点…”。在出现的提示框中填入你自己想要显示的“名称”,如HibernateSynchronize,在“URL”栏中填入http://www.binamics.com/hibernatesync然后一直点击下一步,eclipse可以自己完成安装。
无论哪种方法,安装完后重起eclipse。
使用HibernateSynchronize
首先生成hibernate的配置文件。右击项目内的任何文件或者文件夹,点击“新建”选项中的“其他…”。在出现的提示框中与CVS,JAVA一级应该多出一个Hibernate文件夹。如果没有的话,需要返回安装步骤,查看是否有什么问题,或者再尝试安装一遍。
选择其中的“Hibernate Configuration File”,点击“下一步”。这是出现一个提示框输入一些基本信息。“Container”是配置文件放置的目录;“File name”是配置文件的名称;“Session Factory Name”可以不填;“Database Type”中选择你所用的数据库类型,用于选择使用的Dialect;“Application Server”是应用程序服务器。这一项不是很全,不过不重新选择也没有关系。主要需要填写的信息是下面“Connection”的“Local”标签中的内容。
“Driver Class”:点击“Browe”按钮,在选择条目中输入你的数据库驱动程序的类名,如mysql的Driver,在匹配的类型中选择该正确的类名,然后在限定符中选择驱动程序类所在的包,如com.mysql.jdbc。点击“确定”后即在Driver Class中显示驱动类的完整名称:com.mysql.jdbc.Driver。如果没有找到驱动类,需要确定你是否在项目中引入了驱动包。
“Database URL”:输入数据库的地址。如:jdbc:mysql://localhost/hibernate_test,最后是数据库的名称。
“Username”:数据库访问的用户名,mysql默认用户为root。
“Password”:数据库访问的密码。
点击“完成”即生成配置文件。
然后是生成映射文件。同样右击项目内的任何文件或者文件夹,点击“新建”选项中的“其他…”。选择“Hibernate Mapping File”。参考生成配置文件的信息,填好password及其上面的项。点击“refresh“按钮,出现提示框选择数据库的驱动程序包。然后在Tables栏中会列出该库中的所有表。选择要生成映射文件的表,并在“Package”中输入或者输入类文件所在的包,注意这里不是映射文件所在的目录,而且不能是空包,也就是根目录下面。后面创建类文件时就会根据这个包自动将生成的文件放入相应的包中。点击“完成”。
映射文件不仅可以添加对应表的列,而且可以按照hibenate规则加入表之间的关系。新增映射文件之后,还会自动更新配置文件,加入映射文件信息。
生成类文件及基本的DAO文件。选中需要生成类文件的映射文件,即上一步生成的.hbm文件,可以同时选中多个映射文件。右击,选择“Hibernate Synchronizer”中的“Synchronize File”。这项操作同时会更新生成的配置文件,在其中添加映射文件信息。如果你修改了映射文件,需要更新类文件时,右击映射文件,选择“Hibernate Synchronizer”中的“Synchronize and Overwrite”,则自动更新类文件相关的地方。
例子用的这个工具是2版本的,使用它生成的文件,无论是方法还是引用的包都是使用hibernate2.jar的标准,比如net.sf……。所以如果要使用,需要把相关的路径改过来。路径还好处理,比较头疼的是生成的一些代码中引用的方法在hibernate3.jar中已经去除了,这样你必须自己实现那部分功能。还要注意配置文件中的一些设置,也有可能导致程序运行不了。
HibernateSynchronizer的安装与使用的更多相关文章
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法
如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...
- Sublime Text3安装JsHint
介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...
- Fabio 安装和简单使用
Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...
- gentoo 安装
加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- 【原】nodejs全局安装和本地安装的区别
来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...
- tLinux 2.2下安装Mono 4.8
Tlinux2.2发行版基于CentOS 7.2.1511研发而成,内核版本与Tlinux2.0发行版保持完全一致,更加稳定,并保持对Tlinux2.0的完全兼容.Mono 4版本要求CentOS 7 ...
随机推荐
- 【TensorFlow 2】矩阵基础
placeholder placeholder为tf中的占位符,用来保存数据.语法为: tf.placeholder(dtype, shape=None, name=None) dtype:数据类型 ...
- 1.4.3 ID遍历爬虫(每天一更)
# -*- coding: utf-8 -*- ''' Created on 2019年5月7日 @author: 薛卫卫 ''' import itertools import urllib.req ...
- SpringBoot底层原理及分析
一,Spring Boot简介 1.什么是Spring Boot: SpringBoot是由Pivotal团队提供的框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程. 该框架使用了特 ...
- Codeforces Round #192 (Div. 2) (330B) B.Road Construction
题意: 要在N个城市之间修建道路,使得任意两个城市都可以到达,而且不超过两条路,还有,有些城市之间是不能修建道路的. 思路: 要将N个城市全部相连,刚开始以为是最小生成树的问题,其实就是一道简单的题目 ...
- 分布式ID系列之为什么需要分布式ID以及生成分布式ID的业务需求
为什么需要分布式id生成系统 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识.如在美团点评的金融.支付.餐饮.酒店.猫眼电影等产品的系统中,数据日渐增长,对数据分库分表后需要有一个唯一ID ...
- 学好C/C++编程,走遍天下都不怕
C++这门语言从诞生到今天已经经历了将近30个年头.不可否认,它的学习难度都比其它语言较高.而它的学习难度,主要来自于它的复杂性.现在C++的使用范围比以前已经少了很多,java.C#.python等 ...
- 修改 jupyter notebook的默认文件夹位置
安装好Anaconda 3以后,就可以使用Jupyter notebook了,但是我们打开Jupyter notebook后,发现界面是一个默认的目录,这个目录在哪里?如果想把自己写的程序文件保存在自 ...
- Vue项目中使用better-scroll
当 better-scroll 遇见 Vue 在我们日常的移动端项目开发中,处理滚动列表是再常见不过的需求了. 以滴滴为例,可以是这样竖向滚动的列表,如图所示: 也可以是横向滚动的导航栏,如图所示 ...
- LeetCode——264. Ugly Number II
题目: Write a program to find the n-th ugly number. Ugly numbers are positive numbers whose prime fact ...
- 大白话5分钟带你走进人工智能-第32节集成学习之最通俗理解XGBoost原理和过程
目录 1.回顾: 1.1 有监督学习中的相关概念 1.2 回归树概念 1.3 树的优点 2.怎么训练模型: 2.1 案例引入 2.2 XGBoost目标函数求解 3.XGBoost中正则项的显式表达 ...