潜龙写

xml代码:

  1. <?xml version="1.0"?>
  2. <!DOCTYPE hibernate-mapping PUBLIC
  3. "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  4. "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
  5. <!--
  6. <hibernate-mapping>一般不去配置,采用默认即可。
  7. default-cascade="none":默认的级联风格,表与表联动。
  8. default-lazy="true":默认延迟加载
  9. -->
  10. <hibernate-mapping>
  11. <!--
  12. <class>:使用class元素定义一个持久化类。
  13. name="cn.javass.user.vo.UserModel":持久化类的java全限定名;
  14. table="tbl_user":对应数据库表名;
  15. mutable="true":默认为true,设置为false时则不可以被应用程序更新或删除;
  16. dynamic-insert="false":默认为false,动态修改那些有改变过的字段,而不用修改所有字段;
  17. dynamic-update="false":默认为false,动态插入非空值字段;
  18. select-before-update="false":默认为false,在修改之前先做一次查询,与用户的值进行对比,有变化都会真正更新;
  19. optimistic-lock="version":默认为version(检查version/timestamp字段),取值:all(检查全部字段)、dirty(只检查修改过的字段)、
  20. none(不使用乐观锁定),此参数主要用来处理并发,每条值都有固定且唯一的版本,版本为最新时才能执行操作;
  21. -->
  22. <class name="cn.javass.user.vo.UserModel" table="tbl_user" dynamic-insert="true" dynamic-update="true" optimistic-lock="version">
  23. <!--
  24. <id>:定义了该属性到数据库表主键字段的映射。
  25. name="userId":标识属性的名字;
  26. column="userId":表主键字段的名字,如果不填写与name一样;
  27. -->
  28. <id name="userId">
  29. <!-- <generator>:指定主键由什么生成,推荐使用uuid,assigned指用户手工填入。 -->
  30. <generator class="uuid"/>
  31. </id>
  32. <!--
  33. <version/>:使用版本控制来处理并发,要开启optimistic-lock="version"和dynamic-update="true"。
  34. name="version":持久化类的属性名,column="version":指定持有版本号的字段名;
  35. -->
  36. <version name="version" column="version"/>
  37. <!--
  38. <property>:为类定义一个持久化的javaBean风格的属性。
  39. name="name":标识属性的名字,以小写字母开头;
  40. column="name":表主键字段的名字,如果不填写与name一样;
  41. update="true"/insert="true":默认为true,表示可以被更新或插入;
  42. -->
  43. <property name="name" column="name" />
  44. <property name="sex" column="sex"/>
  45. <property name="age" column="age"/>
  46. <!--
  47. 组件映射:把多个属性打包在一起当一个属性使用,用来把类的粒度变小。
  48. <component name="属性,这里指对象">
  49. <property name="name1"></property>
  50. <property name="name2"></property>
  51. </component>
  52. -->
  53. <!--
  54. <join>:一个对象映射多个表,该元素必须放在所有<property>之后。
  55. <join table="tbl_test:子表名">
  56. <key column="uuid:子表主键"></key>
  57. <property name="name1:对象属性" column="name:子表字段"></property>
  58. </join>
  59. -->
  60. </class>
  61. </hibernate-mapping>

xml代码:

    1. <?xml version="1.0"?>
    2. <!DOCTYPE hibernate-mapping PUBLIC
    3. "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    4. "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
    5. <!--
    6. <hibernate-mapping>一般不去配置,采用默认即可。
    7. default-cascade="none":默认的级联风格,表与表联动。
    8. default-lazy="true":默认延迟加载
    9. -->
    10. <hibernate-mapping>
    11. <!--
    12. <class>:使用class元素定义一个持久化类。
    13. name="cn.javass.user.vo.UserModel":持久化类的java全限定名;
    14. table="tbl_user":对应数据库表名;
    15. mutable="true":默认为true,设置为false时则不可以被应用程序更新或删除;
    16. dynamic-insert="false":默认为false,动态修改那些有改变过的字段,而不用修改所有字段;
    17. dynamic-update="false":默认为false,动态插入非空值字段;
    18. select-before-update="false":默认为false,在修改之前先做一次查询,与用户的值进行对比,有变化都会真正更新;
    19. optimistic-lock="version":默认为version(检查version/timestamp字段),取值:all(检查全部字段)、dirty(只检查修改过的字段)、
    20. none(不使用乐观锁定),此参数主要用来处理并发,每条值都有固定且唯一的版本,版本为最新时才能执行操作;
    21. -->
    22. <class name="cn.javass.user.vo.UserModel" table="tbl_user" dynamic-insert="true" dynamic-update="true" optimistic-lock="version">
    23. <!--
    24. <id>:定义了该属性到数据库表主键字段的映射。
    25. name="userId":标识属性的名字;
    26. column="userId":表主键字段的名字,如果不填写与name一样;
    27. -->
    28. <id name="userId">
    29. <!-- <generator>:指定主键由什么生成,推荐使用uuid,assigned指用户手工填入。 -->
    30. <generator class="uuid"/>
    31. </id>
    32. <!--
    33. <version/>:使用版本控制来处理并发,要开启optimistic-lock="version"和dynamic-update="true"。
    34. name="version":持久化类的属性名,column="version":指定持有版本号的字段名;
    35. -->
    36. <version name="version" column="version"/>
    37. <!--
    38. <property>:为类定义一个持久化的javaBean风格的属性。
    39. name="name":标识属性的名字,以小写字母开头;
    40. column="name":表主键字段的名字,如果不填写与name一样;
    41. update="true"/insert="true":默认为true,表示可以被更新或插入;
    42. -->
    43. <property name="name" column="name" />
    44. <property name="sex" column="sex"/>
    45. <property name="age" column="age"/>
    46. <!--
    47. 组件映射:把多个属性打包在一起当一个属性使用,用来把类的粒度变小。
    48. <component name="属性,这里指对象">
    49. <property name="name1"></property>
    50. <property name="name2"></property>
    51. </component>
    52. -->
    53. <!--
    54. <join>:一个对象映射多个表,该元素必须放在所有<property>之后。
    55. <join table="tbl_test:子表名">
    56. <key column="uuid:子表主键"></key>
    57. <property name="name1:对象属性" column="name:子表字段"></property>
    58. </join>
    59. -->
    60. </class>
    61. </hibernate-mapping>

[转]xxx.hbm.xml文件配置详解的更多相关文章

  1. web.xml文件配置详解以及实例说明

    1.web.xml学名叫部署描述符文件,是在Servlet规范中定义的,是web应用的配置文件. 2.部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出 ...

  2. Maven学习总结(一)——pom.xml文件配置详解

    <build>标签:<plugins>给出构建过程中所用到的插件 <plugins> <plugin> <groupId>org.apach ...

  3. crossdomain.xml的配置详解

    目录 1 简介 2 crossdomain.xml的配置详解 3 总结 1 简介 flash在跨域时唯一的限制策略就是crossdomain.xml文件,该文件限制了flash是否可以跨域读写数据以及 ...

  4. 史上最全的maven pom.xml文件教程详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  5. hibernate--hibernate.cfg.xml常用配置详解

    在hibernate中最重要的两个配置文件就是hibernate.cfg.xml和xxx.hbm.xml文件,前者是一些配置信息,后者是配置表和对象的映射关系,可以通过注解的方式来取代. 本篇文章主要 ...

  6. 转载 Spring、Spring MVC、MyBatis整合文件配置详解

    Spring.Spring MVC.MyBatis整合文件配置详解   使用SSM框架做了几个小项目了,感觉还不错是时候总结一下了.先总结一下SSM整合的文件配置.其实具体的用法最好还是看官方文档. ...

  7. logback logback.xml常用配置详解(三)

    logback logback.xml常用配置详解 <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之 ...

  8. logback logback.xml常用配置详解(一)<configuration> and <logger>

    logback logback.xml常用配置详解(一)<configuration> and <logger> 博客分类: Log java loglogback  原创文章 ...

  9. ssh2的application.xml配置文件配置详解

    ssh2的application.xml配置文件配置详解   1.导入其他的配置文件.在ssh项目中可以导入其他的配置文件,导入的格式为: <import resource="clas ...

随机推荐

  1. [bzoj1070] 修车

    这周学习了费用流,就写了几题.其中有一题就是bzoj上的修车,看起来很丧,交了6次都是除了样例全wa(事实证明样例说明不了什么,还会误导你……). 题目大意:有m个技术人员n辆车,一个技术人员只能同时 ...

  2. ms17010利用失败解决一则

    没有反弹得到session并且提示如下: [-] 10.0.131.2:445 - Service failed to start, ERROR_CODE: 216 换了一个payload set p ...

  3. 2017多校第4场 HDU 6078 Wavel Sequence DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6078 题意:求两个序列的公共波形子序列的个数. 解法: 类似于最长公共上升子序列,对于每个i,只考虑存 ...

  4. [hadoop][基本原理]zookeeper场景使用

    代码:https://github.com/xufeng79x/ZkClientTest 1. 简介 zookeeper的特性决定他适用到某些场景非常合适,比如典型的应用场景: 1.集群管理(Grou ...

  5. 简述MapReduce计算框架原理

    1. MapReduce基本编程模型和框架 1.1 MapReduce抽象模型 大数据计算的核心思想是:分而治之.如下图所示.把大量的数据划分开来,分配给各个子任务来完成.再将结果合并到一起输出.注: ...

  6. Web测试中容易被忽略的Charset问题

    今天继续进行一个更综合的脚本制作,录制设置.进行录制.脚本修改,一切都轻车熟路,进行得很顺利.经过近一个小时的对比和修改,OK,脚本大功告成,终于可以小试牛刀了,嘿嘿.    运行,replay lo ...

  7. python模块安装路径

    Unix(Linux): prefix/lib/pythonX.Y/site-packages 默认路径:/usr/local/lib/pythonX.Y/site-packages 另外,在Unix ...

  8. apache 把404页面的url转发给php脚本处理

    # .htaccess1 RewriteCond %{REQUEST_FILENAME} !-f 2 RewriteRule ^(.*)$ map.php?host=%{HTTP_HOST}& ...

  9. 洛谷P1886滑动窗口

    题目传送门 理解题意:给定一个数列和窗口范围k,求依次向右移动窗口时每次窗口内的最大和最小值. 没什么思维难度,一边扫过去,用两个数组maxx和minn记录每个窗口内的最大最小值,移动过程中用两个变量 ...

  10. Shiro源码分析之Subject和SecurityManager

    Subject 毫无疑问,Subject是Shiro最重要的一个概念. “Subject”只是一个安全术语,意味着应用程序用户的特定于安全性的“视图”.Shiro Subject实例代表单个应用程序用 ...