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

📄 loginaction.java

📁 文章管理系统 用Java开发,以Struts为框架,以Jdbc链接Mysql数据库。系统属性:系统属性设置、留言管理、友情链接管理、网站调查、公告管理 关于我们、版权声明、联系我们
💻 JAVA
字号:
package com.yhcms.manage.admin.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.log4j.Logger;
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 org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;

import com.yhcms.db.DBConnException;
import com.yhcms.manage.admin.bean.AdminUser;
import com.yhcms.manage.admin.biz.UserPowerIm;
import com.yhcms.manage.admin.dao.UserDaoIm;
import com.yhcms.manage.admin.form.LoginForm;
import com.yhcms.manage.admin.itface.UserDao;
import com.yhcms.manage.admin.itface.UserPower;
import com.yhcms.utils.DateUtils;
/**
 * <p>Title:系统后台登录Action</p>
 * <li>后台登录</li>
 * <br><b>CopyRight: yyhweb[由由华网]</b>
 * @author stephen
 * @version YH-2.0
 */
public class LoginAction extends Action{
	public ActionForward execute(ActionMapping actionmapping,ActionForm form,
							HttpServletRequest request,HttpServletResponse response){
		
		Logger yhlog = Logger.getLogger(LoginAction.class.getName());
		ActionMessages errors = new ActionMessages();
		HttpSession session = request.getSession();
		
		int isId = 0;
		LoginForm loginform = (LoginForm)form;
		String name = loginform.getUsername();
		String password = loginform.getPassword();
		String curTime = DateUtils.getCurFormatDate("yyyy-MM-dd hh:mm:ss");
		String curIp = request.getRemoteAddr();
		
		// 验证码检验
		String checkNum = loginform.getChecknum();
		String randNum = (String) session.getAttribute("rand");
		// 从session中删除rand
		session.removeAttribute("rand");
		if(checkNum==null || randNum ==null || (!checkNum.equals(randNum))){
			yhlog.info("There is a user:'"+name+"' login system,but the checknum is wrong.The ip is:"+curIp+".");
			errors.add("login.user.checkNum",new ActionMessage("login.user.checkNum"));
			saveErrors(session,errors);
			return actionmapping.findForward("Failure");
		}
		
		AdminUser curUser = new AdminUser();
		AdminUser yhcmsUser = null;
		curUser.setUsername(name);
		curUser.setPassword(password);
		
		UserDao userdao = UserDaoIm.getInstance();
		UserPower power = UserPowerIm.getInstance();
		try {
			// 判断此用户是否存在
			isId = userdao.isAdminUser(curUser,0); 
			if(isId > 0){
				// 获取用户信息
				yhcmsUser = userdao.getUserById(isId);
				// 更新用户信息
				curUser.setId(isId);
				curUser.setLastip(request.getRemoteAddr());
				curUser.setLasttime(curTime);
				userdao.loginUser(curUser);
				
				power.setUserPower(request,yhcmsUser.getGroupid());//  调用UserPower取得用户对应某组的权限
				yhlog.info("Admin user:'"+name+"' successfully login system,the ip is:"+curIp+".");
				session.setAttribute("yhcmsuser",yhcmsUser);
				return actionmapping.findForward("Success");
			}else{ //用户不存在
				yhlog.info("There is a user:'"+name+"' unsuccessfully login system,the ip is:"+curIp+".");
				errors.add("login.user.notexist",new ActionMessage("login.user.notexist"));
				saveErrors(session,errors);
				return actionmapping.findForward("Failure");
			}
		} catch (DBConnException e) {
			yhlog.warn("There is a user login system,throw an Exception!");
			errors.add("login.error",new ActionMessage("login.error"));
			saveErrors(session,errors);
			return actionmapping.findForward("Failure");
		}
		
	}

}

⌨️ 快捷键说明

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