zoukankan      html  css  js  c++  java
  • 结构程序Hibernate自动创建表

    最近使用开发的过程中出现了一个小问题,顺便记录一下原因和方法--结构程序

        

    只要在hibernate.cfg.xml添加这句话,就能够主动生成数据表 
    <property name="hibernate.hbm2ddl.auto">update</property> 

    update:表现主动根据model对象来新更表结构,启动hibernate时会主动检查数据库,如果缺乏表,则主动建表;如果内外缺乏列,则主动添加列。 

    还有其他的数参: 
    create:启动hibernate时,主动删除本来的表,建新全部的表,所以每次启动后的前以数据会都失丢。 

    create-drop:启动hibernate时,主动建创表,程序关闭时,主动把应相的表都删除。所以程序结束时,表和数据也不会再存在。 

    PS:数据库要先预建立好,因为hibernate只会建表,不会建库

        

     

        

    ==========================================

        

     

        每日一道理
    风,渐渐吹起,吹乱了我的发丝,也让我的长裙有些飘动。绿叶仿佛在风中起舞,离开了树,投向了大地,却不知这样会枯萎,我弯下腰,轻轻拾起一片树叶,那非常有序的茎脉,是一种美的点缀。我有些哀叹:绿叶啊,绿叶,你这般美丽地从树上轻轻飘下,随风起舞,却不知已被人称之为落叶!

        

    表结构和数据总是在程序执行的时候无故的改修,折腾了好长间时,查了很长间时hibernate的数据库射映文件和接口程序,一直没有现发有什么错误,到最后才现发了它!
               <property name="hibernate.hbm2ddl.auto" value="update" />
    解释如下:

    hibernate.hbm2ddl.auto Automatically validate or export schema DDL to the database when the SessionFactory is created. With create-drop, the database schema will be dropped when the SessionFactory is closed explicitly. eg. validate | update | create | create-drop

    其实这个数参的作用要主于用:主动建创|新更|验证数据库表结构。
    如果没有此方面的需求提议set value="none".

    其它几个数参的意思:

    validate               载加hibernate时,验证建创数据库表结构
    create                  每次载加hibernate,重建新创数据库表结构
    create-drop        载加hibernate时建创,出退是删除表结构
    update                 载加hibernate主动新更数据库结构

        

    如果现发数据库表失丢或新增,请检查hibernate.hbm2ddl.auto的配置 可置设 <propertyname="hibernate.hbm2ddl.auto" value="none" />

    文章结束给大家分享下程序员的一些笑话语录: N多年前,JohnHein博士的一项研究表明:Mac用户平均IQ要比PC用户低15%。超过6000多的参加者接受了测试,结果清晰的显示IQ比较低的人会倾向于使用Mac。Mac用户只答对了基础问题的75%,而PC用户却高达83%。

  • 相关阅读:
    Extjs renderer函数
    孩子,教育,钱
    《新概念英语》的学习方法
    英语,想说爱你爱的太晚
    window.open模拟表单POST提交
    Extjs 解决grid分页bug问题
    Extjs 判断对象是非为null或者为空字符串
    linux shell 删除满足正则表达式的文件
    OpenCV 生成矩形mask
    测试Kaggle kernel commit 是否会删除以前的output
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3047835.html
Copyright © 2011-2022 走看看