hibernate创建数据库

来源:互联网 发布:linux中ping命令 编辑:程序博客网 时间:2024/06/06 01:56

在java中一个数据库应该对应一个java类所以第一步应该创建一个类

@Entity@Table(name="MyTable")public class MyClass {    @Id//设置ID自增    @GeneratedValue(strategy=GenerationType.IDENTITY)    private int mid;    //设置字段长度 是否可以为空 唯一约束    @Column(length=20,nullable=false,unique=true)    private String mname;    @Column(length=20,nullable=true)    private String mdesc;

设置好之后在hibernate.cfg.xml文件中注册

<!-- 设置数据库语言   --><property name="hibernate.dialect">            org.hibernate.dialect.MySQL5InnoDBDialect        </property><!-- 设置创建数据的方式   create-drop 每次创建数据库当SessionFactory关闭时数据库也删除  create 每次都创建新的数据库update 如果之前已经有创建好的数据库,就不用再重新创建数据库validate 检查数据库创建是否有问题 --><property name="hibernate.hbm2ddl.auto">update</property>        <!-- 是否显示数据库语言 -->        <property name="hibernate.show_sql">true</property>        <!-- 格式化sql语言 -->        <property name="hibernate.format_sql">true</property>        <!-- 注册类 -->        <mapping class="com.phone1000.je1702.bean.MyClass"/>

实现数据库的创建并添加数据

        Configuration cfg = new Configuration().configure();        SessionFactory sf = cfg.buildSessionFactory();        Session s = sf.openSession();        Transaction tx = s.beginTransaction();        MyClass mc = new MyClass(1, "myname", "mydesc");        try{            s.save(mc);            tx.commit();        }catch(Exception ex){            tx.rollback();            ex.printStackTrace();        }finally{            s.close();            sf.close();        }