登录验证代码


index.jsp

<%@ page contentType="text/html;charset=UTF-8" import="java.util.*"   language="java"  %>
<%
    String path = request.getContextPath();
    String basePath = request.getScheme() + "://"
            + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<html>
<body>
<div class="page-container">
    <h1>XXX公司xxx系统</h1>
    <form action="" method="post">
        <input type="text" name="username" id="username"/>
        <input type="password" name="password" id="password"/>
        <input type="button" id="login" value="登录"/>
        <div class="error"><span></span></div>
    </form>
</div>
<script type="text/javascript">
    $('#login').on('click',function (){
        var username = document.getElementById("username").value();
        var password = document.getElementById("password").value();
        if(username==''){
            Layalert('用户名不能为空!');
            return;
        }
        if(password==''){
            Layalert('密码不能为空!')
            return;
        }
        dologin(username,password);
    });
    function dologin(username,password) {
        $.ajax({
            url:"<%=basePath%>login.do",
            type:'POST',
            data:{
                username:username,
                password:password
            },
            dataType:'text',
            success:function (data) {
                if(data=='true'){
                    window.location.href="<%=basePath%>index.jsp";
                }else {
                    Layalert('账户或密码错误!');
                }
            },
            error:function () {
                alert('网页出错,请刷新重试!');
            }
        });
    }
    function Layalert(msg){
        layui.use('layer', function(){
            var layer = layui.layer;
            layer.msg('<span style="color: black;">'+msg+'<span>', {
                title:"提示",
                time: 50000, //5s后自动关闭
                btn: ['确定'],
                icon:6,
                offset:"100px"
            });
        });
    }
</script>
</body>
</html>

LoginAction

@Controller
public class LoginAction {
   @Autowired(required=false)
   private ILoginService loginServiceImpl;
   @RequestMapping(value="/login.do",produces = "text/html;charset=UTF-8")
   @ResponseBody
   public  String  doLogin(String username,String password,HttpSession session){
	   User user=null;
	   List<Emp> emp=null;
	   List<Dept> dept=null;
	   List <Resource> list=null;
	   List oneLevelMenu=null;
	try {
		user = loginServiceImpl.doLogin(username, password);
	} catch (Exception e) {
		e.printStackTrace();
	}
	try {
		if(user!=null){
		  emp=loginServiceImpl.findEmpByUserId(user.getUserId());
		  list=loginServiceImpl.findResourceByUserId(user.getUserId());
		  oneLevelMenu=loginServiceImpl.findOneLevelResource();
		}
	} catch (Exception e) {
		e.printStackTrace();
	}
	session.setAttribute("user", user);
	session.setAttribute("emp", emp);
	session.setAttribute("Resource", list);
	session.setAttribute("oneLevelMenu", oneLevelMenu);
	return user==null?"false":"true";
   }
}
LoginServiceImpl
@Service
public class LoginServiceImpl implements ILoginService {
    @Autowired
    private BaseDao baseDao;
    @Override
    public User doLogin(String username, String pwd) throws Exception {
        String sql ="select * from user where user_name=? and pwd=?";
        List param = new ArrayList();
        param.add(username);
        param.add(pwd);
       List<User>  list= baseDao.findBySQL(sql,User.class,param);
        return list.size()==0?null:list.get(0);
    }
    @Override
	public List<Resource> findResourceByUserId(String userId) throws Exception {
		String sql = "SELECT * FROM resource WHERE resource_id in"
				+ " (SELECT resource_id FROM role_resource as rr WHERE rr.role_id "
				+ " in (SELECT role_id from user_role as ur WHERE ur.user_id='"
				+ userId + "'))";
		List<Resource> list = baseDao.findBySQL(sql, Resource.class);
		return list;
	}

	@Override
	public List findOneLevelResource() throws Exception {
		String sql = "select resource_id as resourceId,resource_name as resourceName  from resource where parentid=0 ";
		List<Resource> list = baseDao.findBySql3(sql, Resource.class);
		return list;
	}
	@Override
	public List<Emp> findEmpByUserId(String userId) throws Exception {
		String emp="select * from emp where user_name=(select user_name from user where user_id='"
				+ userId + "')";
		List<Emp> List= baseDao.findBySQL(emp, Emp.class);
		return List;
	}
}




















猜你喜欢

转载自blog.csdn.net/qq_33800083/article/details/80287690