crm项目&bug小结

博客总结了CRM项目的登录实现、主页面用户信息显示、全局异常处理、非法请求拦截和记住我功能。在登录部分,涉及UserService、UserDao、UserController及前端layui组件。全局异常通过实现HandlerExceptionResolver接口统一处理,非法请求通过NoLoginInterceptor拦截。记住我功能利用cookie保存用户状态。此外,分享了instanceof关键字的理解,并列举了开发中应注意的bug细节。
摘要由CSDN通过智能技术生成

项目主要内容分析:

 第一天完成了系统用户登录、退出、密码修改、全局异常、非法请求与记住我等系统基本功能。

项目的目录结构如图:

1 登录思路:

**
* 1.参数校验
*   用户名 非空
*   密码 非空
* 2.根据用户名 查询用户记录
* 3.校验用户存在性
*     不存在 -->记录不存在 方法结束
* 4.用户存在
*     校验密码
*       密码错误-->密码不正确 方法结束
* 5.密码正确
*     用户登录成功 返回用户相关信息
*/

 各个文件逻辑

UserService->login 方法代码实现

UserDao->queryUserByUserName 方法定 义 & Sql 配置

UserController层login方法实现

.前端登录js 方法实现

其中:前端用ndex.ftl 添加对应index.js 使用layui 表单组件实现表单提交操作

layui的用法可以在官网找到layer弹层组件开发文档 - Layui

 ==================================================

2主页面显示用户名信息

IndexController.java main方法转发时查询登录用户信息并放置到 request域。

@Controller
public class IndexController extends
BaseController {
    /**
     * 后端管理主页面
     * @return
     */
    @RequestMapping("main")
    public String main(HttpServletRequest
request){
        Integer userId =
LoginUserUtil.releaseUserIdFromCookie(request);
      
request.setAttribute("user",userService.selectB
yPrimaryKey(userId));
        return "main";
   }
}

 3全局异常统一处理:

控制层

方法返回的内容两种情况

1 视图:视图异常  

2 Json:方法执行错误 返回错误json信息

全局异常拦截器实现

实现HandlerExceptionResolver 接口 ,处理应用程序异常信息

package com.xxxx.crm;

import com.alibaba.fastjson.JSON;
import com.xxxx.crm.base.ResultInfo;
import com.xxxx.crm.exceptions.NoLoginExceptio
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值