原文地址,http://blog.csdn.net/love_080808/article/details/3758344
因为我用到了,所以将其整理了一下,以便其他人阅读。
1.建立数据库表
create table room (
id bigint not null IDENTITY(1,1),
address varchar(255),
primary key (id)
)
create table users (
id bigint not null IDENTITY(1,1),
name varchar(255),
room_id bigint,
primary key (id)
)
users表示人room表示房间,多个人共有一个房间。
2.实体类Users.java
package com.crazyjava.vo;
public class Users implements java.io.Serializable {
private static final long serialVersionUID = -1481433969291380841L;
private Long id;
private String name;
private Room room;
public Users() {
}
public Users(String name, Room room) {
this.name = name;
this.room = room;
}
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public Room getRoom() {
return room;
}
public void setRoom(Room room) {
this.room = room;
}
}
3.实体类Room.java
package com.crazyjava.vo;
public class Room implements java.io.Serializable {
private static final long serialVersionUID = 6788763073536851614L;
private Long id;
private String address;
public Room() {
}
public Room(String address) {
this.address = address;
}
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id;
}
public String getAddress() {
return this.address;
}
public void setAddress(String address) {
this.address = address;
}
}
4.映射文件
User.hbm.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="com.crazyjava.vo.Users" table="users" schema="dbo" catalog="bbs">
<id name="id" type="java.lang.Long">
<column name="id" />
<generator class="native" />
</id>
<property name="name" type="java.lang.String">
<column name="name" />
</property>
<many-to-one name="room"
column="room_id"
class="com.crazyjava.vo.Room"
cascade="all"
outer-join="true"/>
</class>
</hibernate-mapping>
5.映射文件
Room.hbm.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="com.crazyjava.vo.Room" table="room" schema="dbo" catalog="bbs">
<id name="id" type="java.lang.Long">
<column name="id" />
<generator class="native" />
</id>
<property name="address" type="java.lang.String">
<column name="address" />
</property>
</class>
</hibernate-mapping>
在<many-to-one>中,cascade表示主控方(Users)进行save-update,delete等操作时,被控方(Room)是否也一并进行相关操作。设定为all表示主控方任何操作,被控方也进行操作。
在查询时,设定outer-join为true的情况下,hibernate将使用以下sql
Hibernate:
select
user0_.id as id0_1_,
user0_.name as name0_1_,
user0_.room_id as room3_0_1_,
room1_.id as id1_0_,
room1_.address as address1_0_
from
user user0_
left outer join
room room1_
on user0_.room_id=room1_.id
where
user0_.id=?
设为false执行sql
Hibernate:
select
user0_.id as id0_0_,
user0_.name as name0_0_,
user0_.room_id as room3_0_0_
from
user user0_
where
user0_.id=?
Hibernate:
select
room0_.id as id1_0_,
room0_.address as address1_0_
from
room room0_
where
room0_.id=?
分享到:
相关推荐
"采样质量准则程序.zip_mant91_yearbw7_四种采样样本质量评判准则"这一压缩包文件提供了关于如何评估采样样本质量的四个关键方法,即距离最大最小、CL2、潜能和JD准则。下面我们将详细探讨这四种评判准则及其应用。 ...
"R0mant1cBe4r.github.io"这一命名方式暗示了这是一个GitHub Pages站点。GitHub Pages是一项免费的服务,允许用户托管静态网站。通常,个人用户会使用用户名.github.io的形式创建自己的个人主页。在这里,"R0mant1...
在Ubuntu上搭建以太坊环境时,每次到sudo apt-get install ethereum这一步都会变得巨卡无比,并且经常遇到这个问题: ... Connection timed out...E: Failed to fetch http://ppa.launchpad.net/ethereum/ethereum/ubuntu
已经开发了一种快速且可重现的方法,用于同时定量大鼠脑微透析液中的多巴胺(DA),去甲肾上腺素(NE)和5-羟色胺(5-HT)。... 这项研究为将来分析生物流体中的MANTs提供了一种简单而快速的方法。
mant0071.github.io
Bir dilin makine mantığına ne kadar yakın olmasının, makinede ne kadar hızlı çalışabileceğini belirlediği gibi, aynı zamanda insan mantığından ne kadar uzaklaştığını da gö...
"mantarray-frontend-components"是一个专门用于构建桌面和云环境中的Mantarray应用程序前端界面的组件库。这个组件库基于JavaScript技术,旨在提供一套高效、可重用且易于定制的UI元素,以提升开发者的开发效率和...
- 7353 ISAM FTTB适用的NT板为MANT-A,这类NT板通常针对中小型企业或家庭用户提供更为经济实惠的解决方案。 3. **应用场景**:在网络设备选型阶段,根据具体的应用需求选择合适的NT板,以满足不同的业务需求和性能...
标题中的“Tip2.rar_K._km”可能是指一个关于K-均值(K-Means)算法的教程或案例研究,而“Bulnaı k Mantı k”在土耳其语中意为“聚类分析”,这与K-均值算法密切相关。描述中的“Bulnaı k Mantı k ve...
TestLink是一款强大的测试管理工具,主要用于测试用例的设计、管理和执行,而Mantis则是一个简单易用的问题追踪系统,用于记录和跟踪软件开发过程中的缺陷。两者的集成使得测试过程中发现的问题可以直接从TestLink...
手册页日常实用的简短实用手册描述该项目旨在通过日常使用示例制作快速更新,实用且精确的手册页。 这是一个基于类似项目的想法,例如和 ,但是是以实际联机帮助页的格式编写的(主要是使用Pandoc从Markdown转换而来...
相对地,32位IBM浮点数格式也分为三个部分:符号位(sign)占1位、指数部分(exp)占7位、尾数部分(mant)占24位。其表示的十进制数值的计算公式为: result=(-1)^sign * (mant/(2^24)) * 16^(exp-64) 对于IEEE754...
- **__FLT_MANT_DIG__**、**__FLT_DIG__**、**__FLT_MIN_EXP__** 等宏定义了单精度浮点数的各种特性,包括有效数字位数、最小指数、最大指数等。 - **__DBL_MANT_DIG__**、**__DBL_DIG__**、**__DBL_MIN_EXP__** 等...
在优化问题中,它能够有效地寻找全局最优解,尤其是对于具有多模态(多个局部最优解)的问题。该算法的基本思想是允许在搜索过程中接受一定概率的较差解决方案,以避免过早陷入局部最优。 在物流领域,模拟退火算法...
- `mant=20`:蚂蚁数量,决定每次迭代中参与搜索的蚂蚁数目。 2. **构建距离矩阵**: - 通过计算城市坐标之间的欧氏距离,得到两两城市间的距离矩阵。 3. **初始化信息素矩阵**: - 初始化为全1矩阵,表示没有...
衡量IT站点措施中的网站开发存储库指示...no arquivo 'keys.js' que não foi colocado no repositório por questões de segurança (se mantém no .gitignore)- Colocar o arquivo 'keys.js' no diretório './b
《简单蚁群算法求解TSP的源程序》 蚁群算法是一种受到自然界蚂蚁觅食行为启发的优化算法,由Dorigo M在1991年首次提出。它以其强大的鲁棒性、分布式计算特性以及与其他算法的融合能力而备受关注,尤其在解决组合...
堆垛机 1.0 堆栈使编译器自动化。 先决条件 需要安装以下软件包: # sudo apt-get install g++ 编译 要编译项目,只需导航到 stacker 文件夹并运行 compile.sh: ... se mantém no estado q2 q2 (1, 2, -, q
1. 初始化:设定参数,如蚁的数量(mant)、循环次数(maxit)、信息素重要度参数(alpha、beta)、遗忘参数(rho)以及单位信息量(Q)。在这个例子中,例如nc表示问题的维度,xx表示试验次数,tao表示信息素的初始...