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

网站建设后期费用单页网站设计制作

网站建设后期费用,单页网站设计制作,工作顺利的祝福语,网站特殊字体拦截器 拦截器在Web系统中非常常见#xff0c;一般用于拦截用户请求#xff0c;实现访问权限控制、日志记录、敏感过滤等功能。本节首先介绍实际项目中拦截器的应用场景#xff0c;然后介绍如何实现自定义拦截器的功能。 1.应用场景 拦截器在实际的应用开发中非常常见一般用于拦截用户请求实现访问权限控制、日志记录、敏感过滤等功能。本节首先介绍实际项目中拦截器的应用场景然后介绍如何实现自定义拦截器的功能。 1.应用场景 拦截器在实际的应用开发中非常常见对于某些全局统一的操作我们可以把它提取到拦截器中实现。总结起来拦截器大致有以下几种使用场景 1权限检查如登录检测进入处理程序检测是否登录如果没有则直接返回登录页面。 2性能监控有时系统在某段时间莫名其妙很慢可以通过拦截器在进入处理程序之前记录开始时间在处理完后记录结束时间从而得到该请求的处理时间如果有反向代理如Apache可以自动记录。 3通用行为读取cookie得到用户信息并将用户对象放入请求从而方便后续流程使用还有提取Locale、Theme信息等只要是多个处理程序都需要的即可使用拦截器实现。 4OpenSessionInView如Hibernate在进入处理程序时打开Session会话在完成后关闭Session。 2.HandlerInterceptor简介 Spring Boot定义了HandlerInterceptor接口来实现自定义拦截器的功能。HandlerInterceptor接口定义了preHandle、postHandle、afterCompletion三种方法通过重写这三种方法实现请求前、请求后等操作。 1preHandle预处理回调方法实现处理程序的预处理如登录检查第三个参数为响应的处理程序。 返回值true表示继续流程如调用下一个拦截器或处理程序false表示流程中断如登录检查失败不会继续调用其他的拦截器或处理程序此时需要通过response来产生响应。 2postHandle后处理回调方法实现处理程序的后处理但在渲染视图之前此时可以通过modelAndView模型和视图对象对模型数据进行处理或对视图进行处理modelAndView也可能为null。 3afterCompletion整个请求处理完之后回调方法即在视图渲染完毕时回调如在性能监控中可以在此记录结束时间并输出消耗时间还可以进行一些资源清理类似于try-catch-finally中的finally但是只调用处理程序执行preHandle返回true所对应的拦截器的afterCompletion。 有时我们只需要实现3种回调方法之一如果实现HandlerInterceptor接口则无论是否需要3种方法都必须实现此时Spring提供了一个HandlerInterceptorAdapter适配器一种适配器设计模式的实现允许我们只实现需要的回调方法。 3.使用HandlerInterceptor实现拦截器 我们在访问某些需要授权的页面如订单详情、订单列表等需要用户登录后才能查看的功能时需要对这些请求拦截进行登录检测符合规则的才允许请求通过。接下来通过登录状态检测的例子演示拦截器的使用。 首先创建自定义登录拦截器示例代码如下 public class LoginInterceptor implements HandlerInterceptor {/*注册拦截器*/public boolean preHandle (HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {Object user request.getSession().getAttribute(user);if (user null){request.setAttribute(msg,您没有权限这么做!);request.getRequestDispatcher(/).forward(request,response);return false;}return true;} }在上面的示例中LoginInterceptor继承HandlerInterceptor接口实现preHandle接口验证用户的Session状态。如果当前用户有登录信息则可以继续访问如果当前用户没有登录信息则返回无权限。 然后将拦截器注入系统配置。 定义MyMvcConfig配置类将上面定义的LoginInterceptor拦截器注入系统中示例代码如下 Configuration public class MyMvcConfig implements WebMvcConfigurer {Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(new LoginInterceptor()).addPathPatterns(/**).excludePathPatterns(/, /user/login, /asserts/**, /webjars/**);} }通过WebMvcConfigurer类的addInterceptors方法将刚刚自定义的LoginInterceptor拦截器注入系统中。 addPathPatterns定义拦截的请求地址。 excludePathPatterns的作用是排除某些地址不被拦截例如登录地址/user/login不需要进行登录验证。
http://www.sadfv.cn/news/330028/

相关文章:

  • 用jsp做的网站有哪些导视设计案例分析
  • linuxvps建站教程国内flash网站
  • pinterest网站怎么进网页设计制作报告
  • excel表格做网站做炒作的网站
  • 成立一个网站软件需要多少钱全自动网站制作源码
  • 做一个网站需要什么条件商城网站建设是什么意思
  • 如何进行网站性能优化?苏州网站制作搭建
  • 锤子手机网站模板商务网站开发与建设
  • 做网站用的什么编程语言网站的常用技术有哪些
  • 南宁网站建设优化排名柘城网站建设
  • 做做做网站wordpress二维码
  • 品牌网站建设帮你大蝌蚪网站建设网站排名
  • 网站 代理 备案 费用admin管理员登录
  • 网站八个安康市教育云平台
  • 大良营销网站建设服务广州广告网站建设
  • 阿里巴巴网站威海哪里做?深圳商业策划公司十大公司
  • 做网站的电脑软件上海资格证报名网站
  • 简单网站门户网站开发设计报告
  • 没有服务器建网站官网是什么意思
  • 个人网站开发模式windows10前段网站建设
  • 服务器放n个网站公职人员可以做公益网站吗
  • 抚州南城网站建设上海市城乡住房建设厅网站
  • 做环保的网站有哪些网站上传都传些什么文件
  • 吉林省招标网官方网站wordpress图片比例拉伸
  • 怎样上传网站程序网站开发 指导
  • 贵阳做网站公司吗手机网站主页设计
  • 涞水网站建设湖北网站建设免费
  • 西安查派网站建设网站整站html
  • 判断网站万云网络网站
  • 用dw做的网页怎么连到网站上网站建设客户沟通