`
高级java工程师
  • 浏览: 410485 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

hibernate自动创建表的2中方式

 
阅读更多
1.创建学生类

package com.day02;


public class Student {
private int id;//定义成整形,但也可定义成字符串,但字符串有时不行,好奇怪。还是定义成整形。
private String name;
private  int age;
private String address;
public Student(){}
public Student(int id, String name, int age, String address) {
super();
this.id = id;
this.name = name;
this.age = age;
this.address = address;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}


2.写配置文件

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.day02">
   <class name="Student" table="Student">
   <id name="id" column="oid">
   <generator class="native">
    </generator>
   </id>
   <property name="name" column="t_name"></property>
   <property name="age" column="t_age"></property>
   <property name="address" column="t_address"></property>
   </class>
</hibernate-mapping>

3.配置hibernate.cfg.xml

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

    <session-factory>
        <property name="connection.username">root</property>
        <property name="connection.url">jdbc:mysql://127.0.0.1/xiaogu</property>
        <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="myeclipse.connection.profile">com.mysql.jdbc.Driver</property>
        <property name="connection.password">root</property>
        <property name="hbm2ddl.auto">create</property>//它就是创建表时,需添加的代码,但是有时不行,不知道怎么回事这时你需要改为<property name="hibernate.hbm2ddl.auto">create</property>。如果还不行,使用第二种方法。        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <mapping
   resource="com/day02/Student.hbm.xml" />
   <mapping
   resource="com/day02/Account.hbm.xml" />
    </session-factory>

</hibernate-configuration>

4.定义工具类

package com.day02;


import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HbnUtil {
private static SessionFactory sf;
static{
sf=new Configuration()
.configure("hibernate.cfg.xml")
.buildSessionFactory();
}
public  static Session getSession(){
  return sf.openSession();
}
public static void closeSessionFactory(){
  if(!sf.isClosed()){
  sf.close();
  }
}
}
5.写测试类

package com.day02;
import org.hibernate.Session;
public class Test {
public static void main(String[] args) {
Student stu=new Student();
stu.setAddress("hebei");
stu.setAge(23);
stu.setName("xiaogu");
  Session session=HbnUtil.getSession();
  session.beginTransaction();
     session.save(stu);
  session.getTransaction().commit();
  session.close();
 
}




分享到:
评论
2 楼 高级java工程师 2011-12-12  
晚上回家在换
1 楼 JAVA小丑 2011-12-12  
小龙哥你的头像换了,我像看原来那个。。。

相关推荐

    Hibernate自动创建表结构示例--Oracle

    标题"Hibernate自动创建表结构示例--Oracle"表明我们将使用Hibernate在Oracle数据库中自动生成表结构,这是通过Hibernate的`hibernate.hbm2ddl.auto`配置属性实现的。这个属性可以设置为"create"、"update"、...

    hibernate中创建表

    6. **运行应用**:启动应用,Hibernate会根据实体类和配置自动创建相应的数据库表。 在提供的链接`https://purplesunset.iteye.com/blog/500979`中,可能详细阐述了这些步骤,并给出了更多实践示例。在实际项目中,...

    Hibernate自动生成表demo

    当运行这个程序时,Hibernate会检查配置,并根据实体类自动创建相应的数据库表。在完成所有操作后,关闭SessionFactory以释放资源。 总的来说,通过使用Hibernate的注解和自动建表功能,我们可以轻松地在Java应用中...

    为 Hibernate 创建一张简单的表

    现在,当我们运行应用时,Hibernate会根据我们的实体类自动创建对应的数据库表。在上述`User`类的例子中,它会在数据库中创建一个名为`User`的表,包含`id`、`name`和`email`三个字段。 然而,`sql.sql`文件可能...

    详解hibernate自动创建表的配置

    综上所述,通过正确配置`hibernate.hbm2ddl.auto`、实体类扫描和数据源,可以实现Hibernate自动创建和管理数据库表的功能,极大地简化了开发过程。但务必注意,在生产环境中谨慎使用`create`和`create-drop`,以防止...

    Hibernate通过配置文件自动生成表

    要让Hibernate自动生成表,我们需要在配置文件中开启自动创建或更新模式。以下是一个示例配置: ```xml &lt;hibernate-configuration&gt; &lt;!-- 数据库连接信息 --&gt; &lt;property name="hibernate.connection.driver_...

    HIBERNATE:Hibernate 学习一--注解方式自动建表

    通过这些注解和配置,开发者可以快速地建立Java对象与数据库表之间的映射,并利用Hibernate自动创建数据库表,大大提高了开发效率。在实际项目中,结合Spring等框架,可以实现更高效、便捷的数据库操作。 在提供的...

    Hibernate自动生成持久化类和映射文件

    总的来说,"Hibernate自动生成持久化类和映射文件"是myEclipse提供的一种便捷工具,它帮助开发者快速地将数据库表结构转化为Java对象,简化了开发流程,使开发者能够更加专注于业务逻辑的实现,而不是底层的数据库...

    Hibernate3.4 不自动创建索引的问题

    如果想让Hibernate自动创建或更新数据库结构,包括索引,我们需要将这个属性设置为"create"、"create-drop"或者"update"。 但是,即使设置了正确的`hibernate.hbm2ddl.auto`,依然可能出现不自动创建索引的情况。这...

    hibernate自动生成数据库文件

    例如,`create`会根据实体类自动创建数据库表,`update`则会在已有表的基础上更新结构,而`validate`只会验证数据库结构是否与实体类匹配,不进行任何修改。 6. **数据库连接**:Hibernate需要数据库连接才能执行...

    Spring+Hibernate 自动映射

    1. **依赖注入(Dependency Injection,DI)**:Spring通过XML配置或注解方式,将Hibernate的相关组件如SessionFactory、Session等注入到需要使用它们的类中,避免了手动创建和管理这些对象。 2. **事务管理...

    解决 Springboot Jpa 自动创建表 和字段乱序问题[凤凰小哥哥]

    产生原因:因为使用 jpa 自动创建表的时候,采用的是TreeMap的,我们要变成LinkedHashMap 的结构。 解决方案:在项目下java文件夹下创建包名为: org.hibernate.cfg ,创建类: PropertyContainer [包名,类名...

    myeclipse中自动生成hibernate的POJO、DAO和hbm.xml文件

    MyEclipse中自动生成Hibernate的POJO、DAO和hbm.xml文件 MyEclipse是一款功能强大且流行的集成开发环境(IDE),它提供了许多实用的功能来帮助开发者快速构建和维护项目。其中,MyEclipse提供了对Hibernate的支持,...

    hibernate根据字段生成数据库表

    - **快速开发测试环境**:对于快速搭建的测试环境,可以自动创建数据库表,节省时间。 - **自动化部署**:在持续集成/持续部署 (CI/CD) 流程中,自动化的数据库表生成有助于简化部署流程。 #### 五、总结 利用 ...

    Hibernate自动生成配置文件

    6. **用Hibernate自动生成配置文件**:选择数据库中的目标表,如`t_user`,通过右键菜单选择“HibernateReverseEngineering”,根据提示逐步填写相关信息,包括主键类型、对应的Java类名及包名等,最后点击“Finish...

    改AHibernate 实现数据库 自动新增表参数

    1. **配置Hibernate的自动DDL生成**:默认情况下,Hibernate提供了`hibernate.hbm2ddl.auto`属性,可以设置为"create"、"update"等值,使得在应用启动时根据实体类自动创建或更新数据库表。为了实现自动新增参数,...

    hibernate自动生成

    Hibernate是一款强大的Java持久化...总之,Hibernate的自动代码生成功能为Java开发者提供了一种高效的方式,简化了数据库操作和对象模型的创建,使得开发人员可以更专注于业务逻辑的实现,从而提高整体项目的生产力。

Global site tag (gtag.js) - Google Analytics