注意事项:
1、与条件使用 &&
2、过滤条件queryTemplate 不能加上排序order by语句。解决方法是使用query.setOrdering("orderDate desc");
public List<FanOrder> queryByUsername(String username,String startDate,String endDate){
List<FanOrder> orders = null;
Query query = null;
try {
String queryTemplate = "",filter="";
if (!username.equals("")){
queryTemplate = "username == \"%s\" && orderDate >= \"%s\" && orderDate <= \"%s\" ";
filter = String.format(queryTemplate,username,startDate, endDate);
}else{
queryTemplate = "orderDate >= \"%s\" && orderDate <= \"%s\" ";
filter = String.format(queryTemplate,startDate, endDate);
}
query = pm.newQuery(FanOrder.class,filter);
query.setOrdering("orderDate desc");
orders = (List<FanOrder>) query.execute();
} catch (RuntimeException e) {
e.printStackTrace();
}finally {
query.closeAll();
}
return orders;
}
分享到:
相关推荐
### JDO 使用手册知识点概述 #### 一、JDO简介 Java Data Objects (JDO) 是一种用于管理和操作持久化对象的标准API。它提供了一种简单而强大的方式来处理对象到数据库之间的映射,适用于各种数据库环境。JDO的目标...
3. **查询语言**:JDO Query Language (JDOQL) 是一种类SQL的查询语言,用于检索和操作持久化对象。 4. **缓存管理**:JDO支持本地缓存,可以提高数据读取性能并减少对数据库的依赖。 5. **事务管理**:提供事务...
JDO包含数据存储管理器(PersistenceManager)、查询语言(JDOQL)和持久化类等核心组件。数据存储管理器负责对象的生命周期管理,包括实例化、持久化、查询和删除。JDOQL是一种类似Java的查询语言,可以方便地对...
通过JDO,开发者可以使用普通的Java对象(POJOs,Plain Old Java Objects)来表示数据库中的记录,JDO会自动处理对象的持久化、查询和事务管理。 ### JDO的基本组件 1. **DataStore**: 这是JDO的后端,通常是一个...
4. **Query**: JDO的查询语言(JDOQL)允许开发者编写面向对象的查询,类似于SQL但更加灵活。你可以根据需要指定查询条件、排序规则,甚至执行复杂的数据聚合操作。 5. **Annotations**: JDO 2.2支持使用Java 5+的...
5. **查询语言**(JDOQL):JDO提供了一种面向对象的查询语言,类似于SQL,但支持更多的面向对象特性,如类继承、接口、方法调用等。 6. **事务管理**:JDO支持事务控制,可以确保数据的一致性和完整性,提供不同的...
2. **对象查询**:通过`PersistenceManager`的`query()`方法构建查询,使用JDOQL(JDO Query Language)进行对象检索。 3. **对象更新**:对持久化对象进行修改后,调用`PersistenceManager`的`flush()`方法,将变更...
- **获取PersistenceManager**:在代码中,使用PersistenceManagerFactory创建并获取PersistenceManager实例,它是JDO的主要入口点。 - **编写业务逻辑JavaBean**:实现业务逻辑,使用PersistenceManager进行数据...
JDO的使用简化了Hive的开发和维护,使得数据存储和查询的逻辑更加清晰。 三、HDFS与JDO的结合 HDFS是Hadoop分布式文件系统,用于存储大规模数据集。虽然HDFS本身不直接支持JDO,但在某些场景下,通过中间件或自定义...
JDBC虽然强大,但直接使用SQL语句进行数据库操作可能会增加开发复杂性,而JDO则允许程序员通过定义类来创建数据对象,将对象与数据库之间的交互工作交给JDO实现,从而简化数据库访问流程。 JDO的核心思想是对象-...
然后,你可以使用JDO的`PersistenceManager`实例来创建、查询、更新和删除这些对象。例如,`PersistenceManagerFactory`用于获取`PersistenceManager`实例,`makePersistent()`用于保存对象,`getPersistentAll()`...
2. **Persistence Capable Classes**:在JDO中,通过实现`javax.jdo.PersistenceCapable`接口或使用`@PersistenceCapable`注解,将类声明为可持久化的。这些类的实例可以被持久化、检索、更新和删除。 3. **...
jdo2-api jdo2-api jdo2-api jdo2-api
本文档提供了一个关于如何使用 JDO 和 Eclipse Devtool 插件进行简单持久化操作的介绍。通过这个例子,我们可以了解到如何安装必要的工具、配置 JDO 提供商以及实现基本的数据持久化。JDO 是一种强大的对象持久化...
- **查询优化**:避免过于复杂的查询,合理使用JOIN和子查询。 ### 6. 变更控制 在项目中,变更控制是非常关键的一环。当数据模型或元数据发生变化时,需要同步更新数据库脚本,并确保所有部署的环境中都应用了...
赠送jar包:jdo-api-3.0.1.jar; 赠送原API文档:jdo-api-3.0.1-javadoc.jar; 赠送源代码:jdo-api-3.0.1-sources.jar; 赠送Maven依赖信息文件:jdo-api-3.0.1.pom; 包含翻译后的API文档:jdo-api-3.0.1-javadoc-...
赠送jar包:datanucleus-api-jdo-3.2.6.jar; 赠送原API文档:datanucleus-api-jdo-3.2.6-javadoc.jar; 赠送源代码:datanucleus-api-jdo-3.2.6-sources.jar; 赠送Maven依赖信息文件:datanucleus-api-jdo-3.2.6....
开发者可以使用JDO API来操作GAE的Datastore,实现数据的存储、查询和更新。GAE的Datastore是一个NoSQL数据库,具有高可用性和可扩展性,适合大规模分布式应用。 4. AJAX:AJAX是前端技术,通过JavaScript异步地与...
JDO支持跨多种数据库的移植性,这意味着使用JDO编写的代码可以在不同的数据库系统之间轻松迁移,无需对代码进行大规模修改。这对于大型项目来说尤其重要,因为它减少了因更换数据库而导致的开发成本。 **3. 性能...