loginaction.java

来自「医院信息系统(Hospital Information System」· Java 代码 · 共 78 行

JAVA
78
字号
package hospital.Controller.Actions.Logon;

import org.apache.struts.action.*;
import org.hibernate.Transaction;

import javax.servlet.http.*;
import java.sql.*;
import java.util.ArrayList;

import hospital.Controller.ActionForms.*;
import hospital.Model.*;

public class LoginAction extends Action {
    private String userName = "";
    private String password = "";
    private String userID = "";
    private String realName = "";
    private String isCorrect = "0";

    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {
        HttpSession session = request.getSession();
        try {
            //初始化页面的所有参数
            initPageParameters(form, request);
            checkUser(session);
        } catch (Exception ex) {
            ex.printStackTrace();
        }

        returnPageParameters(request);
        if (isCorrect.equals("1")) {
            return mapping.findForward("frame");
        } else {
            return mapping.findForward("error");
        }
    }

    private void setPropertyToOrginate() {
        userName = "";
        password = "";
        userID = "";
        realName = "";
        isCorrect = "0";
    }

    private void initPageParameters(ActionForm form, HttpServletRequest request) {
        setPropertyToOrginate();
        LoginActionForm loginActionForm = (LoginActionForm) form;
        userName = loginActionForm.getUserName();
        password = loginActionForm.getPassword();
    }

    private void checkUser(HttpSession session) throws SQLException {
        Sys用户表DAO Sys用户表Obj=new Sys用户表DAO();
        Transaction tx=Sys用户表Obj.getSession().beginTransaction();
        ArrayList userList=(ArrayList)Sys用户表Obj.findUserByUserName_Password(userName, password);
        tx.commit();
        Sys用户表Obj.getSession().close();
        
        //String sql = "select 用户编号,真实姓名 from sys用户表 where 用户名称=" + "'" + this.userName + "' and " + "用户密码=" + "'" + this.password + "'";
        
        if (userList.size()!=0) {
        	Sys用户表 singleUser=(Sys用户表)userList.get(0);
            session.setAttribute("userID", userID);
            userID = String.valueOf(singleUser.get用户编号());
            realName = singleUser.get真实姓名();
            isCorrect = "1";
        } else {
            isCorrect = "-1";
        }
    }

    private void returnPageParameters(HttpServletRequest request) {
        request.setAttribute("userID", userID);
        request.setAttribute("realName", realName);
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?