`

用户登录完整代码

阅读更多
java action:
LoginForm form=(LoginForm)actionForm;
ActionMessages errors = new ActionMessages();
System.out.println("form.getAction()="+form.getAction());

if ("login".equals(form.getAction())) {
			System.out.println("----------------login--------------");
			AuthCodeCookie authCodeCookie = new AuthCodeCookie(request,response);
			if (!authCodeCookie.getAuthCode().equals(form.getAuthCode())) {//验证码不正确
				errors.add("error.login.authcode", new ActionMessage("error.login.authcode"));
				this.saveErrors(request, errors);
				return mapping.getInputForward();
			}
			
			User user = this.getUserService().get(form.getUserId());
			if(user==null){
				errors.add("error.login.user", new ActionMessage("error.login.user"));
				this.saveErrors(request, errors);
				return mapping.getInputForward();
			}
			
			Util util = new Util();
			if(!util.hash(form.getPassword()).equals(user.getPassword())){
				errors.add("error.login.password", new ActionMessage("error.login.password"));
				this.saveErrors(request, errors);
				return mapping.getInputForward();
			}
			
//			一旦登录成功,创建session
			HttpSession session = request.getSession();
			UserSession userSession = new UserSession();
			userSession.setUser(user);
			session.setAttribute(Constant.USER_SESSION_KEY, userSession);//把UserSession传递到下个页面
			
//			并且修改用户登录时间,登录次数+1
			user.setLastLoginDate(Util.getCurrentDate("yyyyMMdd hhmmss"));
			user.setLoginTimes(Integer.valueOf(user.getLoginTimes().intValue()+1));
			this.getUserService().update(user);
			
			System.out.println("----------------------------------------------------");
//			// 获取用户对应的系统应用菜单
			List allModuleList = this.getModuleService().getModuleTree(
					Integer.parseInt(user.getMenuLevel()));//0代表根菜单
//			List allModuleList = this.getModuleService().getModuleTree(1);//0代表主菜单
					
//			System.out.println("allModuleList.size="+allModuleList.size());
//			for(int i=0;i<allModuleList.size();i++){
//				System.out.println(""+((Module)allModuleList.get(i)).getModuleName());
//			}
			Iterator menu = allModuleList.iterator();
			Vector parentV = new Vector();
			Vector childV = new Vector();
			Module m;
			while (menu.hasNext()) {
				m = (Module) menu.next();
				if(user.getPermission().indexOf("["+m.getId()+"]")!=-1){
					if (m.getParentId().intValue() == 0) {
							parentV.add(m);
					} else {
							childV.add(m);
					}
				}
			}
			request.getSession().setAttribute("parentVector", parentV);
			request.getSession().setAttribute("childVector", childV);
			
			System.out.println("初始化完毕");
			return mapping.findForward("userPanel");
		}


jsp:
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<jsp:useBean id="user_session" scope="session"
	type="com.worthtech.billportal.web.session.UserSession" />
<%
	com.worthtech.billportal.bean.User user = null;
	if (user_session != null)
		user = user_session.getUser();
		
	//根据权限获得菜单,这里权限用Telephone替代一下先
	String str = user.getTelephone();
%>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>LEFT</title>
		<link rel="stylesheet" href="css/style.css" type="text/css">
		<script language="JavaScript">
<!--
function doExit(){
	if (confirm("您确定要退出帐单门户系统吗?")){
				window.open("login.portal?action=logout","_parent","");
	}
}
		
//-->
</script>
<script language="JavaScript">
        var w=200;
        function closenavi() {
        w-=200;
        if (w>-10) {window.parent.testframeset.cols = ''+w+',*';repeat=setTimeout("closenavi()",10);}
        else {clearTimeout(repeat);w=200;}
        }

        function loginOutPage() {			
        document.forms[1].SIGN_OFF.click();
        }

        function initIt(){
        divCount = document.all.tags("DIV");
        for (i=0; i<divCount.length; i++) {
        obj = divCount(i);
        if (obj.className == "child" || obj.className == "child1") obj.style.display = "none";
        }
        }

        function expandIt(el) {
	        obj = eval("page" + el);
	        obj2 = eval("main" + el);
	        if (obj.style.display == "none") {
		        obj.style.display = "block";
	        }
	        else {
		        obj.style.display = "none";
	        }
        }

        onload = initIt;

        var judge=0;
        function expandall(o) {
        if (judge==0) {divCount2 = document.all.tags("DIV");
        for (i=0; i<divCount2.length; i++) {
        obj2 = divCount2(i);
        if (obj2.className == "child" || obj.className == "child1" || obj2.style.display == "none") 
        {obj2.style.display = "block";}
        if (obj2.className == "menu")
        {
        //obj2.all.tags('img')[0].src='images/treeimg/tminus.gif';
        obj2.all.tags('img')[0].src='images/openfolder1.gif';
        }
        }

        judge=1;
        o.src='images/icon-closeall.gif';
        o.alt='全部折叠';
        }
        else {divCount2 = document.all.tags("DIV");
        for (i=0; i<divCount2.length; i++) {
        obj2 = divCount2(i);
        if (obj2.className == "child" || obj.className == "child1" || obj2.style.display == "block") 
        {obj2.style.display = "none";}
        if (obj2.className == "menu")
        {
        obj2.all.tags('img')[0].src='images/folder1.gif';
        }
        }

        judge=0;
        o.src='images/icon-expandall.gif';
        o.alt='全部展开';
        }
        }

        function quit(form) {
        window.close()
        }

        function loginOutPage() {			
        document.forms[0].SIGN_OFF.click();
        }

    </script>
	</head>

	<body bgcolor="#D8DADA" class="bodyTop">
		<center>
			<table width="161" border="0" cellspacing="0" cellpadding="0">
				<tr>
					<td>
						<table style="margin-top: 10px; margin-bottom: 10px" width="138"
							border="0" align="center" cellpadding="0" cellspacing="0">
							<tr>
								<td>
									<img src="images/001.jpg" width="138" height="6">
								</td>
							</tr>
							<tr>
								<td class="msBack">
									<table width="130" border="0" align="center" cellpadding="3"
										cellspacing="0">
										<tr>
											<td width="19">
												<img src="images/em44.gif" width="19" height="19">
											</td>
											<td class="message">
												您有新的帐单信息
											</td>
										</tr>
										<tr>
											<td>
												<img src="images/em44.gif" width="19" height="19">
											</td>
											<td class="message">
												您有新的支付信息
											</td>
										</tr>
									</table>
								</td>
							</tr>
							<tr>
								<td>
									<img src="images/002.jpg" width="138" height="6">
								</td>
							</tr>
						</table>
					</td>
				</tr>
			</table>
			<logic:iterate id="module" name="parentVector"
				type="com.worthtech.billportal.bean.Module" indexId="index">
				<%
				int i = ((java.lang.Integer) pageContext
				.findAttribute("index")).intValue();
				%>
				<div id=<%="main" + i%> class="title"
					onClick="expandIt(<%="" + i%>); return false">
					<%if(str.indexOf("["+module.getId()+"]")!=-1){%>
					<table class="TableLeftTop" style="margin-top: 10px" width="138"
						border="0" cellspacing="0" cellpadding="4">
						<tr>
							<td background="images/LeftMenuBack.jpg">
								<div align="center">
									<%=module.getModuleName()%>
								</div>
							</td>
						</tr>
					</table>
						<%}%>
				</div>

				<div id=<%="page" + i%> class="child">
					<table class="TableLeftView" width="170" border="0" cellspacing="0"
						cellpadding="0">
						<logic:iterate id="childModule" name="childVector"
							type="com.worthtech.billportal.bean.Module">
							<%
							if(str.indexOf("["+childModule.getId()+"]")!=-1&&childModule.getParentID().intValue()==module.getId().intValue()){
							 %>
							<tr>
								<td width="44">
									<div align="right">
										<img src="images/t.gif" width="19" height="20">
									</div>
								</td>
								<td width="161">
									<a href=<%=childModule.getActionURL()%> target="mainFrame"><%=childModule.getModuleName()%></a>
								</td>
							</tr>
							<%
							}
							%>
						</logic:iterate>
					</table>
				</div>
			</logic:iterate>


			<table style="margin-top: 10px" width="161" border="0"
				cellspacing="0" cellpadding="2">
				<tr>
					<td>
						<table width="141" border="0" align="center" cellpadding="2"
							cellspacing="0">
							<tr>
								<td>
									<div align="center">
										<a href="#" onclick="doExit();"><img
												src="images/ico01.gif" width="65" height="15" border="0"
												class="MouseOver"> </a>
									</div>
								</td>
								<td>
									<div align="center">
										<a
											href="user.portal?action=password"
											target="mainFrame"><img class="MouseOver"
												src="images/ico02.gif" width="65" height="15" border="0">
										</a>
									</div>
								</td>
							</tr>
						</table>
					</td>
				</tr>
			</table>
		</center>
	</body>
</html>
分享到:
评论

相关推荐

    C#用户登录界面代码

    这个“C#用户登录界面代码”项目提供了一个基础的示例,适合初学者理解C#窗口应用程序(WinForms)的创建以及如何处理用户输入。下面我们将深入探讨这个项目中的关键知识点。 1. **C# WinForms**: C# WinForms是...

    JavaScript 数据校验 用户登录 示例代码

    用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例代码JavaScript 数据校验 用户登录 示例...

    登录完整代码.rar

    总的来说,这个`登录完整代码.rar`文件提供了一个完整的基于`iview-admin`的登录系统实现,包括用户验证、错误处理、Token管理等多个环节,是学习和开发后台管理系统的宝贵资源。通过深入研究这段代码,开发者可以...

    SSO单点登录完整代码

    - SSO流程的示例,包括用户登录、重定向、回调和登出过程。 - 可能还包含配置文件和样例数据,帮助理解SSO系统如何与其他应用系统集成。 学习和理解这个代码库,开发者可以深入理解SSO的工作原理,从而在实际项目中...

    炫酷的登录jsp页面完整代码

    这个项目可能包含了一整套的前端和后端代码,旨在为用户提供一个美观且功能完整的登录体验。 【描述详解】:描述中提到的“炫酷的登录页面”意味着该页面设计独特,可能包括了动画效果、动态交互等元素,以提升用户...

    iview-admin登录完整代码附后台代码

    总结来说,"iview-admin登录完整代码附后台代码"是一个综合性的项目,它涵盖了基于iview-admin的前端登录页面实现,Token认证机制,登录失败提示,用户信息获取,以及Token过期处理等功能。同时,它还提供后台代码,...

    用户的注册与登录页面完整的代码

    这个资源提供了一套完整的前端和后端代码,适用于前端开发人员和PHP初学者学习。以下是对这些知识点的详细说明: 1. **前端页面代码**: - **HTML**:前端页面的基础,用于构建网页结构。这部分代码会包含注册和...

    网站用户登录asp代码

    网站用户登录代码 用户注册 修改信息 用户登录

    使用MVC+DAO完成用户登陆(代码+笔记)

    在这个主题中,我们将深入探讨如何结合这两种模式来实现用户登录功能。 **MVC模式** MVC模式是一种将应用程序的业务逻辑、用户界面和数据访问分离开来的架构模式。它主要包含三个核心组件: 1. **模型(Model)**...

    用户界面登录代码

    用户界面登录代码

    登陆页面html代码

    在这个“登陆页面html代码”中,我们很可能找到了一个设计优美、功能完善的登录界面的HTML源码。HTML(HyperText Markup Language)是网页内容的基石,用于定义网页的结构和样式。下面我们将深入探讨登录页面的设计...

    用户登陆用户密码修改代码

    用户登陆用户密码修改代码用户登陆用户密码修改代码用户登陆用户密码修改代码

    html登陆页面的完整代码

    以下是一个简单的HTML登录页面的完整代码 这个页面创建了一个简单的登录表单,包括用户名和密码的输入框以及一个提交按钮。当用户点击提交按钮时,表单数据将被提交到名为 "login.php" 的服务器端脚本。你可以根据...

    1号店完整代码_js代码_一号店代码_京东1号店_

    【标题】"1号店完整代码_js代码_一号店代码_京东1号店"涉及到的是一个电子商务网站的前端实现,特别关注的是JavaScript(JS)在其中的应用,这是一门广泛用于网页动态效果和交互功能的编程语言。1号店是中国知名的...

    登录界面代码(vs).pdf

    本文通过实践项目,讲解了如何使用 ASP.NET design 一个登录界面,包括设计界面、数据库设计、连接数据库、验证用户登录等步骤。整个过程中,我们将使用 ASP.NET 的标准控件库和 SQL Server 2005 数据库管理系统。 ...

    JavaEE用户登录注册代码(免费)

    学习并实践这个“JavaEE用户登录注册代码”项目,可以帮助初学者掌握Web应用开发的基本流程,理解前后端交互,以及如何在实际环境中应用JavaEE的相关技术。同时,也可以锻炼到数据库操作、安全编程以及错误处理等...

    django登录注册实例代码.rar

    在这个名为"django登录注册实例代码.rar"的压缩包中,我们找到了一个使用Django实现用户登录和注册功能的示例项目。这个项目可能包括了创建用户模型、视图、模板以及URL配置等关键部分,帮助初学者理解Django框架...

    好用的PHP注册登录代码

    接下来分析的是PHP实现的用户登录功能。该功能同样依赖于PHP脚本,并且通过查询MySQL数据库来验证用户身份。 ##### 登录页面代码结构 1. **变量接收:** - `$_REQUEST['zhanghao']`:接收用户输入的账户。 - `$_...

    PHP用户管理完整源代码

    PHP用户管理完整源代码,包括用户注册、登录、用户列表显示、数据分页、用户注销等功能的完整PHP代码实现。同时包括MySQL数据库文件在\common\userLogin.sql,数据库可以直接导入到MySQL数据库中使用。

    SSM框架实现登录注册功能完整代码

    这个"SSM框架实现登录注册功能完整代码"项目,通过IDEA(IntelliJ IDEA)进行整合,提供了从零开始构建登录注册功能的全套源码,包括所需的jar包和配置文件。下面我们将详细探讨SSM框架实现登录注册功能的关键知识点...

Global site tag (gtag.js) - Google Analytics