📄 userlogincommand.java~4~
字号:
/*****************************************************************************
* (C) Copyright 2004 。
* 保留对所有使用、复制、修改和发布整个软件和相关文档的权利。
* 本计算机程序受著作权法和国际公约的保护,未经授权擅自复制或
* 传播本程序的全部或部分,可能受到严厉的民事和刑事制裁,并
* 在法律允许的范围内受到最大可能的起诉。
*/
/*****************************************************************************
* @作者:Golden Peng
* @版本: 1.0
* @时间: 2002-10-08
*/
/*****************************************************************************
* 修改记录清单
* 修改人 :
* 修改记录:
* 修改时间:
* 修改描述:
*
*/
package com.corp.bisc.ebiz.base;
import com.corp.bisc.ebiz.base.*;
import com.corp.bisc.ebiz.util.*;
import com.corp.bisc.ebiz.security.*;
import com.corp.bisc.ebiz.exception.*;
import com.corp.bisc.ebiz.member.*;
import java.io.*;
import java.sql.*;
/**
* 此处插入类型描述。
* 创建日期:(2002-5-23 9:31:20)
* @author:PangWei
*/
public class UserLoginCommand extends ObjectBase implements Command {
Connection conn =null;
/**
* UserLoginCommand 构造子注解。
*/
public UserLoginCommand() {
super();
}
/**
* execute 方法注解。
*/
public CmdResult execute(RequestContext context, CommandMap aMap) throws Exception {
try{
System.out.println("-------- UserLoginCommand begin ");
CmdResult cmdresult = new CmdResult("success");
String code = "success";
String userid = (String)context.getParameter("userid");
String password = (String)context.getParameter("password");
System.out.println("-------- userid="+userid);
System.out.println("-------- password="+password);
conn = context.getDBConnection();
conn.setAutoCommit(false);
String sql = "insert into s_userlog values(?,?,?,current timestamp,0,?,null)";
PreparedStatement ps = null;
long seq = KeyContainer.getNewSequence(conn,"s_userlog",1);
System.out.println("--------UserLoginCommand seq= "+seq);
String ipaddress = context.request.getRemoteAddr();
System.out.println("--------UserLoginCommand ipaddress= "+ipaddress);
int status = 1;
ps = conn.prepareStatement(sql);
ps.setLong(1,seq);
ps.setString(2,userid);
ps.setString(3,ipaddress);
System.out.println("--------UserLoginCommand AuthenticateProvider begin ");
//验证用户并取得用户信息
AuthenticateProvider authProvider = context.getAuthProvider();
System.out.println("--------UserLoginCommand AuthenticateProvider end ");
User user = null;
try{
user = (User)authProvider.authenticate(userid,password,conn);
System.out.println("-------- UserLoginCommand success ");
// webPrincipal.setPass(password);
status = 0;
ps.setInt(4,status);
ps.executeUpdate();
System.out.println("-------- UserLoginCommand into logs ");
}catch(AuthenticateException e){
System.out.println("-------- UserLoginCommand into AuthenticateException="+e);
status = 1;
ps.setInt(4,status);
ps.executeUpdate();
throw e;
}catch(Exception ee){
System.out.println("-------- UserLoginCommand into Exception"+ee);
throw ee;
}finally{
try{
ps.close();
conn.commit();
}catch(SQLException sqle){
}
context.freeDBConnection(conn);
}
//更新session
System.out.println("-------- UserLoginCommand 更新session begin");
javax.servlet.http.HttpSession session = context.getRequest().getSession(false);
if(user != null){
System.out.println("-------- UserLoginCommand user != null");
if(session != null){
System.out.println("-------- UserLoginCommand session != null");
session.invalidate();
}
System.out.println("-------- UserLoginCommand session getSession(true)");
session =context.getRequest().getSession(true);
System.out.println("-------- UserLoginCommand session setAttribute");
session.setAttribute("_webuser",user);
System.out.println("-------- UserLoginCommand context.member = user;begin");
context.member = user;
System.out.println("-------- UserLoginCommand context.member = user;end");
}else
throw new NullPrincipalException("user have no right to login");
/*
//是否新建用户,如果是,则跳转到修改个人资料页面
if(webPrincipal.getStatus() == User.USER_STATUS_NEW){
BizComponent bizcomponent = new BizComponent("login");
cmdresult.setBizComp(bizcomponent);
cmdresult.setCode("NewUser");
return cmdresult;
}
*/
BizComponent bizcomponent = new BizComponent("login");
if(user != null){
String s_userid= user.getUserID();
//-----------------如果是管理员---------------------------------
if(s_userid.equals("admin")){
System.out.println("-------- UserLoginCommands_userid.equals(admin)");
code = "loginadmin";
}
}
/*
String departmentType = user.getCmpType();
String returnCode = "login"+departmentType;
//会员部人员||上市部人员 专用首页处理
if((departmentType != null)&&(departmentType.equals(UserLoginCommand.FORCE_LOGIIN_SSE))){
String departmentCode = webPrincipal.getDepartmentCode();
if(departmentCode != null){
if((departmentCode.equalsIgnoreCase(UserLoginCommand.DEPARTMENT_IBS))||(departmentCode.equalsIgnoreCase(UserLoginCommand.DEPARTMENT_MEMB))||(departmentCode.equalsIgnoreCase(UserLoginCommand.DEPARTMENT_LIST)))
returnCode = returnCode + departmentCode.toUpperCase();
}
}
*/
System.out.println("-------- UserLoginCommands_code="+code);
cmdresult.setCode(code);
System.out.println("-------- UserLoginCommand bizcomponent.newRecord()");
bizcomponent.newRecord();
cmdresult.setBizComp(bizcomponent);
bizcomponent.dump(System.out);
return cmdresult;
}catch(Exception exp){
System.out.println("*************UserLoginCommand Failed");
System.out.println("-------------UserLoginCommand Exception exp="+exp);
exp.printStackTrace(System.out);
throw exp;
}finally {
// context.freeDBConnection(conn);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -