欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java高级项目实战之CRM系统用户登录功能实现

程序员文章站 2022-04-09 15:00:04
用户登录功能后台代码实现: UserMapper接口查询方法定义 /** * * @param userName * @param userPwd * @param roleName * 查询用户记录 * @return */ User queryUser(@Param("userName")Str ......

用户登录功能后台代码实现:

usermapper接口查询方法定义

/**
 * 
 * @param username
 * @param userpwd
 * @param rolename
 * 查询用户记录
 * @return
 */
user queryuser(@param("username")string username);
 
<!-- 查询用户 -->
<select id="queryuser" resultmap="baseresultmap">
     select <include refid="base_column_list"/>
        from t_user where user_name =#{username} 
</select>

 

service层登录方法实现

 @resource
private userdao userdao;
 
 /**
 * 用户登录
 * @param username
 * @param userpwd
 * @param rolename
 * @return
 */
@suppresswarnings({ "unchecked", "rawtypes" })
public usermodel userlogincheck(string username,string userpwd){
 /**
     * 1.参数合法性校验
     * 2.查询用户 有效性校验
     * 3.密码校验
     * 4.返回用户模型信息
     */
 // 参数校验
    checkparam(username,userpwd);
 // 执行查询
 
    user user=userdao.queryuser(username);
 // 用户存在性校验
    assertutil.istrue(null==user, "该用户不存在!"); 
    assertutil.istrue(user.getisvalid()==0, "给用户已注销!");
 //密码校验
    assertutil.istrue(!user.getuserpwd().equals(md5util.md5method(userpwd)),"密码不正确!");
 // 构建用户信息模型
    usermodel usermodel=buildusermodel(user);
 return usermodel; 
}
 
/**
 * 登录参数校验
 * @param username
 * @param userpwd
 * @param rolename
 */
private void checkparam(string username, string userpwd, integer roleid) {
    assertutil.istrue(stringutil.isnullorempty(username), "用户名非空!");
    assertutil.istrue(stringutil.isnullorempty(userpwd), "密码非空!");
}
 
/**
 * 构建用户登录数据模型
 * @param user
 * @return
 */
private usermodel buildusermodel(user user) {
    usermodel usermodel=new usermodel(); 
    usermodel.setrolename(user.getrolename());
    usermodel.setusername(user.getusername());
    usermodel.settruename(user.gettruename());
    string useridstr=useridbase64.encoderuserid(user.getid());
    usermodel.setuseridstr(useridstr);
 return usermodel;
}
 

 

usercontroller层

package com.shsxt.crm.controller;
 
import javax.annotation.resource;
 
import org.springframework.stereotype.controller;
import org.springframework.web.bind.annotation.requestmapping;
import org.springframework.web.bind.annotation.responsebody;
import com.shsxt.base.basecontroller;
import com.shsxt.base.resultinfo;
import com.shsxt.base.exception.paramexception;
import com.shsxt.crm.model.usermodel;
import com.shsxt.crm.service.userservice;
 
@controller
@requestmapping("user")
public class usercontroller extends basecontroller {
 
    @resource
private userservice userservice;
@requestmapping("userlogin")
public @responsebody messagemodel userlogin(string username,
        string userpwd){
    messagemodel resultinfo=null;
 try {
        usermodel usermodel= userservice.userlogincheck(username, userpwd);
        resultinfo=success();
        resultinfo.setresult(usermodel);
 } catch (paramsexception e) {
        e.printstacktrace();
        resultinfo=failed(e.getmessage());
 } 
 return resultinfo;
} 
 
}

 

前台js 控制表单提交

绑定提交按钮点击事件

// 提交绑定事件
$(function(){
    $("#btnlogin").click(function(){ 
 var username=$("#username").val();
 var userpwd=$("#userpwd").val();
 if(isempty(username)){
 alert("用户名非空!");
 return;
 }
 
 if(isempty(userpwd)){
 alert("密码非空!");
 return;
 } 
 
 var param={};
        param.username=username;
        param.userpwd=userpwd; 
             $.ajax({
            type:"post",
            url:"user/userlogin",
            data:param,
            datatype:"json",
            success:function(data){
 if(data.resultcode==200){
 /**
                     * 登录成功
                     * 写入cookie
                     */
                    $.cookie("username",data.result.username);
                    $.cookie("truename",data.result.truename);
                    $.cookie("useridstr",data.result.useridstr); 
 // 执行跳转
 window.location.href="main";
 }else{
 alert(data.msg);
 }
 } 
 })
 })
})

 

部署项目,执行登录操作

Java高级项目实战之CRM系统用户登录功能实现

登录成功 cookie 写入成功

Java高级项目实战之CRM系统用户登录功能实现

登录成功,跳转至后台管理页面

Java高级项目实战之CRM系统用户登录功能实现

欢迎关注sxt明辉,接下来我再回给大家奉上crm系统之系统退出,请持续关注。来尚学堂学真正实用的java技术。