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

read-atleap-hibernate部分分析1-Layout

2013年02月02日 ⁄ 综合 ⁄ 共 2165字 ⁄ 字号 评论关闭
read-atleap-hibernate部分分析1-Layout

Ø Layout

ª layout通过外键继承与localizable,由于设置了非延迟加载,检索layout时,Hibernate会通过外键关联(内连接)同时检索出子表(layout)和父表(localizable

 

©查找Layout对象

 Layout
layout = layoutManager.findLayoutByDefinition(tmpDefinition);

return (Layout) findUniqueResult("from Layout l where l.definition = ?", new

Object[]{definitionName});

 

© HQL语句

Hibernate: select layout0_.localizable_id as id, layout0_.definition as definiti

on12_, layout0_.cpDefinition
as cpDefini3_12_, layout0_.name as name12_,
layout0

__1_.version
as version0_, layout0__1_.class_name as
class_name0_ from layout la

yout0_ inner join
localizable layout0__1_ on layout0_.localizable_id=layout0__1_

.id where (layout0_.definition=? )

 

©layout表结构

mysql> select * from layout;

mysql> desc layout;

+----------------+--------------+------+-----+---------+-------+

| Field          | Type         | Null | Key | Default | Extra |

+----------------+--------------+------+-----+---------+-------+

| localizable_id
| bigint(20)   |      | PRI | 0       |      
|

| definition     | varchar(255) |      | UNI |         |      
|

| cpDefinition   | varchar(255) | YES  |     |
NULL    |       |

| name           | varchar(255) |      | UNI |         |      
|

+----------------+--------------+------+-----+---------+-------+

mysql> desc localizable;

+------------+--------------+------+-----+---------+-------+

| Field     
| Type         | Null | Key |
Default | Extra |

+------------+--------------+------+-----+---------+-------+

| id         | bigint(20)   |     
| PRI | 0       |       |

| version   
| bigint(20)   |      |    
| 0       |       |

| class_name | varchar(255) | YES  |     |
NULL    |       |

+------------+--------------+------+-----+---------+-------+

 

© layout表内容

+----------------+-------------+--------------------+-------------+

| localizable_id | definition  | cpDefinition       | name        |

+----------------+-------------+--------------------+-------------+

|              0 | .coreLayout | .coreLayoutContent
| Core layout |

+----------------+-------------+--------------------+-------------+

 

©
layout
localizable.hbm.xml中映射描述

<joined-subclass

           
name="com.blandware.atleap.model.core.Layout"

            table="layout"

            dynamic-update="false"

            dynamic-insert="false"

           
lazy="false"

        >

        <key

            column="localizable_id"

        />


抱歉!评论已关闭.