现在的位置: 首页 > 综合 > 正文

Hibernate的一些小常识(待续)

2018年02月06日 ⁄ 综合 ⁄ 共 1021字 ⁄ 字号 评论关闭
  1. 在用户下面一段代码生成数据库时,记得不要将column值取成数据库的关键字,否则会出现关键字无效、表或视图不存在等命令行输出:
    /**
     * 
     * @author WalkingDog
     *
     */
    public class CreateTable
    {
    	public static void main(String[] args)
    	{
    		SchemaExport export = new SchemaExport(new Configuration().configure());
    		export.create(true, true);//当第二个参数为false时,Hibernate不会连接数据库,输出命令行正确;
    	}
    }

    数据库关键字:点击这里

    ---------------------------------分割线---------------------------------

  2. 当所有子类都存储在一个表的时候,注意必须要有这句:
    <discriminator column="value"/>
    

    而子类的xml配置中也要有这个属性:

    discriminator-value="type"

    example:

    <?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>
    	<class name="Bean.ResourceBean" table="resourcebean">
    		<id name="id" type="string">
    			<generator class="uuid"/>
    		</id>
    		<discriminator column="type"/> 
    		<subclass name="Bean.VideoBean" discriminator-value="video">
    			<property name="thumbnail" type="string"/>
    		</subclass>
    		<subclass name="Bean.ForumBean" discriminator-value="forum">
    			<property name="isClose" type="integer"/>
    		</subclass>
    	</class>
    </hibernate-mapping>

抱歉!评论已关闭.