<form name="usersForm" method="post" action="logon.do?action=logon">
      <tr>
        <td width="170" height="40" align="center" >用户名:</td>
        <td width="230" height="40" >
          <input name="username" type="text" class="input">        </td>
      </tr>
      <tr>
        <td height="40" align="center">密&nbsp;&nbsp;码:</td>
        <td height="40" ><input name="password" type="password" class="input" ></td>
      </tr>
      <tr>
        <td height="40" colspan="2" align="center" ><input type="submit" name="Submit" value="登陆" class="button">
          &nbsp;
          <input type="reset" name="Submit2" value="重置"class="button"></td>
        </tr>
  </form>
在这个表单的name的值是usersForm,它是Struts的ActoinForm的实现类在配置文件中的名字,如下所示:
<form-bean name="userForm" type="com.bOS.bPRO_PersonManage.actionform.UsersForm" />
action是Struts的Action的URL,他们在Struts的配置文件中都是已经配好的,如下所示:
    <action path="/logon" type="com.bOS.bPRO_PersonManage.action.UsersAction" name="userForm" scope="request">
      <forward name="success" path="/manage.jsp" />
      <forward name="failed" path="/failed.jsp" />
    </action>package com.bOS.bPRO_PersonManage.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.hibernate.HibernateException;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.bOS.bPRO_PersonManage.actionform.UsersForm;
import com.bOS.bPRO_PersonManage.en.Users;
import com.bOS.bPRO_PersonManage.service.UsersDao;
public class UsersAction extends Action {
    private UsersDao dao=new UsersDao();
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response) throws Exception {
        String action =request.getParameter("action");
//      System.out.println("\nUsersAction*********************action="+action);
        if(action==null||"".equals(action)){
            return mapping.findForward("error");
        }else if("listuser".equals(action)){
            return listUser(mapping,form,request,response);
        }else if("adduser".equals(action)){
            return addUsers(mapping,form,request,response);
        }else if("logon".equals(action)){
            return logon(mapping,form,request,response);
        }else if("updateuser".equals(action)){
            return updateUser(mapping,form,request,response);
        }else if("deleteuser".equals(action)){
            return deleteUser(mapping,form,request,response);
        }else if("selectuser".equals(action)){
            return selectUser(mapping,form,request,response);
        }
        return mapping.findForward("error");
    }
    private ActionForward selectUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {
        Long id=new Long(request.getParameter("id"));
        Users u=dao.loadUsers(id.longValue());
        request.setAttribute("user",u);
        return mapping.findForward("success");
    }
    private ActionForward deleteUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {
        Long id=new Long(request.getParameter("id"));
        Users users=new Users();
        users.setId(id);
        dao.deleteUsers(users);
        return mapping.findForward("success");
    }
    private ActionForward updateUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {
        UsersForm usersform=(UsersForm)form;
        Users users=usersform.populate();
        dao.updateUsers(users);
        return mapping.findForward("success");
    }
    private ActionForward logon(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {
        UsersForm usersform=(UsersForm)form;
        Users users=new Users();
        users.setUsername(usersform.getUsername());
        users.setPassword(usersform.getPassword());
        boolean flag=dao.logonUsers(users);
        if(flag){
            request.getSession().setAttribute("users",users);
            return mapping.findForward("success");
        }else{
            return mapping.findForward("failed");
       }
    }
    private ActionForward addUsers(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {
        UsersForm usersform=(UsersForm)form;
        Users users=usersform.populate();
        dao.addUsers(users);
        return mapping.findForward("success");
    }
    private ActionForward listUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException {
        request.setAttribute("list",dao.listUser());
        return mapping.findForward("success");
    }    public boolean logonUsers(Users users) throws HibernateException {
        Session session = HibSessionFactory.currentSession();
        Transaction tx = session.beginTransaction();
        Query query = session
                .createQuery("select count(*) from Users as u where u.username = :name and u.password =:password and u.isadmin=:isadmin ");
        query.setString("name", users.getUsername());
        query.setString("password", users.getPassword());
        query.setByte("isadmin",new Byte("1").byteValue());
        List list = null;
        list = query.list();
        tx.commit();
        HibSessionFactory.closeSession();
        if (list != null) {
            Iterator it = list.iterator();
            if (it.hasNext()) {
                if (((Integer) it.next()).intValue() == 1) {
                    return true;
                }
            }
        }
        return false;
    }