Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
关于JPA namedquery的疑问_Jpa_Ejb 3.0 - Fatal编程技术网

关于JPA namedquery的疑问

关于JPA namedquery的疑问,jpa,ejb-3.0,Jpa,Ejb 3.0,我正在尝试执行namedquery @NamedQuery(name="getEmployeeDetails",query="select e.username,e.email,e.image,e.firstname,e.lastname from Employee e where e.empid=?1") 现在,当我在EJB 3.0会话Bean中执行此查询时,我应该返回的对象是什么。我尝试返回ListIt返回一个向量,该向量会创建一个classcast异常。employee表包含密码等字段以

我正在尝试执行namedquery

@NamedQuery(name="getEmployeeDetails",query="select e.username,e.email,e.image,e.firstname,e.lastname from Employee e where e.empid=?1")
现在,当我在EJB 3.0会话Bean中执行此查询时,我应该返回的对象是什么。我尝试返回ListIt返回一个向量,该向量会创建一个classcast异常。employee表包含密码等字段以及其他我不想获取的机密详细信息。因此,我没有使用
从employee e中选择e

我正在学习JPA,任何人都可以提供帮助。

通过对返回的对象调用
.getClass()
来检查返回的类型。我猜这是一个数组


但这并不是使用JPA的好方法。选择整个实体,然后不要使用你不需要的东西。这并不是对性能的影响。

下面是一个示例查询,它只获取所需字段,但必须为其创建这样的构造函数

查询:
从Employee e中选择新的package\u name.Employee(e.username、e.email、e.image、e.firstname、e.lastname),其中e.empid=?1


它将返回带有所选字段的员工实体,剩余字段将具有默认值。

谢谢投票。但Nayan的答案正是我需要的。无论如何,感谢您抽出时间。