配置好hibernate的配置文件和映射文件以后可以通过SchemaExport工具导出sql脚本。
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
public class ExportDB {
public static void main(String[] args) {
Configuration cf=new Configuration().configure();
SchemaExport sexport=new SchemaExport(cf);
sexport.create(true, true);
System.out.println("导出成功");
}
}
运行结果:
alter table Student
drop
foreign key FKF3371A1B51FD6C4E
drop table if exists Class
drop table if exists Student
create table Class (
id integer not null auto_increment,
name varchar(255),
primary key (id)
)
create table Student (
id integer not null auto_increment,
name varchar(255),
class_id integer,
primary key (id)
)
alter table Student
add index FKF3371A1B51FD6C4E (class_id),
add constraint FKF3371A1B51FD6C4E
foreign key (class_id)
references Class (id)
十月 19, 2012 3:33:51 下午 org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl stop
INFO: HHH000030: Cleaning up connection pool [jdbc:mysql://localhost:3306/hql2]
导出成功
十月 19, 2012 3:33:51 下午 org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: HHH000230: Schema export complete