当前位置: 首页 > wzjs >正文

动态网站设计论文1500字seo排名点击器

动态网站设计论文1500字,seo排名点击器,旅游网站开发书籍,企业网站推广定义基于 Spring Boot 瑞吉外卖系统开发(二) 员工登录功能实现 员工登录页面login.html存放在/resources/backend/page/login目录下。 启动项目,在浏览器中通过地址“http://localhost:8080/backend/page/login/login.html”访问员工登录页面。…

基于 Spring Boot 瑞吉外卖系统开发(二)

员工登录功能实现

员工登录页面login.html存放在/resources/backend/page/login目录下。
启动项目,在浏览器中通过地址“http://localhost:8080/backend/page/login/login.html”访问员工登录页面。
在这里插入图片描述
按下快捷键F12打开浏览器调试工具后,单击“登录”按钮,浏览器抓取到登录的请求信息。
在这里插入图片描述

定义Mapper接口

自定义的Mapper接口可以继承BaseMapper获得通用的增删改查功能。
在项目的src/main/java目录下创建com.itheima.reggie.mapper包,在该包下创建员工Mapper接口EmployeeMapper。

@Mapper
public interface EmployeeMapper extends BaseMapper<Employee> {}

定义Service接口

public interface EmployeeService extends IService<Employee> {
}

定义Service实现类

@Service
public class EmployeeServiceImpl extends ServiceImpl<EmployeeMapper, Employee> implements EmployeeService {}

定义Controller类

@RestController
@RequestMapping("/employee")
public class EmployeeController {@Autowiredprivate EmployeeService employeeService;@PostMapping("/login")public R<Employee> login(@RequestBody Employee employee, HttpServletRequest request){//1.将页面提交的密码password进行MD5加密处理String password = employee.getPassword();password = DigestUtils.md5DigestAsHex(password.getBytes());//2.根据页面提交的用户名username查询数据库QueryWrapper<Employee> query = new QueryWrapper<>();query.eq("username", employee.getUsername());Employee one = employeeService.getOne(query);//3.如果没有查询到员工信息或者密码不正确,则返回登录失败结果if(one==null || !one.getPassword().equals(password)){return R.error("用户名或密码错误");}//4.查看员工状态,如果为已禁用状态,则返回员工已禁用结果if(one.getStatus() == 0){return R.error("账号已禁用");}//5.登录成功,将员工Id存入Session并返回员工信息request.getSession().setAttribute("loginEmployee", one);return R.success(one);}
}

登录功能测试

启动项目,在浏览器中通过地址“http://localhost:8080/backend/page/login/login.html”访问员工登录页面,在登录页面使用错误的账号或密码进行登录。
在这里插入图片描述
使用正确的账号和密码进行登录。
在这里插入图片描述

登录拦截功能

管理端的员工登录已经实现完成,但是此时员工如果不登录,也可以直接访问管理端的其他页面。
对此,可以使用拦截器对请求进行拦截判断,判断员工是否已经完成登录,如果没有登录则跳转到登录页面。
com/itheima/reggie/config/LoginInterceptor.java

public class LoginInterceptor implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {Object loginEmployee = request.getSession().getAttribute("loginEmployee");if  (loginEmployee == null) {//未登录,返回登录页response.sendRedirect("/backend/page/login/login.html");return  false ; //不放行}return  true ; //放行}}

com/itheima/reggie/config/WebMvcConfig.java中注册拦截器,并设置拦截的路径。

    /*** 员工登录拦截器* @param registry*/@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/backend/page/**","/backend/index.html").excludePathPatterns("/backend/page/login/login.html");}

这里拦截器只设置了拦截前端的页面,真实开发后端接口也需要拦截。

至此,员工没有成功登录的话,访问其他路径都会自动跳转到登录页面。

员工退出登录

员工登录成功后,会将对应的员工信息存入到Session中,以记录员工的登录状态。相反,如果想要实现员工退出,则可以在收到退出请求后,将当前员工存放在Session中的信息清除即可。
/controller/EmployeeController.java 添加logout方法。

    @PostMapping("/logout")public R<String> logout(HttpServletRequest request){request.getSession().removeAttribute("loginEmployee");return R.success("退出成功");}

至此,点击后台首页右上角退出按钮进行退出。
在这里插入图片描述

http://www.dtcms.com/wzjs/313056.html

相关文章:

  • 个体企业建网站如何外贸推广
  • 如何做移动端网站新闻稿代写
  • 企业营销网站建设规划长沙网站策划
  • 优舟网站建设seo关键词平台
  • 做细分行业信息网站站长之家seo工具包
  • 博山网站建设2022年app拉新推广项目
  • 网站的优化从几个方面广告素材
  • 资深品牌策划公司seo优化收费
  • 广州的十七做网站凡科建站官网免费注册
  • 深圳城乡建设和管理委员会网站aso平台
  • b2b2c的网站网络推广工具
  • 深圳 做网站 车公庙网站建设流程
  • 怎么邀约客户做网站上海抖音seo
  • 汕头专业网站建设公司点击器原理
  • 阿里云网站建设考试认证题网站快速优化排名方法
  • 品牌做网站福州百度分公司
  • 好看的单页面网站模板免费下载网络广告文案范文
  • 网页qq登陆页面二十条优化措施原文
  • 国内十大景观设计公司临沂做网络优化的公司
  • 用asp做网站遇到的问题义乌百度广告公司
  • 网站建设详细需求文档自动友链网
  • 本地门户网站湖南疫情最新情况
  • jsp做门户网站c++线上培训机构哪个好
  • 青岛定制网站建设推广杭州seo网站推广排名
  • wordpress批量更新文章搜索引擎关键词优化方案
  • 心理咨询网站平台建设推广普通话的宣传内容
  • 苏州网站营销公司简介seo做得比较好的企业案例
  • 元谋县建设局网站视频优化是什么意思
  • 中建豪城建设有限公司网站产品软文范例800字
  • 爱奇艺会员做任务送十天网站网站优化推广公司