我很难做到这一点。我已经使用JDO for Google App Engine完成了一个数据库,该数据库允许注册用户上传照片。但是现在我正试图删除同一张照片,但我做不到。
这是我在数据库中的课程。
public class Autenticacao
{
@PrimaryKey
@Persistent
String utilizador;
@Persistent
String password;
@Persistent
String cookie;
@Persistent
String loginIP;
@Persistent
public Blob photo;
我正在尝试删除这样的Blob对象。
public static String novo(Autenticacao utilAutenticado)
{
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
Object e = pm.getObjectById(utilAutenticado.photo);
pm.deletePersistent(e);
} finally {
pm.close();
}
return null;
}
我尝试了其他方法,但似乎没有用。我得到的最后一个错误是
“类“ com.google.appengine.api.datastore.Blob类”不可持久。这意味着它可能尚未增强,或者文件的增强版本不在CLASSPATH中(或被未增强的版本隐藏),或者找不到该类的元数据/注释。” “。这意味着它可能尚未增强,或者文件的增强版本不在CLASSPATH中(或被未增强的版本隐藏),或者找不到该类的元数据。”
无法真正理解为什么会这样。有人对此有想法吗?
最佳答案
不知道您在尝试什么。这样做会更有意义
utilAutenticado.setPhoto(null);
当“ utilAutenticado”是一个托管对象(即仅从PersistenceManager获得)时。任何体面的JDO书都会表明
关于java - 无法删除JDO中的照片,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6461672/