在EJB JPA中,使用results = (List<Object>) query.getResultList()查询数据,当数据库中没有数据时,results 得到的并不是null,而是一个list:[null].
以下代码说明了这个问题:
public static void main(String args[]) {
List<Object> lt = get();
if(lt == null)
System.out.println("0");
else
System.out.println("1"); // 1
}
private static List<Object> get() {
List<Object> results = new ArrayList<Object>();
results.add(null);
System.out.println(results); //[null]
return results;
}
分享到:
相关推荐
【EJB3与JPA开发详解】 EJB(Enterprise JavaBeans)是Java平台上的企业级组件模型,用于构建可扩展的、分布式的企业级应用程序。EJB3是EJB规范的一个重要版本,它引入了许多简化开发的新特性,使得EJB更加易用。而...
通过EJB3和JPA调用存储过程,可以使用`EntityManager`的`createStoredProcedureQuery()`方法,并设置参数,然后调用`execute()`执行。 总结,EJB3和JPA提供了灵活的数据库访问方式,包括使用原生SQL和调用存储过程...
**EJB3.0基础知识与JPA ORM映射详解** EJB(Enterprise JavaBeans)是Java平台上用于构建可部署的企业级应用的一种组件模型。EJB3.0是其一个重要版本,发布于2006年,它在前一版本的基础上进行了重大改进,引入了...
EJB3 Persistence基于Java Persistence API (JPA),允许开发者使用注解和XML配置来定义实体类的映射关系,从而实现对象关系映射(ORM)。本文将详细介绍如何在EJB3中使用实体Bean进行增删改查等基本操作,并特别关注...
在EJB或Spring中,通常可以利用容器自动处理事务边界。 8. **懒加载与级联操作** JPA支持懒加载和级联操作,比如在上述用户和订单的例子中,可以通过设置`mappedBy`属性实现懒加载,而级联操作如`CascadeType.ALL`...
对于`java.util.Date`或`java.util.Calendar`类型的参数,需要使用特殊的`setParameter()`方法,并指定`javax.persistence.TemporalType`来指导JPA如何将其转换为对应的SQL类型。 **总结** JPQL为Java EE开发者...
<provider>org.hibernate.ejb.HibernatePersistence ... ``` 现在,我们可以通过EntityManager接口来操作实体。例如,创建一个新的用户: ```java EntityManagerFactory emf = Persistence....
综上所述,EJB 3.0 Entity Bean的开发涉及了JPA、ORM、事务管理、查询语言等多个方面,通过注解驱动的编程方式,使得开发者能更高效地构建可扩展且可靠的业务层。了解并掌握这些知识点对于进行企业级Java应用开发至...
调用存储过程的方法主要依赖于EntityManager对象的createNativeQuery()方法,该方法用于执行非JPA(Java Persistence API)的SQL语句。调用存储过程的SQL格式通常如下: ```sql {call 存储过程名称(参数 1, 参数 2,...
EJB3整合了JPA,使得在EJB组件中处理数据库关系变得更加便捷。多对多关系映射涉及到两个实体类,它们之间通过一个关联表进行连接。以下我们将详细讲解如何在EJB3中设置多对多关系。 1. **实体类定义**:首先,我们...
**企业级JavaBeans(EJB)3是...综上所述,EJB3中的Entity Bean结合了JPA的力量,为Java开发者提供了一个简单而强大的方式来处理持久化。通过理解并熟练运用这些概念,你可以有效地设计和实现企业级应用程序的数据层。
【EJB3查询JPQL解析】 Java Enterprise Edition (Java EE) 中的EJB 3.0引入了Java持久性查询语言(JPQL),这是一种专为访问和导航Java应用程序中的实体实例设计的语言。JPQL是对早期EJB QL的扩展和改进,它允许...
《Java持久化API(JPA)2.0详解——基于javax.persistence-2.0.0.jar包》 Java持久化API(Java ...在实际开发中,结合适当的容器或框架(如Spring、EJB等),可以充分发挥JPA的潜力,实现高效、灵活的数据管理。
EJB 3.0的持久化引入了Java Persistence API(JPA),这是一个标准的ORM(对象关系映射)框架,允许Java开发者使用对象模型来操作数据库。JPA通过注解(Annotations)和XML配置文件来定义对象-关系映射,这大大减少...
同时,客户端应用程序会通过EJB的远程接口调用这些方法,实现与数据库的间接交互。客户端代码通常包括查找SessionBean的引用,调用其方法,并处理返回的结果。 例如,一个简单的SessionBean可能包含如下方法: ```...