`

hibernate3 多表的无外键约束时的查询

阅读更多
数据库中没有约束时,如何配置hibernate约束。

映射文件
...
...
		<!-- bi-directional many-to-one association to TbChannelInfo -->
		<many-to-one name="tbChannelInfo" class="com.coinv.mts.domain.TbChannelInfo"
			not-null="true">
			<meta attribute="field-description">
				@hibernate.many-to-one
				not-null="true"
				@hibernate.column name="DYTChannelID"         
	        </meta>
			<column name="DYTChannelID" />
		</many-to-one>
...
...




domain
public class TbDyDataTemp implements java.io.Serializable {
...
...
private TbChannelInfo tbChannelInfo;
	
	public TbChannelInfo getTbChannelInfo() {
		return tbChannelInfo;
	}

	public void setTbChannelInfo(TbChannelInfo tbChannelInfo) {
		this.tbChannelInfo = tbChannelInfo;
	}
...
...


dao
...
...
		DetachedCriteria criteria = 
			DetachedCriteria.forClass(TbDyDataTemp.class);
		
		criteria.add(Restrictions.in("dytdeviceId", deviceId));
		criteria.add(Restrictions.eq("dytvalid", Const_val.C_INT_VALID));
		criteria.createCriteria("tbChannelInfo").add(Restrictions.isNotNull("ciid"));

List<TbDyDataTemp> results = getHibernateTemplate().findByCriteria(criteria);
...
...

分享到:
评论

相关推荐

    hibernate基于主外键的一对多/多对一关联

    "hibernate基于主外键的一对多/多对一关联"是Hibernate中两个核心的概念,用于描述实体之间的关系。下面将详细阐述这两个关联类型及其实现方式。 一对多关联是指在数据库中,一个表的记录可以与另一个表中的多个...

    Hibernate一对一唯一外键关联映射(单向关联)

    唯一外键关联映射时,外键字段在数据库中设置为主键约束,确保每个值都是唯一的,这样就能保证一对一的关系。 ### 2. 创建实体类 假设我们有两个实体类,`Person` 和 `IdCard`,其中 `Person` 拥有一个 `IdCard` ...

    hibernate一对一唯一外键关联映射(单项关联)

    在Java的持久化框架Hibernate中,一对一(One-to-One)关联映射是常见的关系映射方式之一,尤其在处理数据库中的唯一外键关联时。这种映射方式允许在一个实体类中引用另一个实体类的唯一实例,形成一对一的关系。在...

    hibernate一对一唯一外键关联映射(双向关联)

    一对一关联意味着一个实体只能与另一个实体的单一实例相关联,这种关系通常出现在两个表之间,其中一个表的主键作为另一个表的外键。在Hibernate中,可以使用`@OneToOne`注解来建立这种关联。 ### 2. 唯一外键关联 ...

    hibernate一对一外键关系

    这需要在数据库表结构中创建一个外键约束,并在Hibernate映射文件中通过`&lt;many-to-one&gt;`标签来定义。 ```xml &lt;!-- 员工实体配置 --&gt; &lt;!-- 其他属性... --&gt; &lt;!-- 账户实体配置 --&gt; &lt;!-- ...

    MLDN魔乐科技JAVA培训_Oracle课堂18_外键约束.rar

    在实际的Java开发中,特别是在使用JDBC或ORM框架如Hibernate进行数据库操作时,理解外键约束对于编写正确且高效的SQL查询至关重要。例如,使用Hibernate时,外键约束可以帮助实现对象关系映射,使得对象间的关联可以...

    Hibernate 一对多外键单向关联

    - 创建`address_1nfk`表时,定义了addressid为主键,addressdetail为可空字段,personid为外键,通过外键约束`FK9B93456DC08D1667`关联到`person_1nfk`表的personid。 在配置Hibernate映射文件时,对于Person实体...

    Hibernate使用外键ForeignKey

    2. **外键约束的类型**: - `UNIQUE`: 外键列的值必须唯一,不允许重复。 - `NOT NULL`: 外键列的值不能为空。 - `CASCADE`: 当主键表中的记录被删除或更新时,自动更新或删除外键表中的对应记录。 - `SET NULL`...

    Hibernate基于外键的一对多单向关联

    "product.sql" 这个文件可能是数据库脚本,包含了创建商品表的SQL语句,可能包括外键约束,用于演示或测试 Hibernate 的一对多关联配置。 **详细知识点:** 1. **Hibernate框架**:Hibernate是一个开源的对象关系...

    Hibernate一对一外键映射

    这与数据库层面的外键约束类似,但在Hibernate中,我们通过注解或XML配置文件来定义这种关联。通常,一方实体会包含对方的主键,而另一方实体则可能没有反向引用。 **映射方式** 1. **注解映射:** 使用`@...

    Hibernate一对一单向外键关联(annotation/xml)

    3. **操作关联对象**:现在,我们可以通过Hibernate API来创建、查询和更新这两个实体的关联。 **XML方式实现一对一单向外键关联** 如果选择XML配置,我们需要在`hibernate.cfg.xml`或`persistence.xml`文件中定义...

    用hibernate操作多表的例子

    5. 删除(Delete):通过Session的delete()方法删除对象,Hibernate会处理相关的外键约束问题。 五、级联操作 在多表关联中,级联操作可以帮助我们一次性处理关联对象。例如,当删除一个部门时,可以同时删除所有...

    hibernate一对一之唯一外键关联(双向关联)

    - 虽然一对一关联提供了便利,但过多的一对一关联可能会影响性能,因为每次查询可能涉及多个表,增加数据库访问的复杂性。因此,应谨慎设计实体间的关系。 8. **实例应用** - 在实际项目中,一对一关联常用于用户...

    hibernate的查询学习.

    为了正确执行多表查询,确保数据库中的表结构和外键约束正确配置至关重要。例如,选课表(sc)的创建语句应该包含对学生表和课程表的外键约束,以维护数据的完整性。 在实际开发中,理解并熟练掌握Hibernate的查询...

    Hibernate关联映射-one to one单向外键关联

    如果需要在`Account`表中也添加外键约束,可以使用`inverse="true"`属性,这样外键将被定义在`Account`实体上。 使用注解的方式同样简单。在`User`类中,我们可以这样定义: ```java @Entity public class User { ...

    hibernate中基于外键的one2one

    在数据库层面,这种关系通常通过主键和外键约束来实现。 **2. 基于外键的One-to-One映射** 在Hibernate中,基于外键的One-to-One映射通常是在一方实体的表中添加一个指向另一方实体的外键。这种方式可以是单向的,...

    Hibernate一对多关联映射(注解)

    `@JoinColumn`注解用于指定外键字段名,这将创建一个外键约束,确保数据一致性。 在实际操作中,我们还需要配置Hibernate的SessionFactory,并在代码中进行增删查改操作。例如,添加一个新的订单到用户: ```java ...

    hibernate(多对多关系映射)

    脚本可能包含创建`Student`、`Course`以及中间表`student_course`的语句,以及可能的外键约束。 5. **注释的重要性** 对于初学者来说,详细的注释是理解代码的关键。注释应解释每个部分的作用,如为何使用特定的...

    根据hibernate配置文件生成数据库.zip

    外键约束在多表操作中尤其重要,它们帮助维护引用完整性,防止出现悬挂引用。 总结来说,这个压缩包提供了关于如何使用Hibernate和其hbm2ddl工具创建数据库表结构的完整教程。开发者可以通过阅读和实践这些文档,...

    hibernate3 帮助文档CHM

    13. **其他高级特性**:如级联操作、联合主键、复合主键、外键约束、乐观锁和悲观锁等。 综上所述,《Hibernate3 帮助文档 CHM》是Java开发者不可或缺的参考资料,无论你是初学者还是经验丰富的开发者,都可以从中...

Global site tag (gtag.js) - Google Analytics