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

附近有木有做网站坑梓网站建设咨询

附近有木有做网站,坑梓网站建设咨询,商标注册证,网站 支付宝 接口#x1f600;前言 本篇博文是关于拦截器-HandlerInterceptor的使用#xff0c;希望你能够喜欢 #x1f3e0;个人主页#xff1a;晨犀主页 #x1f9d1;个人简介#xff1a;大家好#xff0c;我是晨犀#xff0c;希望我的文章可以帮助到大家#xff0c;您的满意是我的动… 前言 本篇博文是关于拦截器-HandlerInterceptor的使用希望你能够喜欢 个人主页晨犀主页 个人简介大家好我是晨犀希望我的文章可以帮助到大家您的满意是我的动力 欢迎大家这里是CSDN我总结知识的地方欢迎来到我的博客感谢大家的观看 如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦 文章目录 拦截器-HandlerInterceptor基本介绍基本步骤: 拦截器应用实例需求:代码实现 注意事项和细节URI 和URL 的区别举例说明: 总结 拦截器-HandlerInterceptor 基本介绍 在Spring Boot 项目中 拦截器是开发中常用手段要来做登陆验证、性能检查、日志记录等。 基本步骤: √ 编写一个拦截器实现HandlerInterceptor 接口 √ 拦截器注册到配置类中(实现WebMvcConfigurer 的addInterceptors) √ 指定拦截规则 拦截器应用实例 需求: 使用拦截器防止用户非法登录, 如图- 使用拦截器就不需要在每个方法验证了 浏览器输入: http://localhost:8080/manage.html , 如果用户没有登录则返回登录界面. 代码实现 创建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执行了...);} }创建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/**);//指定要放行的后面可以根据业务需求来添加放行的请求路径} }修改com/my/usersys/controller/AdminController.java 去掉session 验证用户是否登录代码, 并完成测试, 注意看页面和后台日志. //处理用户的请求到 manage.htmlGetMapping(/manage.html)public String mainPage(Model model, HttpSession session) {log.info(进入mainPage());//可以这里集合-模拟用户数据, 放入到request域中并显示ArrayListUser users new ArrayList();users.add(new User(1, 关羽~, 666666, 20, gysohu.com));users.add(new User(2, 张飞, 666666, 30, zfsohu.com));users.add(new User(3, 赵云, 666666, 22, zysohu.com));users.add(new User(4, 马超, 666666, 28, mcsohu.com));users.add(new User(5, 黄忠, 666666, 50, hzsohu.com));//放入model的数据默认到request域model.addAttribute(users, users);return manage; //这里才是我们的视图解析到 /templates/manage.html}注意事项和细节 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/**);}};} }总结 URI 可以唯一标识一个资源, URL 可以提供找到该资源的路径。拦截所有的请求时要注意哪些资源需要放行防止无法请求。拦截器注册到配置类中(实现WebMvcConfigurer 的addInterceptors)一定要指定拦截规则。 热门专栏推荐 Thymeleaf快速入门及其注意事项 Spring Initailizr–快速入门–SpringBoot的选择 带你了解SpringBoot支持的复杂参数–自定义对象参数-自动封装 Rest 优雅的url请求处理风格及注意事项 文章到这里就结束了如果有什么疑问的地方请指出诸大佬们一起来评论区一起讨论 希望能和诸大佬们一起努力今后我们一起观看感谢您的阅读 如果帮助到您不妨3连支持一下创造不易您们的支持是我的动力
http://www.zqtcl.cn/news/884903/

相关文章:

  • 网站建设步骤及推广方法做网站的公司叫什么
  • 怎么建立自己网站 asp网站做视频流量赚钱
  • 全屏网站宽度域名服务器怎么设置
  • 网站图片切换js代码金融公司网站方案
  • 企业网站开发步骤开源软件开发
  • 建设项目环境影响登记表备案系统网站签署网站建设协议新闻
  • 有的网站在浏览器打不开怎么办最近中国新闻热点大事件
  • 网站模板组件随州网站建设有哪些
  • 网站建设微信版8080端口wordpress
  • 急求聊城网站建设微信网页注册入口
  • 商城网站建站程序网站内链布局
  • 盐城网站建设方案全景旅游网站项目建设
  • 网站备案完电信园林效果图网站
  • 伤豆丁文库网站开发贵州网站备案局
  • 做网站的注意什么北京建设协会网站首页
  • 石家庄网站开发设计网站建设重点步骤
  • 推广思路及执行方案昆明百度seo
  • 太原公司网站建立可视化小程序开发工具
  • 怎么做网站的搜索引擎云主机有什么用
  • 淘宝客新增网站南宁百度seo优化
  • 建设厅网站合同备案在哪里网站备案本人承诺
  • 做方案的网站住房城乡建设部官网
  • 怎样在门户网站做 推广天水市建设银行官方网站
  • 温州建网站哪家强网站建设谈客户说什么
  • 网站的子域名怎么设置整站seo排名外包
  • 免费网站在哪下载苏州建设银行网站
  • 邹平 建设项目 网站公示怎样做网站卖自己的产品教程
  • 手机免费网站建设哪家公司好免费动态域名申请
  • 提升网站排名怎么提交自己的网站
  • cms网站开发phpwordpress有什么功能