区块链技术博客
www.b2bchain.cn

17.博客系统项目开发之登录模块实现求职学习资料

本文介绍了17.博客系统项目开发之登录模块实现求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

Spring Boot 博客系统项目开发之登录模块实现

17.博客系统项目开发之登录模块实现

本项目的开源仓库地址为:https://github.com/ZHENFENG13/My-Blog

除 My-Blog 项目外,我也在维护另外一个开源项目,仓库地址为:https://github.com/newbee-ltd/newbee-mall

17.博客系统项目开发之登录模块实现

感兴趣的朋友可以去关注一下。

文章总览

从本篇开始将不再进行基础知识的讲解,而是真实的开始去开发一个实践项目了,实践课程的第一篇我们选择讲解两个知识点,一是 AdminLTE3 web app 模板整合,二是登录功能的实现,包括页面和后台 api 的开发。

在课程介绍时我给出了几张最终项目的预览图,网站的风格比较美观,因为我们最终的实践项目的前端页面就是基于 AdminLTE3 模板进行开发的,本文会简单的介绍这个网页模板并实际的整合进我们的项目中进行登录页面的开发。之后是登录功能的实现,这里说的是互联网范畴的登录,通常供多人使用的网站或程序应用系统为每位用户配置了一套独特的用户名和密码,用户可以使用各自的用户名和密码使用系统,以便系统能识别该用户的身份,从而保持该用户的使用习惯或使用数据,这个功能相信大家都不陌生,我们就把它作为实践课程的第一步吧。

知识点

  • 登录功能简介
  • AdminLTE3 模板整合
  • 登录功能实现

环境

  • JDK 1.8 或者更高版本
  • Spring Boot 2.1.0-RELEASE
  • Maven 3+

登录功能

用户登录状态

以我们将要开发的后台管理系统来说,这个管理系统是拥有多个页面的,在页面跳转过程中和通过接口进行数据交互时我们需要知道用户的状态,尤其是用户登录的状态,以便我们知道这是否是一个正常的用户,这个用户是否处于合法的登录状态,这样才能在页面跳转和接口请求时知道是否可以让当前用户来操作一些功能或是获取一些数据。

因此需要在每个页面对用户的身份进行验证和确认,但现实情况是,不可能让用户在每个页面上都输入用户名和密码,这是一个多么反人类的设计啊,应该不会有用户想要去使用这种系统,所以在设计时,要求用户进行一次登录操作即可。为了实现这一功能就需要一些辅助技术,用得最多的技术就是浏览器的 Cookie,而在 Java Web 开发中,用的比较多的是 Session,将用户登录的信息存放其中,这样就可以通过读取 Cookie 或者 Session 中的数据获得用户的登录信息,从而达到记录状态,验证用户这一目的。

登录流程设计

通过前文的叙述也可以得出登录的本质,即身份验证和登录状态的保持,在实际编码中是如何实现的呢?

首先,在数据库中查询这条用户记录,伪代码如下:

select * from xxx_user where account_number = 'xxxx';

如果不存在这条记录则表示身份验证失败,登录流程终止;如果存在这条记录,则表示身份验证成功,接下来则需要进行登录状态的存储和验证了,存储伪代码如下:

//通过 Cookie 存储 Cookie cookie = new Cookie("userName",xxxxx);  //通过 Session 存储 session.setAttribute("userName",xxxxx);

验证逻辑的伪代码如下:

//通过 Cookie 获取需要验证的数据并进行比对校验 Cookie cookies[] = request.getCookies(); if (cookies != null){     for (int i = 0; i < cookies.length; i++)            {                Cookie cookie = cookies[i];                if (name.equals(cookie.getName()))                {                     return cookie;                }            } }  //通过session获取需要验证的数据并进行比对校验 session.getAttribute("userName");

本次实践项目的登录状态我们是通过 session 来保存的,用户登录成功后我们将用户信息放到 session 对象中,之后再实现一个拦截器,在访问项目时判断 session 中是否有用户信息,有则放行请求,没有就跳转到登录页面。

AdminLTE3 模板整合

整合过程其实是我们把 AdminLTE3 代码压缩包中我们需要的样式文件、js 文件、图片等静态资源放入我们 Spring Boot 项目的静态资源目录下,比如 static 目录或者其他我们设置的静态资源目录,几个重要的文件我们都在下图中用红线进行标注了,目录如下:

17.博客系统项目开发之登录模块实现

有些人可能对“整合”不是很理解,甚至以为是一个很复杂的过程,这里我解释一下,我们开发的是一个 web 项目,项目中包括前端工程和后端工程,后端工程我们是比较熟悉的,而前端工程就包括页面文件、样式文件、js 文件等等,由于后端的小伙伴可能不是特别熟悉前端开发,因此我们就选择了 AdminLTE 网站模板这样一个半成品网站来进行改造和开发,大部分页面和样式都已经由模板作者开发好了,我们只需要针对性的修改一些页面供项目使用即可,这个过程中肯定就少不了要把它的样式文件、js 文件等放到我们项目的静态资源目录中,因此,这里所说的“整合”仅仅是把一些必要的文件复制到我们的项目目录中,希望大家不要把这个过程想复杂了。

登录功能实践

登录页面实现

由于选用了 AdminLTE3 作为模板,就直接改造其登录页面即可,在 templates/admin 目录中新建 login.html 模板页面,模板引擎我们选择的是 Thymeleaf,代码如下:

“`html

personal blog | Log in

personal blog

your personal blog , enjoy it

<input
type=”text”

Spring Boot 博客系统项目开发之登录模块实现

17.博客系统项目开发之登录模块实现

本项目的开源仓库地址为:https://github.com/ZHENFENG13/My-Blog

除 My-Blog 项目外,我也在维护另外一个开源项目,仓库地址为:https://github.com/newbee-ltd/newbee-mall

17.博客系统项目开发之登录模块实现

感兴趣的朋友可以去关注一下。

文章总览

从本篇开始将不再进行基础知识的讲解,而是真实的开始去开发一个实践项目了,实践课程的第一篇我们选择讲解两个知识点,一是 AdminLTE3 web app 模板整合,二是登录功能的实现,包括页面和后台 api 的开发。

在课程介绍时我给出了几张最终项目的预览图,网站的风格比较美观,因为我们最终的实践项目的前端页面就是基于 AdminLTE3 模板进行开发的,本文会简单的介绍这个网页模板并实际的整合进我们的项目中进行登录页面的开发。之后是登录功能的实现,这里说的是互联网范畴的登录,通常供多人使用的网站或程序应用系统为每位用户配置了一套独特的用户名和密码,用户可以使用各自的用户名和密码使用系统,以便系统能识别该用户的身份,从而保持该用户的使用习惯或使用数据,这个功能相信大家都不陌生,我们就把它作为实践课程的第一步吧。

知识点

  • 登录功能简介
  • AdminLTE3 模板整合
  • 登录功能实现

环境

  • JDK 1.8 或者更高版本
  • Spring Boot 2.1.0-RELEASE
  • Maven 3+

登录功能

用户登录状态

以我们将要开发的后台管理系统来说,这个管理系统是拥有多个页面的,在页面跳转过程中和通过接口进行数据交互时我们需要知道用户的状态,尤其是用户登录的状态,以便我们知道这是否是一个正常的用户,这个用户是否处于合法的登录状态,这样才能在页面跳转和接口请求时知道是否可以让当前用户来操作一些功能或是获取一些数据。

因此需要在每个页面对用户的身份进行验证和确认,但现实情况是,不可能让用户在每个页面上都输入用户名和密码,这是一个多么反人类的设计啊,应该不会有用户想要去使用这种系统,所以在设计时,要求用户进行一次登录操作即可。为了实现这一功能就需要一些辅助技术,用得最多的技术就是浏览器的 Cookie,而在 Java Web 开发中,用的比较多的是 Session,将用户登录的信息存放其中,这样就可以通过读取 Cookie 或者 Session 中的数据获得用户的登录信息,从而达到记录状态,验证用户这一目的。

登录流程设计

通过前文的叙述也可以得出登录的本质,即身份验证和登录状态的保持,在实际编码中是如何实现的呢?

首先,在数据库中查询这条用户记录,伪代码如下:

select * from xxx_user where account_number = 'xxxx';

如果不存在这条记录则表示身份验证失败,登录流程终止;如果存在这条记录,则表示身份验证成功,接下来则需要进行登录状态的存储和验证了,存储伪代码如下:

//通过 Cookie 存储 Cookie cookie = new Cookie("userName",xxxxx);  //通过 Session 存储 session.setAttribute("userName",xxxxx);

验证逻辑的伪代码如下:

//通过 Cookie 获取需要验证的数据并进行比对校验 Cookie cookies[] = request.getCookies(); if (cookies != null){     for (int i = 0; i < cookies.length; i++)            {                Cookie cookie = cookies[i];                if (name.equals(cookie.getName()))                {                     return cookie;                }            } }  //通过session获取需要验证的数据并进行比对校验 session.getAttribute("userName");

本次实践项目的登录状态我们是通过 session 来保存的,用户登录成功后我们将用户信息放到 session 对象中,之后再实现一个拦截器,在访问项目时判断 session 中是否有用户信息,有则放行请求,没有就跳转到登录页面。

AdminLTE3 模板整合

整合过程其实是我们把 AdminLTE3 代码压缩包中我们需要的样式文件、js 文件、图片等静态资源放入我们 Spring Boot 项目的静态资源目录下,比如 static 目录或者其他我们设置的静态资源目录,几个重要的文件我们都在下图中用红线进行标注了,目录如下:

17.博客系统项目开发之登录模块实现

有些人可能对“整合”不是很理解,甚至以为是一个很复杂的过程,这里我解释一下,我们开发的是一个 web 项目,项目中包括前端工程和后端工程,后端工程我们是比较熟悉的,而前端工程就包括页面文件、样式文件、js 文件等等,由于后端的小伙伴可能不是特别熟悉前端开发,因此我们就选择了 AdminLTE 网站模板这样一个半成品网站来进行改造和开发,大部分页面和样式都已经由模板作者开发好了,我们只需要针对性的修改一些页面供项目使用即可,这个过程中肯定就少不了要把它的样式文件、js 文件等放到我们项目的静态资源目录中,因此,这里所说的“整合”仅仅是把一些必要的文件复制到我们的项目目录中,希望大家不要把这个过程想复杂了。

登录功能实践

登录页面实现

由于选用了 AdminLTE3 作为模板,就直接改造其登录页面即可,在 templates/admin 目录中新建 login.html 模板页面,模板引擎我们选择的是 Thymeleaf,代码如下:

“`html

personal blog | Log in

personal blog

your personal blog , enjoy it

<input
type=”text”

Spring Boot 博客系统项目开发之登录模块实现

17.博客系统项目开发之登录模块实现

本项目的开源仓库地址为:https://github.com/ZHENFENG13/My-Blog

除 My-Blog 项目外,我也在维护另外一个开源项目,仓库地址为:https://github.com/newbee-ltd/newbee-mall

17.博客系统项目开发之登录模块实现

感兴趣的朋友可以去关注一下。

文章总览

从本篇开始将不再进行基础知识的讲解,而是真实的开始去开发一个实践项目了,实践课程的第一篇我们选择讲解两个知识点,一是 AdminLTE3 web app 模板整合,二是登录功能的实现,包括页面和后台 api 的开发。

在课程介绍时我给出了几张最终项目的预览图,网站的风格比较美观,因为我们最终的实践项目的前端页面就是基于 AdminLTE3 模板进行开发的,本文会简单的介绍这个网页模板并实际的整合进我们的项目中进行登录页面的开发。之后是登录功能的实现,这里说的是互联网范畴的登录,通常供多人使用的网站或程序应用系统为每位用户配置了一套独特的用户名和密码,用户可以使用各自的用户名和密码使用系统,以便系统能识别该用户的身份,从而保持该用户的使用习惯或使用数据,这个功能相信大家都不陌生,我们就把它作为实践课程的第一步吧。

知识点

  • 登录功能简介
  • AdminLTE3 模板整合
  • 登录功能实现

环境

  • JDK 1.8 或者更高版本
  • Spring Boot 2.1.0-RELEASE
  • Maven 3+

登录功能

用户登录状态

以我们将要开发的后台管理系统来说,这个管理系统是拥有多个页面的,在页面跳转过程中和通过接口进行数据交互时我们需要知道用户的状态,尤其是用户登录的状态,以便我们知道这是否是一个正常的用户,这个用户是否处于合法的登录状态,这样才能在页面跳转和接口请求时知道是否可以让当前用户来操作一些功能或是获取一些数据。

因此需要在每个页面对用户的身份进行验证和确认,但现实情况是,不可能让用户在每个页面上都输入用户名和密码,这是一个多么反人类的设计啊,应该不会有用户想要去使用这种系统,所以在设计时,要求用户进行一次登录操作即可。为了实现这一功能就需要一些辅助技术,用得最多的技术就是浏览器的 Cookie,而在 Java Web 开发中,用的比较多的是 Session,将用户登录的信息存放其中,这样就可以通过读取 Cookie 或者 Session 中的数据获得用户的登录信息,从而达到记录状态,验证用户这一目的。

登录流程设计

通过前文的叙述也可以得出登录的本质,即身份验证和登录状态的保持,在实际编码中是如何实现的呢?

首先,在数据库中查询这条用户记录,伪代码如下:

select * from xxx_user where account_number = 'xxxx';

如果不存在这条记录则表示身份验证失败,登录流程终止;如果存在这条记录,则表示身份验证成功,接下来则需要进行登录状态的存储和验证了,存储伪代码如下:

//通过 Cookie 存储 Cookie cookie = new Cookie("userName",xxxxx);  //通过 Session 存储 session.setAttribute("userName",xxxxx);

验证逻辑的伪代码如下:

//通过 Cookie 获取需要验证的数据并进行比对校验 Cookie cookies[] = request.getCookies(); if (cookies != null){     for (int i = 0; i < cookies.length; i++)            {                Cookie cookie = cookies[i];                if (name.equals(cookie.getName()))                {                     return cookie;                }            } }  //通过session获取需要验证的数据并进行比对校验 session.getAttribute("userName");

本次实践项目的登录状态我们是通过 session 来保存的,用户登录成功后我们将用户信息放到 session 对象中,之后再实现一个拦截器,在访问项目时判断 session 中是否有用户信息,有则放行请求,没有就跳转到登录页面。

AdminLTE3 模板整合

整合过程其实是我们把 AdminLTE3 代码压缩包中我们需要的样式文件、js 文件、图片等静态资源放入我们 Spring Boot 项目的静态资源目录下,比如 static 目录或者其他我们设置的静态资源目录,几个重要的文件我们都在下图中用红线进行标注了,目录如下:

17.博客系统项目开发之登录模块实现

有些人可能对“整合”不是很理解,甚至以为是一个很复杂的过程,这里我解释一下,我们开发的是一个 web 项目,项目中包括前端工程和后端工程,后端工程我们是比较熟悉的,而前端工程就包括页面文件、样式文件、js 文件等等,由于后端的小伙伴可能不是特别熟悉前端开发,因此我们就选择了 AdminLTE 网站模板这样一个半成品网站来进行改造和开发,大部分页面和样式都已经由模板作者开发好了,我们只需要针对性的修改一些页面供项目使用即可,这个过程中肯定就少不了要把它的样式文件、js 文件等放到我们项目的静态资源目录中,因此,这里所说的“整合”仅仅是把一些必要的文件复制到我们的项目目录中,希望大家不要把这个过程想复杂了。

登录功能实践

登录页面实现

由于选用了 AdminLTE3 作为模板,就直接改造其登录页面即可,在 templates/admin 目录中新建 login.html 模板页面,模板引擎我们选择的是 Thymeleaf,代码如下:

“`html

personal blog | Log in

personal blog

your personal blog , enjoy it

<input
type=”text”

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » 17.博客系统项目开发之登录模块实现求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们