`

hibernate 把类输出成数据库表

 
阅读更多

 

 

package com.hibernate.entity;

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToOne;

@Entity
public class Husband implements Serializable {
	
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 2476364405175138004L;

	
	private int id;
	
	private String name;
	
	private Wife wife;
	
	
	@Id
	@GeneratedValue
	public int getId() {
		return id;
	}

	public String getName() {
		return name;
	}

	@OneToOne//只要加onetoone就可以了,不用写mapping啥的
	public Wife getWife() {
		return wife;
	}

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

	public void setName(String name) {
		this.name = name;
	}

	public void setWife(Wife wife) {
		this.wife = wife;
	}
	
	
}

 

 

package com.hibernate.entity;

import java.io.Serializable;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity
public class Wife implements Serializable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 5270130768836331730L;

	
	private int id;
	
	private String name;

	
	@Id
	@GeneratedValue
	public int getId() {
		return id;
	}

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

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	
}
 

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="dialect">
			org.hibernate.dialect.MySQLDialect
		</property>
		<property name="connection.url">
			jdbc:mysql://localhost/test
		</property>
		<property name="connection.username">root</property>
		<property name="connection.password">root</property>
		<property name="connection.driver_class">
			com.mysql.jdbc.Driver
		</property>

		<!-- JDBC connection pool (use the built-in) -->
		<property name="connection.pool_size">1</property>



		<!-- Enable Hibernate's automatic session context management -->
		<property name="current_session_context_class">thread</property>

		<!-- Disable the second-level cache  -->
		<property name="cache.provider_class">
			org.hibernate.cache.NoCacheProvider
		</property>

		<!-- Echo all executed SQL to stdout -->
		<property name="show_sql">true</property>

		<property name="format_sql">true</property>
		<mapping class="com.hibernate.entity.Husband" />
		<mapping class="com.hibernate.entity.Wife" />
	</session-factory>

</hibernate-configuration>
 

 

package com.hibernate.test;


import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;

public class ORMappingTest {
	
	private static SessionFactory sessionFactory;

	@BeforeClass
	public static void setUpBeforeClass() throws Exception {
		sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
	}

	@AfterClass
	public static void tearDownAfterClass() throws Exception {
		sessionFactory.close();
	}
	
	@Test
	public void testSchemaExport() {
		new SchemaExport(new AnnotationConfiguration().configure()).create(true, true);
	}

}

 

跑了@Test后,就会在数据库中生成Husband表和Wife表

 

 

分享到:
评论

相关推荐

    hibernate连接金仓数据库所需jar包集合lib.7z

    3. **实体类映射**:为数据库表创建对应的Java实体类,并使用Hibernate的注解或XML文件进行映射配置。 4. **初始化SessionFactory**:在应用程序启动时,根据`hibernate.cfg.xml`创建SessionFactory实例,它是所有...

    Hibernate连表查询 Hibernate连表查询

    Hibernate 是一个开源的对象关系映射(ORM)框架,它允许开发人员将Java对象模型映射到数据库表,并在对象和数据库之间进行转换。在实际开发过程中,我们经常会遇到需要从多个表中获取数据的情况,这时就需要用到连...

    hibernate连接各种数据库的配置

    ### Hibernate连接各种数据库的配置详解 #### 一、概述 在软件开发中,数据库操作是一项基本且重要的功能。Hibernate作为一种流行的Java持久层框架,能够帮助开发者简化与数据库交互的过程。本文将详细介绍如何...

    数据库表生成javabean工具及源代码(修正版)

    此工具允许开发者连接到数据库,自动获取数据库中的表结构,并将其转换为符合Java Bean规范的类,供Java应用程序使用。这里我们将深入探讨这个“数据库表生成javabean工具”以及其在开发中的应用。 首先,让我们...

    hibernate数据库中文乱码问题

    ### Hibernate数据库中文乱码问题详解 #### 背景与问题描述 在使用Hibernate框架进行数据库操作时,可能会遇到中文乱码的问题。特别是在使用MySQL作为数据库,并且已将数据库编码设置为`utf-8`的情况下,依然出现...

    Hibernate基础和入门:新建表和插入表

    1. **Hibernate简介**:Hibernate是一个开源的ORM框架,它通过提供对象-关系映射,将Java类与数据库表关联起来,使得开发者可以使用面向对象的方式来处理数据库操作。 2. **环境配置**:在使用Hibernate之前,需要...

    eclipse(struts2+spring3+hibernate3)案例附带mysql数据库

    3. 数据库脚本:可能是.sql文件,用于创建和初始化MySQL数据库表。 4. Web应用相关的部署描述符:如web.xml,配置了Servlet和过滤器等。 5. 测试用例:可能包含JUnit测试类,用于验证业务逻辑的正确性。 6. 其他资源...

    hibernate+mysql 中文存入数据库乱码解决方法

    同时,创建数据库和表时也要指定`character set utf8`,确保存储空间的字符集。 4. **Struts2的页面编码**: 对于Struts2框架,需要确保JSP页面的编码设置正确。在每个JSP页面顶部添加`; charset=UTF-8" %&gt;`指令,...

    让hibernate输出sql语句参数配置.doc

    当设置为 true 时,Hibernate 将输出所有 SQL 语句到控制台,方便开发者调试和优化数据库操作。 3. hibernate.format_sql hibernate.format_sql 参数用于在 log 和 console 中打印出更漂亮的 SQL。其取值为 true ...

    java根据数据库表或视图创建实体

    1. **Java实体类**:在Java中,实体类通常用来表示数据库中的表,每个字段对应表中的一个列。实体类包含了表的所有属性(字段)以及getter和setter方法,用于数据的读写。这样的设计符合面向对象编程的原则,使得...

    eclipse中,由数据库反向生成hibernate实体类.pdf

    在Eclipse中,使用Hibernate工具反向工程生成实体类是一个高效的方法,可以帮助开发者快速地将数据库结构转换为Java对象,从而简化开发流程。以下详细解释了如何在Eclipse中进行这个过程,特别是针对SQL Server 2000...

    Hibernate里配置第三方数据库连接池

    在Java的Web开发中,数据访问层通常使用ORM框架,比如Hibernate,来处理与数据库的交互。Hibernate通过提供对象关系映射(ORM)机制,使得开发者可以使用面向对象的方式来操作数据库,极大地提高了开发效率。然而,...

    Hibernate核心配置文件对照表

    - `hibernate.connection.driver_class`: 这个属性指定用于连接数据库的JDBC驱动类。例如,对于MySQL,它通常是`com.mysql.jdbc.Driver`。 - `hibernate.connection.url`: 数据库的连接URL,其中包含了数据库...

    超好用的hibernate查询工具类

    通过创建和使用这样一个超好用的Hibernate查询工具类,我们可以更高效地管理和操作数据库,降低开发复杂度,让开发者能够专注于业务逻辑,而不是底层的数据库交互。在大型项目中,这样的工具类是不可或缺的,它提升...

    hibernate学习笔记文档

    - 实体类设计时应遵循一定的命名规则,并确保实体类中存在类似于主键的字段,以便与数据库表中的主键进行映射。 - 使用 XML 文件(如 `User.hbm.xml`)来定义实体类与数据库表之间的映射关系。 #### 三、...

    hibernate自动生成Pojo

    为此,Hibernate 提供了反向工程(Reverse Engineering)工具,可以自动生成基于数据库表结构的POJO类,极大地提高了开发效率。 `hibernate_tools` 和 `hibernate_extension` 是 Hibernate 提供的扩展和工具集,...

    Hibernate-tools解决hbm.xml中文注释乱码和生成实体类注释

    `Hibernate-tools`提供了一种方式来自动生成与数据库表对应的实体类,这大大减少了手动编写代码的工作量。在5.2.1版本中,我们可以在配置文件中指定注释模板,使得生成的实体类带有详细的注释。例如,你可以定义一...

    hibernate struts处理mysql数据库blob字段实例

    本实例主要探讨如何利用Hibernate和Struts框架来处理MySQL数据库中的BLOB字段,实现文件的上传与下载功能。 **一、Hibernate框架** Hibernate是一个强大的Java持久化框架,它简化了数据库操作,提供了对象关系映射...

Global site tag (gtag.js) - Google Analytics