diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 4903cef..bb7af72 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -16,17 +16,10 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
diff --git a/.idea/modules.xml b/.idea/modules.xml
index d399fe2..7202121 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -6,7 +6,6 @@
-
diff --git a/learn03-springboot/src/main/java/top/awin_x/learn/controller/HelloController.java b/learn03-springboot/src/main/java/top/awin_x/learn/controller/HelloController.java
index b232605..4e9c83c 100644
--- a/learn03-springboot/src/main/java/top/awin_x/learn/controller/HelloController.java
+++ b/learn03-springboot/src/main/java/top/awin_x/learn/controller/HelloController.java
@@ -4,7 +4,6 @@ import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import top.awin_x.learn.pojo.CourseInfo;
import top.awin_x.learn.pojo.Result;
-import top.awin_x.learn.service.impl.CourseServiceImpl;
import java.util.ArrayList;
diff --git a/test05/pom.xml b/test05/pom.xml
index 09c8662..f0925ed 100644
--- a/test05/pom.xml
+++ b/test05/pom.xml
@@ -89,6 +89,13 @@
0.0.1-SNAPSHOT
compile
+
+
+ com.alibaba.fastjson2
+ fastjson2
+ 2.0.53
+
+
diff --git a/test05/src/main/java/test05/Test05Application.java b/test05/src/main/java/test05/Test05Application.java
index 009b481..f8fb0a2 100644
--- a/test05/src/main/java/test05/Test05Application.java
+++ b/test05/src/main/java/test05/Test05Application.java
@@ -4,10 +4,8 @@ import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
-@ServletComponentScan
@SpringBootApplication
public class Test05Application {
-
public static void main(String[] args) {
SpringApplication.run(Test05Application.class, args);
}
diff --git a/test05/src/main/java/test05/config/WebConfig.java b/test05/src/main/java/test05/config/WebConfig.java
new file mode 100644
index 0000000..b908e2f
--- /dev/null
+++ b/test05/src/main/java/test05/config/WebConfig.java
@@ -0,0 +1,23 @@
+package test05.config;
+
+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.ResourceHandlerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+import test05.interceptor.LoginCheckInterceptor;
+
+@Configuration
+public class WebConfig implements WebMvcConfigurer {
+ private final LoginCheckInterceptor loginCheckInterceptor;
+
+ @Autowired
+ WebConfig(LoginCheckInterceptor loginCheckInterceptor){
+ this.loginCheckInterceptor = loginCheckInterceptor;
+ }
+
+ @Override
+ public void addInterceptors(InterceptorRegistry registry) {
+ registry.addInterceptor(loginCheckInterceptor).addPathPatterns("/**").excludePathPatterns("/login");
+ }
+}
diff --git a/test05/src/main/java/test05/controller/studentController.java b/test05/src/main/java/test05/controller/studentController.java
index fab3ec7..22da065 100644
--- a/test05/src/main/java/test05/controller/studentController.java
+++ b/test05/src/main/java/test05/controller/studentController.java
@@ -3,6 +3,7 @@ package test05.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import test05.pojo.Result;
import test05.service.StudentService;
@RestController
@@ -15,5 +16,9 @@ public class studentController {
}
@RequestMapping("get")
- public String get() {}
+ public Result get() {
+ Result result = new Result();
+
+ return result;
+ }
}
diff --git a/test05/src/main/java/test05/filter/loginFilter.java b/test05/src/main/java/test05/filter/loginFilter.java
deleted file mode 100644
index d857c7e..0000000
--- a/test05/src/main/java/test05/filter/loginFilter.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package test05.filter;
-
-import io.jsonwebtoken.ExpiredJwtException;
-import io.jsonwebtoken.MalformedJwtException;
-import io.jsonwebtoken.security.SignatureException;
-import jakarta.servlet.*;
-import jakarta.servlet.annotation.WebFilter;
-import jakarta.servlet.http.HttpServletRequest;
-import jakarta.servlet.http.HttpServletResponse;
-import test05.utils.JwtUtils;
-
-import java.io.IOException;
-import java.util.Map;
-import java.util.Objects;
-
-//@WebFilter("/*")
-public class loginFilter implements Filter {
-
- @Override
- public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
- if (((HttpServletRequest) servletRequest).getRequestURI().equals("/userAction/login")) {
- filterChain.doFilter(servletRequest, servletResponse);
- return;
- }
- String token = ((HttpServletRequest) servletRequest).getHeader("token");
- System.out.println("token:" + token);
- if (token != null) {
- try{
- Map jwtContent = JwtUtils.parseJwt(token);
- }catch(SignatureException | ExpiredJwtException | MalformedJwtException e){
- ((HttpServletResponse) servletResponse).sendError(HttpServletResponse.SC_FORBIDDEN);
- }
- filterChain.doFilter(servletRequest, servletResponse);
- }else{
- ((HttpServletResponse) servletResponse).sendError(HttpServletResponse.SC_FORBIDDEN);
- }
- }
-}
diff --git a/test05/src/main/java/test05/interceptor/LoginCheckInterceptor.java b/test05/src/main/java/test05/interceptor/LoginCheckInterceptor.java
new file mode 100644
index 0000000..6562156
--- /dev/null
+++ b/test05/src/main/java/test05/interceptor/LoginCheckInterceptor.java
@@ -0,0 +1,33 @@
+package test05.interceptor;
+
+import com.alibaba.fastjson2.JSONObject;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.stereotype.Component;
+import org.springframework.web.servlet.HandlerInterceptor;
+import org.springframework.web.servlet.ModelAndView;
+import test05.pojo.Result;
+import test05.utils.JwtUtils;
+
+@Component
+public class LoginCheckInterceptor implements HandlerInterceptor {
+ @Override
+ public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
+ String token = request.getHeader("token");
+ try{
+ JwtUtils.parseJwt(token);
+ }catch(Exception e){;
+ response.getWriter().print(JSONObject.toJSONString(Result.error("not login")));
+ return false;
+ }
+ return true;
+ }
+ @Override
+ public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
+
+ }
+ @Override
+ public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
+
+ }
+}