⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loginproc.java

📁 教师管理系统是在学校局域网架设的B/S结构的办公平台。系统有四个模块:系统设置
💻 JAVA
字号:
import java.io.*;
import java.util.*;  /*Date*/
import java.security.*;
import javax.servlet.*;
import javax.servlet.http.*;


import Base.Action.*;
import Base.DataBean.*;

public class LoginProc extends Action
{

       DefaultDataBean m_dBean = null;
        //交易处理的入口函数,
        //参数:  DefaultDataBean类的实例
        //返回值:0 - 出错,错误原因放在key: Action.perform.errReason, value:为String类
        //                  错误代码放在key: Action.perform.errCode,   value:为Integer类
        //        1 - 成功,可以继续执行后一个交易
        public int perform(DefaultDataBean dBean)  throws IOException, ServletException
        {
              m_dBean = dBean;

			//刘中兵修改
              String passin = dBean.getAttributeStr("UserPass");

			  String id = dBean.getAttributeStr("qpass.id");
			  String workid = dBean.getAttributeStr("qpass.workid");
			  String name = dBean.getAttributeStr("qpass.name");
			  String password = dBean.getAttributeStr("qpass.password");
			  String role = dBean.getAttributeStr("qpass.role");


//              if( !hash(usr+passin).equals(passdb) )
              if( !passin.equals(password) )
              {
              	  setError(2000,"密码错误");
                  return 0;
              }

              //
              Calendar now = Calendar.getInstance();
              String stub = hash(now.toString());
              if( stub.length()==0 ) { setError(2001,"内部错误"); return 0; }

			  //刘中兵修改:与另一种验证方式统一********************************
			  m_request.getSession().setAttribute("ID",id);//***************
			  m_request.getSession().setAttribute("WORKID",workid);
			  m_request.getSession().setAttribute("NAME",name);
			  m_request.getSession().setAttribute("ROLE",role);
			  //****************************************************************

			  dBean.putAttribute("log_Stub",stub);
//              dBean.putAttribute("log_AuthBit",dBean.getAttributeStr("qpass.AUTHBIT"));
//
              Cookie newcookie = new Cookie("stub",stub);
              m_response.addCookie(newcookie);
//              Cookie usernamecookie = new Cookie("UserName",usr);
//              m_response.addCookie(usernamecookie);
//              Cookie usermbcookie = new Cookie("UserMb",usrMb);
//              m_response.addCookie(usermbcookie);
              Cookie useridcookie = new Cookie("UserID",workid);
              m_response.addCookie(useridcookie);
              dBean.putAttribute("UserID",workid);

//
//              String isAgency = dBean.getAttributeStr("qpass.USRISAG");
//              if(isAgency.equals("0") )dBean.putAttribute("log_AgID","0");
//              else
//              {
//              	String agid = dBean.getAttributeStr("qpass.AGID");
//              	if(agid.length() == 0) { setError(2002,"没有此用户"); return 0; }
//              	dBean.putAttribute("log_AgID",agid);
//              }

   	      return 1;
         }

        //
         String hash(String str)
         {
         	   MessageDigest digest = null;
         	   String strRs="";
                   try {
                            digest = MessageDigest.getInstance("MD5");
                        }
                   catch (NoSuchAlgorithmException nsae) {
                       setError(150,"Failed to load the MessageDigest");
                       return strRs;
                   }
                   digest.update(str.getBytes());
                   byte[] rs = digest.digest();

                   for(int i=0;i<rs.length;i++)
                   {
                    	 String ss = Integer.toHexString(rs[i]&0xff);
                    	 if(ss.length()<2) strRs = strRs + '0' + ss ;
                    	 else strRs = strRs + ss;
                   }
                   return strRs;
        }

        void setError(int errCode ,String errReason)
        {
             if(m_dBean != null)
             {
             	if(errReason == null) { errReason = new String(""); errCode = 101; }
             	m_dBean.putAttribute("Action.perform.errReason",errReason );
             	m_dBean.putAttribute("Action.perform.errCode",new Integer(errCode) );
             	m_servlet.log(2,"Action report error: " + errReason);
             }
             return;
        }



}

⌨️ 快捷键说明

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