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

jeecg 做网站seo搜索引擎优化试题

jeecg 做网站,seo搜索引擎优化试题,温州网站域名注册服务公司,浙江建设职业技术学院官网使用拦截器 在方法前标注自定义注解拦截所有请求&#xff0c;只处理带有该注解的方法 自定义注解&#xff1a; 常用元注解&#xff1a;Target, Rentention, Document, Inherited如何读取注解&#xff1a; - Method.getDeclaredAnnotations() - Method.getAnnotaion(Class<T&…
  • 使用拦截器
    • 在方法前标注自定义注解
    • 拦截所有请求,只处理带有该注解的方法
  • 自定义注解:
    • 常用元注解:@Target, @Rentention, @Document, @Inherited
    • 如何读取注解:
      - Method.getDeclaredAnnotations()
      - Method.getAnnotaion(Class<T> annotationClass)

业务场景:未登陆状态下,用户不能访问需要登陆才能访问的页面,例如修改个人信息页面等。

1. 自定义注解

package com.nowcoder.community.annotation;import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface LoginRequired {}

2. 在方法前加上该注解

@LoginRequired
@RequestMapping(path = "/setting",method = RequestMethod.GET)
public String getSettingPage(){return "/site/setting";
}

3. 定义拦截器

package com.nowcoder.community.controller.Interceptor;import com.nowcoder.community.annotation.LoginRequired;
import com.nowcoder.community.entity.User;
import com.nowcoder.community.util.HostHolder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.web.method.HandlerMethod;
import org.springframework.web.servlet.HandlerInterceptor;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.lang.reflect.Method;@Component
public class LoginRequireInterception implements HandlerInterceptor {@Autowiredprivate HostHolder hostHolder;@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {if(handler instanceof HandlerMethod) {  // 拦截到类型为方法HandlerMethod handlerMethod = (HandlerMethod) handler;Method method = handlerMethod.getMethod();  // 获取方法LoginRequired loginRequired = method.getAnnotation(LoginRequired.class);  // 获取方法的注解if (loginRequired != null && hostHolder.getUser() == null) {  // 方法是loginRequired且user没登陆,需要拦截response.sendRedirect(request.getContextPath() + "/login");return false;}}return true;}
}

4. 配置拦截器

package com.nowcoder.community.config;import com.nowcoder.community.controller.Interceptor.AlphaInterceptor;
import com.nowcoder.community.controller.Interceptor.LoginRequireInterception;
import com.nowcoder.community.controller.Interceptor.LoginTicketInterceptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;@Configurationpublic class WebMvcConfig implements WebMvcConfigurer {@Autowiredprivate AlphaInterceptor alphaInterceptor;@Autowiredprivate LoginTicketInterceptor loginTicketInterceptor;@Autowiredprivate LoginRequireInterception loginRequireInterception;@Overridepublic void addInterceptors(InterceptorRegistry registry) {// 通过重写addInterceptors()方法,可以配置拦截器,对请求进行预处理或后处理。registry.addInterceptor(loginRequireInterception).excludePathPatterns("/**/*.css", "/**/*.js", "/**/*.png", "/**/*.jpg", "/**/*.jpeg");}}
http://www.hengruixuexiao.com/news/50749.html

相关文章:

  • 科技感网页设计seo优化专员编辑
  • 哪个网站可以做网页网上营销策略有哪些
  • 手机网站宽度是多少行业数据统计网站
  • 网站开发 密码常用seo站长工具
  • 小公司做网站的实力阿里云域名注册官网网址
  • 霞浦县建设局网站百度秒收录技术
  • 云主机做网站永久保留网站查域名备案信息查询
  • 大良用户网站建设代刷网站推广链接0元价格
  • 网络公司经营范围怎么写灯塔网站seo
  • k8team wordpressseo优化广告
  • 网站的域名沈阳网站建设公司
  • 青海省公路工程建设信息网站杭州网站seo推广软件
  • 地区性网站制作百度免费推广有哪些方式
  • 用wordpress制作网站seo网站地图
  • 专业的免费网站建设哪家中国免费网站服务器主机域名
  • 旅游网站设计的目的徐州seo管理
  • 网站建设工作怎么在网上做推广
  • 石家庄网站建设找哪家好网站seo好学吗
  • 渭南做网站的公司电话网站域名查询工具
  • 哪些在线网站可以做系统进化树网站的推广方法
  • 南昌h5建站网络营销咨询服务
  • 织梦程序来搭建网站怎么做好推广
  • 综合性型门户网站有哪些百度广告怎么收费
  • 网页 代码怎么做网站网站推广优化排名公司
  • 国外低代码开发平台seo在线外链
  • 无锡信息网站建设简述seo
  • 设计品牌网站公司腾讯企点是干嘛的
  • 百度公司网站建设刷关键词要刷大词吗
  • 东莞做网站seo优化友情链接推广
  • 金融直播间网站建设有趣软文广告经典案例