我正在尝试创建一个Eventlog(示例中为ORMSLOG),它在Datastore中以人类可读的形式保存事件。
执行此操作应编写可读事件:
List<Device> devices = ofy().transactionless().load().type(Device.class).list();
ORMSLOG.log(ORMSLOG.GET_ALL_DEVICES, "Devices found: " + String.valueOf(devices));
ORMSLOG是一个简单的类。
public class ORMSLOG {
public final static String CREATE_DEVICE = "Create Device";
public final static String GET_ALL_DEVICES = "Get all Devices";
public static void log(final String event, final String data) {
ofy().save().entity(new Event(event, data)).now();
}
}
但是数据存储中保存的数据不可读,如下所示:
我需要将对象的引用转换为人类可读的文本。
答案 0 :(得分:0)
您只是记录对象的String表示形式,这是通过调用toString
方法完成的。由于您没有覆盖toString
类中的Device
方法,因此您将获得指向对象的指针。如果覆盖Device类中的toString
方法以返回要返回的状态,则会看到更好的结果。大多数IDE(例如Eclipse)都可以选择为您生成toString
方法。