ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 数据库 >> MySql >> 国税协同平台-15系统、子系统首页&登录功能2

国税协同平台-15系统、子系统首页&登录功能2

来源:网络整理     时间:2015-11-03     关键词:Struts,Apache

本篇文章主要介绍了"国税协同平台-15系统、子系统首页&登录功能2",主要涉及到Struts,Apache方面的内容,对于MySql感兴趣的同学可以参考一下: 接上一篇:http://blog.csdn.net/acmman/article/details/49614841我们的子系统界面已经加载出来:我们找到左边菜单...

接上一篇:http://blog.csdn.net/acmman/article/details/49614841

我们的子系统界面已经加载出来:

国税协同平台-15系统、子系统首页&登录功能2
我们找到左边菜单页,给它加链接:
角色管理
用户管理

我们指定了点击链接之后右侧模块页面的地址。
效果:
国税协同平台-15系统、子系统首页&登录功能2
国税协同平台-15系统、子系统首页&登录功能2
接下来我们要添加登录功能:
我们把工程原来的默认欢迎界面(WEB-INF下面的index.jsp)改为我们的登录界面。
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
response.sendRedirect(basePath+"sys/login_toLoginUI.action");
%>

可以看到我们让index.jsp去跳转到sys/login_toLoginUI.action,我们下面来实现这个action:
package cn.edu.hpu.tax.login.action;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport{

	//跳转到登录页面
	public String toLoginUI(){
		return "loginUI";
	}

}

然后写它的Struts配置文件login-Struts.xml:

Struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://Struts.Apache.org/dtds/Struts-2.3.dtd">

<Struts>
	
		
			/WEB-INF/jsp/{1}.jsp
			/WEB-INF/jsp/loginUI.jsp
		
	
Struts>

将配置文件加入到Struts总配置文件中:


然后加入我们的登录页面loginUI.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/Struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
request.setAttribute("ctx", path);
%>




登录







  
 
 
帐号:
密  码:
 
 
版权所有 | 国税局  2014年

然后重启服务器,测试登录页面:
跳转至登录页面成功。
我们下面来做登录功能:
我们是这么设计的:
登录:
1、获取帐号和密码
2、通过帐号和密码查询用户表;如果查询有记录说登录成功;否则登录失败跳转到登录页面并且提示用户登录失败信息
2.1、登录成功
2.1.1、将用户信息保存到session中
2.1.2、***
2.1.3、将用户登录记录到日志文件
2.1.4、重定向跳转到首页
2.2、登录失败
     跳转到登录页面并且提示用户登录失败信息
退出(注销):清除session中保存的用户信息
下面编码实现:
首先在LoginAction中实现我们的登录检测方法:
//登录
public String login(){
	if(user!=null){
		if(StringUtils.isNoneBlank(user.getAccount())
				&&StringUtils.isNoneBlank(user.getPassword())){
			//根据用户的账号和密码查询用户列表
			List list=userService.findUserByAccountAndPassword(user.getAccount(),user.getPassword());
			if(list!=null&&list.size()>0){//说明登录成功
				//1、登录成功
				User user=list.get(0);
				//1.1、***
				//1.2、将用户信息保存到session中
				ServletActionContext.getRequest().getSession().setAttribute(Constant.USER, user);
				//1.3、将用户登录记录到日志文件
				Log log=LogFactory.getLog(getClass());
				log.info("用户名称为:"+user.getName()+"的用户登录了系统");
				//1.4、重定向跳转到首页
				return "home";
			}else{
				loginResult="账号或密码不正确!";
			}
		}else{
			loginResult="账号或密码不能为空!";
		}
	}else{
		loginResult="请输入账号和密码!";
	}
	return toLoginUI();
}

我们的loginResult设为LoginAction的成员参数,并且设置了set和get方法。当我们登录失败了,这个错误提示信息就将在域中,在页面显示错误的地方放置这个信息:

其中的常量Constant.USER被定义在Constant类中:
public class Constant {

	//系统中用户在session中的内容
	public static String USER="SYS_USER";
	//其它常量省略
}

然后在login-strust.xml配置文件中配置我们的home跳转页面:

	home


上面的登录方法中还有findUserByAccountAndPassword(user.getAccount(),user.getPassword());没有定义,我们在UserService中定义这个方法,然后在UserServiceImpl中实现这个方法:
@Override
public List findUserByAccountAndPassword(String account,
		String password) {

	return userDao.findUserByAccountAndPassword(account,password);
}

我们在UserDao中定义findUserByAccountAndPassword()这个方法,然后在UserDaoImpl中实现这个方法:
@Override
public List findUserByAccountAndPassword(String account,
		String password) {
	 Query query=getSession().createQuery("FROM User WHERE account=? AND password=?");
	 query.setParameter(0, account);
	 query.setParameter(1, password);
	return query.list();
}

我们来测试:
我们有一个账号和密码是:lixiangyang和554466
国税协同平台-15系统、子系统首页&登录功能2
点击登录之后成功进入主页!

国税协同平台-15系统、子系统首页&登录功能2

同时后台输出登录记录并存入Log日志中:

国税协同平台-15系统、子系统首页&登录功能2

那么我们将密码故意输错,发现又跳转回登录界面并看到了错误信息:
国税协同平台-15系统、子系统首页&登录功能2

至此我们的登录方法完成,但是我们还要处理一些细节(注销等功能)。下篇总结再赘述。

转载请注明出处:http://blog.csdn.net/acmman/article/details/49614941

以上就介绍了国税协同平台-15系统、子系统首页&登录功能2,包括了Struts,Apache方面的内容,希望对MySql有兴趣的朋友有所帮助。

本文网址链接:http://www.codes51.com/article/detail_209074.html

相关图片

相关文章