Java 云数据存储和会话
我正在为我的应用程序使用JDO对象。最近,当我将应用程序部署到Google App Engine时,我的实体并没有以相对类型保存在云数据存储数据库中,而是存储在AHU会话中。如何在AHU会话中查看我的数据值?我如何将这些数据存储在云数据存储中 这是没有set和get方法和构造函数的JDO类:Java 云数据存储和会话,java,database,google-app-engine,google-cloud-datastore,jdo,Java,Database,Google App Engine,Google Cloud Datastore,Jdo,我正在为我的应用程序使用JDO对象。最近,当我将应用程序部署到Google App Engine时,我的实体并没有以相对类型保存在云数据存储数据库中,而是存储在AHU会话中。如何在AHU会话中查看我的数据值?我如何将这些数据存储在云数据存储中 这是没有set和get方法和构造函数的JDO类: @PersistenceCapable(identityType = IdentityType.APPLICATION) public class Utente implements Serializabl
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class Utente implements Serializable {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long idUtente;
@Persistent
private String email;
@Persistent
private String nome;
@Persistent
private String cognome;
@Persistent
private String password;
@Persistent
private Boolean attivo;
@Persistent
private String sesso;
@Persistent//(dependent = "true")
private Long idMatrimonio;
这是我创建对象的utils类:
public class UtenteUtils implements Serializable {
//private Logger log = Logger.getLogger(this.getClass());
public Utente creaUtente(Utente utente) {
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
utente = pm.makePersistent(utente);
} catch (Exception e) { // TODO: handle exception
System.out.println(e.getMessage() + "DB-creaUtente");
//log.finest("crea utente errore");
}
finally{
pm.close();
}
return utente;
}
public void eliminaUtente(Long idUtente){
PersistenceManager pm = PMF.get().getPersistenceManager();
Query q = pm.newQuery(Utente.class);
q.setFilter("idUtente == idUtenteParam");
q.declareParameters("Long idUtenteParam");
List<Utente> risultato = (List<Utente>) q.execute(idUtente);
if(!risultato.isEmpty())
for(Utente u : risultato)
pm.deletePersistent(u);
pm.close();
}
public Utente cercaUtente(Long idUtente) {
PersistenceManager pm = PMF.get().getPersistenceManager();
Utente u = pm.getObjectById(Utente.class, idUtente);
return u;
}
public List<Utente> cercaUtentePerEmail(String mail) {
List<Utente> utenti = new ArrayList<Utente>();
PersistenceManager pm = PMF.get().getPersistenceManager();
Query query = pm.newQuery(Utente.class);
query.setFilter("email == emailParam");
query.declareParameters("String emailParam");
utenti = (List<Utente>) query.execute(mail);
return utenti;
}
public List<Utente> listaUtenti() {
List<Utente> utenti = new ArrayList<Utente>();
PersistenceManager pm = PMF.get().getPersistenceManager();
Query query = pm.newQuery("SELECT FROM it.nozze.cliente.JDO.Utente");
utenti = (List<Utente>) query.execute();
return utenti;
}
@ManagedBean
@SessionScoped
public class Registrazione implements Serializable {
private UtenteUtils utenteUtils;
private Utente sposo;
private Utente sposa;
private MatrimonioUtils matrimonioUtils;
private Matrimonio matrimonio;
public Registrazione() {
this.sposo = new Utente();
this.sposa = new Utente();
this.matrimonio = new Matrimonio();
}
public void creaUtenteSposo() {
matrimonioUtils = new MatrimonioUtils();
matrimonio = matrimonioUtils.creaMatrimonio(matrimonio);
sposo.setSesso("M");
sposo.setPassword("x");
sposo.setAttivo(true);
sposo.setMatrimonio(m.getIdMatrimonio());
utenteUtils = new UtenteUtils();
sposo = utenteUtils.creaUtente(sposo);
}
你能给我们看一些代码吗?当然还有jdo,我在其中创建、查找和删除我的对象的类,以及我在jsf中使用的类bean,用户在其中填写一些表单并创建真正的对象。只是检查一下,但是您使用jdo和数据存储的jdoconfig.xml是否完成了?检查是,已配置,相同。还有一个datanucleus.appengine.autoCreateDatastoreTxns属性设置为true值。