public ActionForward saveuser(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response) {
        ActionMessages messages = new ActionMessages();
        HttpSession session = request.getSession();
        AdminForm adminForm = (AdminForm) session.getAttribute("adminObj");
        if (adminForm == null) {
            messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
                    "admin.notlogin"));
            return mapping.findForward("navigation.page3");
        } else {
            String emailAddress = request.getParameter("emailAddress");
            String people = request.getParameter("people");
            com.alitrans.business.md5 md5 = new com.alitrans.business.md5(request.getParameter("password"));
            String password = md5.compute();
            String num0 = request.getParameter("num0");
            String cellphone=request.getParameter("cellphone");
            String userType = request.getParameter("userType");
            String recommenderId = request.getParameter("recommenderId");            TransUsersDAO usersDAO = new TransUsersDAO();
            TransUsers transUsers = new TransUsers();
            transUsers.setUserType(Integer.parseInt(userType));
            transUsers.setRecommenderId(Integer.parseInt(recommenderId));
            transUsers.setEmailAddress(emailAddress);
            transUsers.setPeople(people);
            transUsers.setPassword(password);            transUsers.setNum0(num0);
            transUsers.setCellphone(cellphone);            Session session=HibernateSessionFactory.getSession(); 
            Transaction tran=session.beginTransaction();             usersDAO.addUser(session,transUsers);
            tran.commit();             messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
                    "admin.notlogin"));
            return new ActionForward("/admin/index.trans?method=userlogs");
        }
    }public void addUser(Session session,TransUsers transUsers){    
              session.save(transUsers); 
}

解决方案 »

  1.   

    中间最好再做一层 业务层 负责逻辑action虽然也可以,但他的主要作用是请求转发,最好不要把大量的逻辑代码写action里再就是lz的如果不用Spring之类的管理业务的话不要把sessionFactory写到你的类里,建个公共的静态工厂让别的类调用sessionFactory是重量级的,初始化一次就够了
      

  2.   

    可以试试ls的方法,不过建议搞一个service层调用dao,在service层施加事务控制,在action中调用service层
      

  3.   

    中间再加一个层    控制DAO里的方法   然后action 控制这个层里的方法