`

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

 
阅读更多

一.必备包

  1.commons-collections-3.2.1.jar

  2.ejb3-persistence.jar

  3.hibernate3.jar

  4.hibernate-jpa-2.0-api-1.0.1.Final.jar

  5.javassist-3.15.0-GA.jar

  6.jboss-logging-3.1.0.GA.jar

  7.jboss-transaction-api_1.1_spec-1.0.0.Final.jar

  8.slf4j-api-1.6.1.jar

  9.数据库驱动包(MySql:mysql-connector-java-5.1.9-bin.jar)

 

二.配置文件hibernate.cfg.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.url">jdbc:mysql://localhost:3306/DREAM_20121208</property>
        <property name="connection.username">root</property>
        <property name="connection.password">123456</property>
        <property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
        <property name="show_sql">true</property>
        <property name="hbm2ddl.auto">update</property>
        <property name="hibernate.format_sql">true</property>
        <property name="hibernate.current_session_context_class">thread</property>

        <mapping class="org.apache.dream.entity.User" />
    </session-factory>
</hibernate-configuration>

 三.实体 User.java

 

@Entity
@Table(name = "T_USER")
public class User {
    private int id;
    private String username;
    private int age;

    @Id
    @GenericGenerator(name = "generator", strategy = "increment")
    @GeneratedValue(generator = "generator")
    @Column(name = "I_ID")
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    @Column(name = "STR_USER_NAME", length = 20)
    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    @Column(name = "I_AGE")
    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

 四.工具类

 

public class HibernateUtil {

    private static final SessionFactory sessionFactory;
    static {
        try {
            sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
        } catch (Throwable ex) {
            System.err.println("Initial SessionFactory creation failed." + ex);
            throw new ExceptionInInitializerError(ex);
        }
    }

    public static SessionFactory getSessionFactory() {
        return sessionFactory;
    }
}

 五.测试类:Test.java

 

public class Test {

    public static void main(String[] args) {
        createAndStorePerson();
        HibernateUtil.getSessionFactory().close();
    }

    private static void createAndStorePerson() {
        Session session = HibernateUtil.getSessionFactory().getCurrentSession();

        session.beginTransaction();

        User user = new User();
        user.setUsername("test");
        user.setAge(18);
        session.save(user);
        session.getTransaction().commit();
    }
}

 六.创建数据库(要与配置文件hibernate.cfg.xml中相符)

 七.结束

 

 

 

分享到:
评论

相关推荐

    JPA注解 和hibernate 建表

    JPA注解和Hibernate建表 一、JPA概述 Java Persistence API(JPA)是Sun官方提出的Java持久化规范,它只是一个规范不是一个产品。JPA的主要目标是提供一种简洁、易用的方式来访问、操作和管理Java应用程序中的数据...

    springMVC4+hibernate4+mysql全注解自动建表

    注释齐全,'零'配置文件 (1)在config中找到db....(2)在连接到的mysql中建一个数据库(database):(defaultName:mvcdemo) (3)运行本项目 (4)页面输入 http://localhost:8080//mvcfour/index.html (注意浏览器支持html5)

    Hibernate建表用到的jar包

    在实际建表操作中,开发者首先需要定义实体类(Entity),并使用Hibernate注解(如@Entity、@Table、@Column等)来指定数据库映射关系。接着,配置Hibernate的SessionFactory,最后通过Session对象执行DDL(Data ...

    SSH高质量整合.Spring注解标签,项目启动自动建表.

    综上所述,SSH高质量整合利用Spring的注解简化配置,通过Hibernate的注解实现ORM映射,同时利用Hibernate的自动建表功能,极大地提高了开发效率。项目中的标签注入则优化了视图层的开发,使得整个Web应用的开发流程...

    Hibernate动态建表

    "Hibernate动态建表"指的是在应用运行时根据实体类自动生成对应的数据库表结构,这种特性在开发过程中特别有用,尤其是当数据模型频繁变化或者需要快速原型设计时。 **动态表映射原理** Hibernate的动态建表功能...

    自动在数据库中建成表(Hibernate)

    Hibernate,作为一个流行的Java ORM框架,就是这样一种工具,它允许程序员使用面向对象的方式操作数据库,而无需直接编写SQL语句。本文将深入探讨如何使用Hibernate自动在数据库中创建表。 首先,让我们理解什么是...

    Hibernate自动生成表demo

    总的来说,通过使用Hibernate的注解和自动建表功能,我们可以轻松地在Java应用中建立数据库模型,并在运行时自动创建数据库表。这极大地提高了开发效率,降低了出错的可能性,并使得数据库与Java代码之间的关系更加...

    Struts2+Spring+Hibernate+Ehcache+AJAX+JQuery+Oracle 框架集成用户登录注册Demo工程

    1.通过google ehcache-spring-annotatios.jar自动注解方式实现整合Spring+Ehcache。 2.Action里通过struts2-spring-plugin.jar插件自动根据名字注入。 3.Ajax无刷新异步调用Struts2,返回Json数据,以用户注册为例。...

    hibernate建表例子

    Hibernate提供了一种在Java应用程序中管理关系数据库模型的方式,它支持自动创建、更新和删除数据库表结构,这得益于其强大的XML配置文件或注解系统。在本例中,我们将看到如何使用Hibernate的元数据(例如,...

    hibernate数据持久化组件

    - **自动建表策略**: - `create-drop`:每次启动时创建表,在关闭时删除表。 - `create`:每次启动时创建表,不删除。 - `update`:根据映射文件更新表结构。 - `validate`:验证表结构是否符合映射文件,如果...

    传智播客李勇hibernate

    - Hibernate可以作为JPA的实现,使用注解方式进行编程。 14. **最佳实践**: - 合理设计对象模型,避免过度使用关联。 - 根据项目需求选择合适的缓存策略。 - 适当使用HQL/Criteria,避免过多的SQL直接操作。 ...

    jpa学习笔记

    ### JPA 学习笔记详解 #### 一、JPA 概述 Java Persistence API (JPA) 是 Sun 公司提出的一种 Java 持久层标准,它为 Java 开发者提供了一种对象关系映射 (ORM) 的工具来管理 Java 应用程序中的关系型数据。JPA ...

    hibernate动态生成表结构

    在Hibernate中,表与表之间的关系可以通过一对多(OneToMany)、多对一(ManyToOne)、一对一(OneToOne)、多对多(ManyToMany)四种方式表示。以下是一些基本示例: 1. 一对一关系:使用`@OneToOne`注解,可以...

    hibernate的相关jar包

    Hibernate是一款强大的对象关系映射(ORM)框架,它允许开发者使用面向对象的编程方式来处理数据库操作。在Java开发中,Hibernate简化了数据库操作,通过将Java类与数据库表进行映射,使得开发者无需直接编写SQL语句...

    hibernate简单的入门案例

    首先,定义一个Java类,比如`User`,并使用`@Entity`注解标识它为一个实体类。同时,使用`@Table`指定对应的数据库表名。例如: ```java @Entity @Table(name = "users") public class User { @Id @...

    hibernate学习笔记

    - `hbm2ddl.auto`: 自动建表或更新表的策略,如`create`、`update`等。 - 表名与类名不同时,可通过@Table注解或XML配置映射。 - 字段名与属性名不同时,使用@Column注解或XML指定映射。 四、对象映射 1. XML...

    hibernate中创建表

    在Java世界里,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者使用面向对象的方式来操作数据库,而无需直接编写SQL语句。本文将深入探讨如何在Hibernate中创建数据库表,以此来构建实际的应用。 ...

    hibernate根据类生成表

    "hibernate根据类生成表"这一主题主要涉及Hibernate的自动建表功能,即Hibernate能够基于我们的Java实体类自动生成对应的数据库表结构。下面我们将详细探讨这一功能。 1. Hibernate自动建表原理 Hibernate的核心是...

    J2EE电子商务系统开发

    - **Struts框架**:一种基于MVC架构的Java Web应用程序框架,通过定义一组标准组件和配置文件来简化Web开发。 - **控制器组件类**: - **ActionServlet类**:作为前端控制器,接收所有请求并分发到相应的Action。...

Global site tag (gtag.js) - Google Analytics