当前位置: 移动技术网 > IT编程>开发语言>Java > Java高级项目实战之CRM系统用户登录功能实现

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

2020年04月05日  | 移动技术网IT编程  | 我要评论

小室友里,阿布都克尤木·库尔班,星光大道李娜

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

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);
 }
 } 
 })
 })
})

 

部署项目,执行登录操作

登录成功 cookie 写入成功

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

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

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网