您的位置:首页 > 其它

Hibernate入门学习之配置文件的理解

2017-08-20 10:29 323 查看
映射文件:映射一个实体类对象,通过这个映射文件可以实现将对象数据直接保存到数据库中

package:要映射的对象所在的包

        auto-import 默认为true, 在写hql的时候自动导入包名

        如果指定为false, 再写hql的时候必须要写上类的全名;

class 映射某一个对象的(一般情况,一个对象写一个映射文件,即一个class节点)

            name 指定要映射的对象的类型

            table 指定对象对应的表;

             如果没有指定表名,默认与对象名称一样

主键生成策略:

                    identity  自增长(mysql,db2)

                    sequence  自增长(序列), oracle中自增长是以序列方法实现

                    native  自增长【会根据底层数据库自增长的方式选择identity或sequence】

                            如果是mysql数据库, 采用的自增长方式是identity

                            如果是oracle数据库, 使用sequence序列的方式实现自增长

                    

                    increment  自增长(会有并发访问的问题,一般在服务器集群环境使用会存在问题。)

                    

                    assigned  指定主键生成策略为手动指定主键的值

                    uuid      指定uuid随机生成的唯一的值

                    foreign   (外键的方式, one-to-one讲)

普通字段映射

            property

                name  指定对象的属性名称

                column 指定对象属性对应的表的字段名称,如果不写默认与对象属性一致。

                length 指定字符的长度, 默认为255

                type   指定映射表的字段的类型,如果不指定会匹配属性的类型

                    java类型:     必须写全名

                    hibernate类型:  直接写类型,都是小写

组件映射:

        <component name="wheel">

            <property name="size"></property>

            <property name="count"></property>

        </component>

        

            generator:主键生成策略.就是每条记录录入时,主键的生成规则.(7个)

            identity : 主键自增.由数据库来维护主键值.录入时不需要指定主键.

            sequence: Oracle中的主键生成策略.

            increment(了解): 主键自增.由hibernate来维护.每次插入前会先查询表中id最大值.+1作为新主键值.            

            hilo(了解): 高低位算法.主键自增.由hibernate来维护.开发时不使用.

            native:hilo+sequence+identity 自动三选一策略.

            uuid: 产生随机字符串作为主键. 主键类型必须为string 类型.

            assigned:自然主键生成策略. hibernate不会管理主键值.由开发人员自己录入.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hibernate