Heim  >  Artikel  >  Datenbank  >  MyEclipse使用反向工程

MyEclipse使用反向工程

WBOY
WBOYOriginal
2016-06-07 16:02:381145Durchsuche

在使用Hibernate进行数据库操作时在代码编写方面确实大大减少了工作量,但是需要编写大量的XML文档,所幸MyEclipse提供了一种反向工程来快速构建XML文档。 本文章中数据库使用Oracle、MyEclipse使用2014版 下面首先看数据库,这里仅以一个Login表为示例,表

在使用Hibernate进行数据库操作时在代码编写方面确实大大减少了工作量,但是需要编写大量的XML文档,所幸MyEclipse提供了一种反向工程来快速构建XML文档。

本文章中数据库使用Oracle、MyEclipse使用2014版

下面首先看数据库,这里仅以一个Login表为示例,表中有三个字段,id(主键)、username、password。

\

数据库建立完成后,打开MyEclipse。然后依次点击window-->Open Perspective-->MyEcplise Hibernate

\

然后在右侧DB Browser中右击选择New后弹出以下窗体

\

然后填入相应的内容,首先选择相应的Driver Template,本示例中选择Oracle(Thin Driver),Driver Name是自己命名的连接名,例如MyConn,填入数据库相应的URL还有用户名和密码,然后在Driver JARs中选择相应的数据库驱动,然后点击Finish。如下:

\

这时在右侧的DB Browser中出现名为MyConn的数据库连接。

\

然后在MyConn上右击选择Open Connection,在弹出的窗体中填入密码即可

\

这是在MyConn中按级展开即可找到要映射的数据表。

\

然后新建一个java项目或者web项目,这里以java项目为例,创建名为HibernateTest的java项目,并建立后相应的包结构。

\

然后在HibernateTest项目上右击,依次选择MyEclipse-->Project Facets-->install Hibernate Facet然后选择相应的运行环境。

\

然后为生成的hibernate.cfg.xml和sessionfactory指定相应的位置

\

然后选择相应的连接,这里直接使用前面建立的MyConn即可。

\

这时在HibernateTest中自动生成一个hibernate.cfg.xml文档和一个HibernateSessionFactory.java文件

然后在DB Browser中找到需要映射的表,右击选择Hibernate Reverse Engineering……

\

然后根据弹出的窗体选择生成POJO类的存放位置,以及是否生成*.hbm.xml文件等。

\

这时在entity包下生成该映射文件以及POJO类,然后我们写一个保存的方法对其进行测试,具体代码如下:

package dao;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;

import sessionfactory.HibernateSessionFactory;
import entity.Login;

public class BaseDao {
	public void save(Login login) {
		Session session = HibernateSessionFactory.getSession();
		Transaction tran = null;
		try {
			tran = session.beginTransaction();
			session.save(login);
			tran.commit();
			System.out.println("添加成功!");
		} catch (HibernateException e) {
			tran.rollback();
			System.out.println("插入失败!");
		}
	}
}

然后在主方法中对该类进行调用,如下:

package test;

import java.math.BigDecimal;

import dao.BaseDao;
import entity.Login;

public class Test {
	public static void main(String[] args) {
		BaseDao bd = new BaseDao();
		Login login = new Login(new BigDecimal(1), "小刚", "12345678");
		bd.save(login);
	}
}

这时在控制台打印输出:添加成功!

然后看一下数据库中是否插入数据:

\

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn