`

Hibernate 配置文件中 formula 的使用

阅读更多
Property元素中的formula允许对象属性包含导出值,比如sum、average、max等的结果。如: 
<property name= "averagePrice"  formula= "(select avg(pc.price) from PriceCatalogue pc, SelectedItems si where si.priceRefID=pc.priceID)" />  
此外,formula还可以基于当前记录的特定属性值从另一个表检索值。例如:
代码
<property name= "currencyName"  formula= "(select cur.name from currency cur where cur.id= currencyID)" />  
代码
<property name= "schNum"  formula= "(select max(a.schoolNumb) from sys_act_code as a)" />  
注意:
1,formula="()",里面的是sql语句,字段和表名都应该和数据库相应,而不是字段,若带有参数如cur.id= currencyID,这个currencyID才是对象的东东.
2,formula="( sql )",这个括号不能少,不然会报错,我试了几次,没括号就报错,添上就没问题
3,操作字段一定要用别名
问题: 
 1,org.springframework.orm.hibernate3.HibernateSystemException: Null value was assigned to a property of primitive type setter of 
没用别名,会出现这个错误,添个别名就好了

2,如果我要用obj.getSchNum()得到想要的值,该对象(obj)必须是hibernate取得的对象,

3,如果要传入参数,如上面那个,currencyID 是该对象的属性,它的值也是有hibernate操作当前对象时,把该属性对应的值自动传入进去.
分享到:
评论

相关推荐

    hibernate映射配置文件不支持union联合查询[参照].pdf

    本案例中,开发者遇到了一个与Hibernate映射配置文件相关的异常,该异常涉及到不支持的“union”联合查询。具体表现为在执行查询时抛出了`SQLGrammarException`,提示为`ORA-00907: 缺失右括号`,这通常意味着SQL...

    hibernate中文帮助文档

    2.4. Hibernate独有的注解扩展:除了标准的EJB3注解,Hibernate还提供了一些自定义注解,如`@GeneratedValue`用于设置主键生成策略,`@Formula`用于在属性中使用SQL表达式,`@Cache`用于配置缓存,`@Filter`用于动态...

    Hibernate+中文文档

    3.7. XML配置文件 3.8. J2EE应用程序服务器的集成 3.8.1. 事务策略配置 3.8.2. JNDI绑定的SessionFactory 3.8.3. 在JTA环境下使用Current Session context (当前session上下文)管理 3.8.4. JMX部署 4. 持久化...

    hibernate_annotation_中文帮助文档

    系统配置涉及环境变量设置,如JDBC驱动,以及Hibernate的配置文件(如`hibernate.cfg.xml`)。 2. **实体Bean映射** - **EJB3注解**:实体Bean是ORM的核心,EJB3注解提供了在Java类上直接声明数据库映射的方法。 ...

    详解Hibernate一对一映射配置

    在XML配置文件中,我们可以在任意一方的实体类中声明`&lt;one-to-one&gt;`标签,例如: ```xml &lt;!-- Address的其他属性 --&gt; ``` 这里,Person和Address类共享同一主键`PERSON_ID`,表明它们一...

    Hibernate 中文 html 帮助文档

    1.2.3. Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 ...

    hibernate annotations 中文参考手册

    在 Hibernate 中使用注解可以极大地提高开发效率,减少配置工作量,并使得代码更加清晰易读。 #### 核心注解解析 ##### @Entity 此注解用于标记一个 Java 类作为持久化实体。它告诉 Hibernate 这个类将被映射到...

    hibernate3.2中文文档(chm格式)

    3.7. XML配置文件 3.8. J2EE应用程序服务器的集成 3.8.1. 事务策略配置 3.8.2. JNDI绑定的SessionFactory 3.8.3. 在JTA环境下使用Current Session context (当前session上下文)管理 3.8.4. JMX部署 4. 持久化...

    hibernate annotation 中文文档

    - **3.1.1 全局级别的元数据**:可以在 `hibernate.cfg.xml` 文件中配置全局的元数据。 - **3.1.2 实体级别的元数据**:可以通过 `*.hbm.xml` 文件来配置单个实体Bean的元数据。 - **3.1.3 属性级别的元数据**:...

    Hibernate中文详细学习文档

    1.2.3. Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 ...

    hibernate_annotations(中文API,高清)

    通常,这涉及到在Hibernate配置文件中指定实体扫描路径,让Hibernate知道在哪里查找被注解标注的实体类。 3. **映射关系**:Hibernate Annotations支持多种映射关系,包括一对多、多对一、一对一、多对多等。开发者...

    hibernate_reference中文文档.pdf

    - **3.7 XML 配置文件**:讲解如何通过 XML 文件来配置 Hibernate。 - **3.8 J2EE 应用程序服务器的集成** - **3.8.1 事务策略配置**:讨论如何配置 Hibernate 以与 J2EE 事务集成。 - **3.8.2 JNDI 绑定的 ...

    hibernate教程

    - **Hibernate配置文件**:如`hibernate.cfg.xml`,配置数据库连接信息、方言等。 - **日志框架**:配置适当的日志框架,如Log4j、SLF4J等。 #### 三、实体Bean 实体Bean是Hibernate中非常重要的概念之一,用于...

    hibernate 中文注解

    - **系统配置:** 包括配置数据库连接信息、Hibernate配置文件等。 #### 三、实体Bean - **简介:** 实体Bean是ORM(对象关系映射)中用于表示数据库表的对象。在Hibernate中,可以通过注解来定义这些实体Bean的...

    HibernateAPI中文版.chm

    3.7. XML配置文件 3.8. J2EE应用程序服务器的集成 3.8.1. 事务策略配置 3.8.2. JNDI绑定的SessionFactory 3.8.3. 在JTA环境下使用Current Session context (当前session上下文)管理 3.8.4. JMX部署 4. 持久化...

    hibernate-annotations_中文帮助文档

    通过 Hibernate Annotations,开发者能够在 Java 类中直接定义元数据,这不仅减少了 XML 配置文件的数量,还使得整个项目更加简洁和易于维护。同时,Hibernate 的注解机制提供了丰富的功能,如映射继承关系、复合...

    最全Hibernate 参考文档

    3.7. XML配置文件 3.8. J2EE应用程序服务器的集成 3.8.1. 事务策略配置 3.8.2. JNDI绑定的SessionFactory 3.8.3. JTA和Session的自动绑定 3.8.4. JMX部署 4. 持久化类(Persistent Classes) 4.1. 一个简单的...

    hibernate 体系结构与配置 参考文档(html)

    Hibernate配置 1.2.4. 用Ant构建 1.2.5. 启动和辅助类 1.2.6. 加载并存储对象 1.3. 第二部分 - 关联映射 1.3.1. 映射Person类 1.3.2. 单向Set-based的关联 1.3.3. 使关联工作 1.3.4. 值类型的集合 1.3.5...

Global site tag (gtag.js) - Google Analytics