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

做公司网站的专业公司深圳微商如何引流与推广

做公司网站的专业公司深圳,微商如何引流与推广,彩票型网站建设,开公司需要注册多少资金😀前言 本篇博文是关于拦截器-HandlerInterceptor的使用,希望你能够喜欢 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动…

😀前言
本篇博文是关于拦截器-HandlerInterceptor的使用,希望你能够喜欢

🏠个人主页:晨犀主页
🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉
💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦😊

文章目录

  • 拦截器-HandlerInterceptor
    • 基本介绍
      • 基本步骤:
    • 拦截器应用实例
      • 需求:
      • 代码实现
    • 注意事项和细节
      • URI 和URL 的区别
        • 举例说明:
    • 😄总结

拦截器-HandlerInterceptor

基本介绍

在Spring Boot 项目中, 拦截器是开发中常用手段,要来做登陆验证、性能检查、日志记录等。

基本步骤:

√ 编写一个拦截器实现HandlerInterceptor 接口
√ 拦截器注册到配置类中(实现WebMvcConfigurer 的addInterceptors)
√ 指定拦截规则

拦截器应用实例

需求:

使用拦截器防止用户非法登录, 如图- 使用拦截器就不需要在每个方法验证了
浏览器输入: http://localhost:8080/manage.html , 如果用户没有登录,则返回登录界面.

image-20230813210700183

代码实现

  1. 创建com/my/usersys/interceptor/LoginInterceptor.javapackage com.
@Slf4j
public class LoginInterceptor implements HandlerInterceptor {// 目标方法执行前被调用.@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {//为了让小伙伴看到访问的URIString requestURI = request.getRequestURI();String requestURL = request.getRequestURL().toString();log.info("preHandle拦截到的请求的URI={}", requestURI);log.info("preHandle拦截到的请求的URL={}", requestURL);//进行登录的校验HttpSession session = request.getSession();Object loginAdmin = session.getAttribute("loginAdmin");if (null != loginAdmin) {//说明该用户已经成功登录//放行return true;}//拦截, 重新返回到登录页面request.setAttribute("msg", "你没有登录/请登录~~");request.getRequestDispatcher("/").forward(request, response);return false;}//目标方法执行完成以后调用@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {log.info("postHandle执行了...");}//页面渲染以后调用@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {log.info("afterCompletion执行了...");}
}
  1. 创建com/my/usersys/config/WebConfig.java
@Configuration
public class WebConfig implements WebMvcConfigurer {@Overridepublic void addInterceptors(InterceptorRegistry registry) {//注册自定义拦截器LoginInterceptorregistry.addInterceptor(new LoginInterceptor()).addPathPatterns("/**") //拦截所有的请求.excludePathPatterns("/","/login","/images/**");//指定要放行的,后面可以根据业务需求,来添加放行的请求路径}
}
  1. 修改com/my/usersys/controller/AdminController.java , 去掉session 验证用户是否登录代码, 并完成测试, 注意看页面和后台日志.
//处理用户的请求到 manage.html@GetMapping("/manage.html")public String mainPage(Model model, HttpSession session) {log.info("进入mainPage()");//可以这里集合-模拟用户数据, 放入到request域中,并显示ArrayList<User> users = new ArrayList<>();users.add(new User(1, "关羽~", "666666", 20, "gy@sohu.com"));users.add(new User(2, "张飞", "666666", 30, "zf@sohu.com"));users.add(new User(3, "赵云", "666666", 22, "zy@sohu.com"));users.add(new User(4, "马超", "666666", 28, "mc@sohu.com"));users.add(new User(5, "黄忠", "666666", 50, "hz@sohu.com"));//放入model的数据默认到request域model.addAttribute("users", users);return "manage"; //这里才是我们的视图解析到 /templates/manage.html}

image-20230813211243822

image-20230813211311424

注意事项和细节

URI 和URL 的区别

URI = Universal Resource Identifier
URL = Universal Resource Locator
Identifier:标识符,Locator:定位器从字面上来看, URI 可以唯一标识一个资源, URL 可以提供找到该资源的路径

举例说明:

String requestURI = request.getRequestURI();
String requestURL = request.getRequestURL().toString();

注册拦截器, 依然可以使用如下方式

public class WebConfig /*implements WebMvcConfigurer*/ {//将我们的拦截器, 注入到容器中//@Override//public void addInterceptors(InterceptorRegistry registry) {////    //注册自定义拦截器LoginInterceptor//    registry.addInterceptor(new LoginInterceptor())//            .addPathPatterns("/**") //拦截所有的请求//            .excludePathPatterns("/","/login","/images/**");//指定要放行的,后面可以根据业务需求,来添加放行的请求路径//}@Beanpublic WebMvcConfigurer webMvcConfigurer() {return new WebMvcConfigurer() {@Overridepublic void addInterceptors(InterceptorRegistry registry) {System.out.println("addInterceptors~~~");//注册拦截器registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/**").excludePathPatterns("/","/login","/images/**");}};}
}

😄总结

  1. URI 可以唯一标识一个资源, URL 可以提供找到该资源的路径。
  2. 拦截所有的请求时要注意哪些资源需要放行,防止无法请求。
  3. 拦截器注册到配置类中(实现WebMvcConfigurer 的addInterceptors),一定要指定拦截规则。

😁热门专栏推荐

Thymeleaf快速入门及其注意事项

Spring Initailizr–快速入门–SpringBoot的选择

带你了解SpringBoot支持的复杂参数–自定义对象参数-自动封装

Rest 优雅的url请求处理风格及注意事项

文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁
希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

http://www.hkea.cn/news/88282/

相关文章:

  • 厚街找人做网站动态网站设计
  • 永春县住房和城乡规划建设局网站太原seo排名优化软件
  • 怎么上网站后台爱站小工具计算器
  • 网页编辑岗位职责seo上海优化
  • 网站做二维码吗做网站的外包公司
  • 郑州市中原区疫情最新消息上海网站营销seo方案
  • 狂人站群系统中国最权威的网站排名
  • 简单网站开发实例网站运营工作的基本内容
  • 飞机免费代理ip爱站网seo综合查询工具
  • 河南焦作有做网站开发的公司吗巩义网络推广公司
  • 邓州做网站网络广告有哪些形式
  • 爬闪数媒 网站建设网站建站流程
  • 网站建设广州白云百度统计app下载
  • 惠州短视频seoseowhy论坛
  • 肇庆网站快速排名优化温州seo排名公司
  • 北京疫情死亡人数最新消息王通seo赚钱培训
  • 北京做网站的外包公司营销策划方案案例范文
  • 专业做酒店网站关键词优化排名软件流量词
  • 做网站推广代理上海网络推广服务
  • wordpress可以做大吗搜索引擎优化的英语简称
  • 民治专业做网站公司中国企业500强排行榜
  • 潍坊 公司 网站seo点击排名器
  • 网站可以做赌博广告建站宝盒
  • 运城市做网站英文seo外链
  • 江宁网站建设如何建立网上销售平台
  • 淄博企业网站建设有限公司搜索引擎关键词竞价排名
  • 网站的优点企业专业搜索引擎优化
  • 哪里有软件开发培训机构无锡seo培训
  • 网站怎么做反链seo是什么品牌
  • 技术型网站做哪一种好软文范例大全100