2010-03-19 12 views
1

Je travaille sur une application GAE. Je veux interroger le magasin de données et récupérer tous les enregistrements entre startDate et endDate. Chaque enregistrement a un champ datetime. J'utilise une requête similaire à ceci (le code ci-dessous est quelque chose que je rapidement attrapé - Je ne suis pas près de ma machine de développeur.):Requête par datetime dans JDOQL/Java/GAE


Query query = pm.newQuery(Employee.class); 
query.setFilter("lastName == lastNameParam"); 
query.setOrdering("hireDate desc"); 
query.declareParameters("String lastNameParam"); 

try { 
    List results = (List) query.execute("Smith"); 
    if (results.iterator().hasNext()) { 
     for (Employee e : results) { 
      // ... 
     } 
    } else { 
     // ... no results ... 
    } 
} finally { 
    query.closeAll(); 
} 

Comment dois-je formater la date pour former un travail correctement question? Comment le tampon datetime est-il stocké dans le magasin de données? Comme timestamp? Entièrement formaté? Je ne trouve aucune information à ce sujet. S'il vous plaît aider.

Répondre

2

Selon google datastore low-level API, Date, les objets semblent pouvoir être stockés librement dans GAE. Par conséquent, utiliser java.util.Date (ou javax.sql.Date, ce n'est pas totalement explicite) fera l'affaire, je pense.

0

Vous pouvez également utiliser l'horodatage

query.setFilter("hiredate>1700215218");