hibernate 一对多单向关联配置完整示例

来源:互联网 发布:阿里云vps搭建ss教程 编辑:程序博客网 时间:2024/06/06 03:58


JAVA 类:

public class App implements Serializable { private Long appId;//应用编号private String appName;//应用名称 private Set<AppPics> pics;//省略getter,setter}

public class AppPics implements Serializable {private Long Id; //IDprivate Long appId; //应用程序编号private String picurl; //图片地址 //省略getter,setter}


映射:

App.hbm.xml

<hibernate-mapping package="com.netcru.bean"><class name="App" table="Applactions"> <id name="appId" column="appId" type="java.lang.Long"><generator class="identity"> </generator></id><!-- 属性 --> <property name="appName" column="appName"></property>   <set name="pics" lazy="false"> <key column="appId"></key> <one-to-many class="AppPics"/> </set> </class></hibernate-mapping>


这里 lazy设置为立即加载的。


AppPics.hbm.xml
<hibernate-mapping package="com.netcru.bean"><class name="AppPics" table="AppPics"> <id name="Id" column="Id" type="java.lang.Long"><generator class="identity"> </generator></id><!-- 属性 --><property name="appId" column="appId"></property><property name="picurl" column="picurl"></property>  </class></hibernate-mapping>


表结构:

CREATE TABLE [dbo].[Applactions]([appId] [int] NOT NULL,[appName] [varchar](40) NULL, CONSTRAINT [PK_APPLACTIONS] PRIMARY KEY CLUSTERED ([appId] ASC)  ) ON [PRIMARY]

CREATE TABLE [dbo].[AppPics]([Id] [int] IDENTITY(1,1) NOT NULL,[appId] [int] NULL,[picurl] [varchar](200) NULL,  CONSTRAINT [PK_APPPICS] PRIMARY KEY CLUSTERED ([Id] ASC) ON [PRIMARY]



原创粉丝点击