2012-07-10 6 views
0

휴대 전화 번호가 존재하는지 여부를 확인한 후 Google 앱 엔진 데이터 저장소에 데이터를 저장하려고하는데 코드가 항상 휴대 전화 번호가 데이터베이스에 "실패"로 표시되는지 여부 . 그것은 실패를 표시하지만 여전히 날 내가Google 앱 엔진 데이터 저장소 이상한 작업

String name= request.getParameter("name"); 
String email=request.getParameter("email"); 
String mobileno= request.getParameter("mobileno"); 
String password= request.getParameter("passwd"); 
String status=""; 
// 
Query query = new Query("dailyquizuser"); 
    query.addFilter("mobileno", Query.FilterOperator.EQUAL, mobileno); 
    DatastoreService datastore = DatastoreServiceFactory.getDatastoreService(); 
    PreparedQuery pq = datastore.prepare(query); 
    Entity dailyquizuserentity = pq.asSingleEntity(); 

    out.println("dailyquizuserentity: " + dailyquizuserentity); 
    if(dailyquizuserentity != null){ 
     status="failure"; 
     out.println(status); 


    } else { 
     Key dailyquizuserKey = KeyFactory.createKey("dailyquizuser", "dailyquiz"); 
     Entity dailyquizuser = new Entity("dailyquizuser", dailyquizuserKey); 
     dailyquizuser.setProperty("name", name); 
     dailyquizuser.setProperty("email", email); 
     dailyquizuser.setProperty("mobileno", mobileno); 
     dailyquizuser.setProperty("password", password); 

     DatastoreService datastore1 = DatastoreServiceFactory.getDatastoreService(); 
     datastore1.put(dailyquizuser); 
     out.println("dailyquizuser: " + dailyquizuser); 
     status="success"; 
     out.println(status); 

    } 


    %> 

답변

0

몇 가지 참고 사항 뭐하는 거지 실수 무엇인지 알려 주시기 바랍니다 여기에 코드를 확인하시기 바랍니다 데이터 저장소 에 데이터를 저장 : 당신은 mobileno 있는지 확인해야

  1. 을 변수가 null이 아닙니다 (다른 모든 필수 매개 변수와 동일). 이것은 왜 당신이 엔터티를 찾을 이유를 설명 할 것입니다 - null은 유효한 속성 값입니다. null 필터로 쿼리하면 null 속성을 가진 엔터티를 찾을 수 있지만 속성이없는 엔터티를 쿼리하면 찾을 수 없습니다.

  2. 당신이 보여 코드는 하나의 부모 개체를 만듭니다 'dailyquizuser'를 검색 할 때

    // a key to a parent 
    Key dailyquizuserKey = KeyFactory.createKey("dailyquizuser", "dailyquiz"); 
    
    // new entity with a parent 
    Entity dailyquizuser = new Entity("dailyquizuser", dailyquizuserKey); 
    

    그래서 당신은 상위 쿼리를 사용하는 것이 좋습니다.

  3. addQuery(..)은 더 이상 사용되지 않습니다. 대신 setQuery()을 사용하십시오.

관련 문제