Java高級項目實戰之CRM系統用戶登陸功能實現

用戶登陸功能後臺代碼實現:java

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>`web

service層登陸方法實現

`@Resource private UserDao userDao; /** * 用戶登陸
* @param userName
* @param userPwd
* @param roleName
* @return
*/ @SuppressWarnings({ "unchecked", "rawtypes" }) public UserModel userLoginCheck(String userName,String userPwd){ /** * 1.參數合法性校驗ajax

\* 2.查詢用戶 有效性校驗
 \* 3.密碼校驗
 \* 4.返回用戶模型信息 \*/

// 參數校驗
checkParam(userName,userPwd); // 執行查詢
User user=userDao.queryUser(userName); // 用戶存在性校驗spring

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) {json

AssertUtil.isTrue(StringUtil.isNullOrEmpty(userName), "用戶名非空!");
AssertUtil.isTrue(StringUtil.isNullOrEmpty(userPwd), "密碼非空!");

} /** * 構建用戶登陸數據模型
* @param user
* @return
*/
private UserModel buildUserModel(User user) {cookie

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;

}
`app

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;post

@Controller
@RequestMapping("user") public class UserController extends BaseController {ui

@Resource private UserService userService;

@RequestMapping("userLogin") public @ResponseBody MessageModel userLogin(String userName,
String userPwd){url

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

部署項目,執行登陸操做
圖片1.png

登陸成功 cookie 寫入成功
圖片2.png

登陸成功,跳轉至後臺管理頁面
圖片3.png

歡迎關注SXT明輝,接下來我再回給你們奉上CRM系統之系統退出,請持續關注。來尚學堂學真正實用的Java技術。

相關文章
相關標籤/搜索