优化Google App Engine代码

时间:2010-04-26 20:47:36

标签: google-app-engine

Google App Engine对此代码正在使用的大量配额大吼大叫。

我可以做些什么来降低它的重量?

public  void doGet(HttpServletRequest req, HttpServletResponse  resp)
        throws IOException, ServletException {

             PersistenceManager pm = PMF.get().getPersistenceManager();
             HttpSession session = req.getSession();

             if(session.isNew()){
                 session.invalidate();
                 resp.sendRedirect("/login.html");
             }

             else {

             User usr22 = (User) session.getAttribute("username");


             String query = "select from veep.User where email == '"+ usr22.getEmail() +"'";

         List<User> users = (List<User>) pm.newQuery(query).execute();

            User usr = users.get(0);

               System.out.println("estou no SERVMVCCCCC!!" + usr);

           List<String> discsNAct = usr.getDisciplinasNAct();
           List<String> discsActs = usr.getDisciplinasAct();


                req.setAttribute("nact", discsNAct);
                req.setAttribute("act", discsActs);
                req.setAttribute("discs", discsNAct);

            session.invalidate();
            session = req.getSession();
            session.setAttribute("username", usr);
            session.setAttribute("loggedIn", new String("true"));

                RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/conta_d.jsp");
                dispatcher.forward(req, resp);              


                try {
                    pm.makePersistent(usr);
                } finally {
                    pm.close();
                }
             }
        }

0 个答案:

没有答案