Example #1
0
 /** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */
 protected void doGet(HttpServletRequest request, HttpServletResponse response)
     throws ServletException, IOException {
   Configuration conf = new Configuration();
   conf.addAnnotatedClass(Test.class);
   conf.configure();
   ServiceRegistry serviceRegistry =
       new ServiceRegistryBuilder().applySettings(conf.getProperties()).buildServiceRegistry();
   SessionFactory sf = conf.buildSessionFactory(serviceRegistry);
   Session session = sf.openSession();
   Test test;
   String action = request.getParameter("action");
   Transaction ts = null;
   try {
     switch (action) {
       case "select":
         List<Test> list = session.createQuery("from Test").list();
         for (Iterator iterator = list.iterator(); iterator.hasNext(); ) {
           test = (Test) iterator.next();
           response.getWriter().print(test.getId() + " : ");
           response.getWriter().println(test.getName());
         }
         break;
       case "insert":
         test = new Test();
         test.setId(Integer.parseInt(request.getParameter("key")));
         test.setName(request.getParameter("value"));
         session.persist(test);
         break;
       case "delete":
         test = new Test();
         test.setId(Integer.parseInt(request.getParameter("key")));
         session.delete(test);
         break;
       case "update":
         test = new Test();
         test.setId(Integer.parseInt(request.getParameter("key")));
         test.setName(request.getParameter("value"));
         session.update(test);
         break;
       case "transaction":
         ts = session.beginTransaction();
         test = new Test();
         test.setId(1);
         test.setName("hello");
         session.save(test);
         test = new Test();
         test.setId(2);
         test.setName("world");
         session.save(test);
         ts.commit();
     }
   } catch (Throwable t) {
     if (ts != null) {
       ts.rollback();
     }
     throw new ServletException(t);
   } finally {
     session.flush();
     session.close();
   }
 }