另外一个类似的jpql新手问题,jpql和Map的问题

问题描述

两个表CustomerandContact一对多的关系.Thatmeansonecustomerhasmultiplecontacts.部分entity的代码如下,我想用Map来表示这个一对多关系CustomerEntity:@OneToMany(cascade=CascadeType.REFRESH,mappedBy="customer",fetch=FetchType.EAGER)@MapKey(name="fieldName")privateMap<String,Contact>contacts;ContactEntity:@ManyToOne(fetch=FetchType.LAZY)@JoinColumn(name="customer_ID")privateCustomercustomer;@Column(name="FIELD_NAME")@NotNullprivateStringfieldName;@Column(name="FIELD_VALUE")@Length(max=100,message="Maximumlengthallowedforuserdefinedfieldis100")privateStringfieldValue;TheJPQL语句如下selectcfromCustomercwherec.contacts['home'].fieldValue='1234'但是在执行这个jpql语句时碰到这个出错信息,Hibernate:select....fromCustomercustomer0_,Contactcontact1_wherecustomer0_.id=contact1_.CUSTOMER_IDandcontact1_.null='home'andcontact1_.FIELD_VALUE='1234'ERROR[main][]org.hibernate.util.JDBCExceptionReporter-Incorrectsyntaxnearthekeyword'null'.可以注意到mapkey没有被成功转成表列名contact1_.null='home'.应该是contact1_.field_name='home'就对了谁有这方面的经验,问题出在哪里呢?数据库是MSSQL.

时间: 2024-09-22 23:55:01

另外一个类似的jpql新手问题,jpql和Map的问题的相关文章

python新手求助-Python3.x 检查一个类的基类

问题描述 Python3.x 检查一个类的基类 Python基础教程P123页检查类SPAMFilter的基类是这样做的 SPAMFilter._bases_ 但是我没找到这个属性,怎么回事?Python3.x取消了吗? 解决方案 查看u 一下官方文档就知道了.

stringbuffer-关于Java中FileInputStream类的一些新手疑问

问题描述 关于Java中FileInputStream类的一些新手疑问 在每次使用FileInputStream的read方法时,需要用到字节数组bytes和真实读取长度len,如代码: public static void read(){ File file = new File("D:/学习/Android/代码/Workplace/Java_8_1_File/a.txt"); try { //针对文件创建一个输入流 InputStream in = new FileInputSt

哪位大仙帮我看一下,为什么在jsp中无法实例化一个类

问题描述 我是新手啊!实体类如下:publicclassUserManager{publicstaticUserManagerinstance=newUserManager();privateUserManager(){};publicstaticUserManagergetInstance(){returninstance;}publicStringfindUser()throwsWeiboException{return"OK";}}JSP的调用如下,包已引入<%String

c++-求教C++中一个类模板的声明问题

问题描述 求教C++中一个类模板的声明问题 如图中框住的部分,求教详细说一下,这种声明方法叫什么,声明的格式是什么,这样声明的意义是什么,调用的格式是什么?小弟不胜感激. 新手一个,正在自学中,请各位大神不吝赐教,小弟拜谢! 解决方案 就是T类型的vector的函数 解决方案二: T类型 是你给Vector的定义时候需要的数据类型 例子: Vectorstd::string vec; 这个vec里面的就是std::string类型的 解决方案三: 如何声明一个类

一个类如何实现两个接口中同名同参数不同返回值的函数

假设有如下两个接口: public interface IA{    string GetA(string a);}public interface IB{    int GetA(string a);} 他们都要求实现方法GetA,而且传入的参数都是一样的String类型,只是返回值一个是String一个是Int,现在我们要声明一个类X,这个类要同时实现这两个接口: public class X:IA,IB 由于接口中要求的方法的方法名和参数是一样的,所以不可能通过重载的方式来解决,那么我们该

从反射看委托与事件 委托真的是一个类

关于委托与事件,网上介绍得非常之多,在此不再赘述,本人最近需要捣鼓一些委托,因而对委托进行一 定的寻根究底,故用反射把委托的成员揪出来,且看如下代码: delegate void DelegateDemo(); static event DelegateDemo delHandle; static void Main() { delHandle += new DelegateDemo(MyDelegate_delHandle); MemberInfo[] mis = delHandle.GetT

c++的问题-c++中int是一个类么,c++中int是一个类么,取大神,取大神

问题描述 c++中int是一个类么,c++中int是一个类么,取大神,取大神 c++中int是一个类么,取大神,取大神,c++中int是一个类么,取大神,取大神,c++中int是一个类么,取大神,取大神 解决方案 int是基本类型,不是类.C++也不是完全面向对象的语言. 解决方案二: 不是-------- 解决方案三: 不是的哦,只是基本类型而已 解决方案四: int不是一个类.int是一种数据类型.数据类型就是固定内存大小的别名.int占四个字节.所以你定义一个int型变量,他占四个字节.

java private-java 一个类的对象访问私有属性的问题

问题描述 java 一个类的对象访问私有属性的问题 public class ModifierTest1 { public static void main( String[] args ) { A a = new A(); //System.out.println(a.s); a.f(); } } class A { private int i; private String s; public A() { i = 123; s = "hello"; } public void f(

编程-设计一个类用来表达两张牌的牌组,设计这个类的初始化方式

问题描述 设计一个类用来表达两张牌的牌组,设计这个类的初始化方式 设计一个类表达一组牌,设计牌组的初始化方式 //牌值 private string face; //花色 private string suit; public zupai(string suit, string face) { this.face = face; this.suit = suit; } //牌子 public string getFace() { return face; } //花色 public string