如何解决Appengine数据存储区中的值不会显示
|This is my first servlet...
public class ServletCheckServlet extends HttpServlet {
public void doGet(HttpServletRequest req,HttpServletResponse resp)
throws IOException {
resp.setContentType(\"text/plain\");
PrintWriter pw=resp.getWriter();
String s1=req.getParameter(\"username\");
String s2=req.getParameter(\"password\");
DatastoreService datastore=DatastoreServiceFactory.getDatastoreService();
Entity employee=new Entity(\"Employee\");
employee.setProperty(\"firstname\",\"Ram\");
employee.setProperty(\"lastname\",\"prasad\");
Date hiredate=new Date();
employee.setProperty(\"Hiredate\",hiredate);
employee.setProperty(\"attendedHRtraining\",true);
datastore.put(employee);
Key employeekey=KeyFactory.createKey(\"employees\",\"employee1\");
}
}
我的第二个servlet在下面。
public class ValidUserServlet extends HttpServlet{
protected void doGet(HttpServletRequest req,HttpServletResponse resp){
PrintWriter pw;
try {
pw = resp.getWriter();
pw.println(\"Welcome to the second servlet\");
Key employeekey=KeyFactory.createKey(\"employees\",\"employee1\");
DatastoreService datastore=DatastoreServiceFactory.getDatastoreService();
try {
Entity employee=datastore.get(employeekey);
String fn=(String) employee.getProperty(\"firstname\");
pw.println(fn);
} catch (EntityNotFoundException e) {
// Todo Auto-generated catch block
e.printstacktrace();
}
} catch (IOException e) {
// Todo Auto-generated catch block
e.printstacktrace();
}
}
}
但是,当我运行此应用程序时..... servlet出现了...但是未显示Appengine数据存储区中的值...
我的程序中有什么问题...如何清除...是否正确...
请帮我.......解决方法
而不是使用
Key employeekey=KeyFactory.createKey(\"employees\",\"employee1\");
您可以使用
Entity employeeEntity = datastore.get(KeyFactory.stringToKey(employee.getId()));
由于您使用的是旧的servlet,因此您可以从请求中获得employeeId
String employeeId = request.getParameter(\"employeeId\");
Entity employeeEntity = datastore.get(KeyFactory.stringToKey(employeeId);
您可以参考此源代码以进一步阐明。版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。