java – SpringBoot:控制器和过滤器已初始化但未被调用
发布时间:2020-12-15 02:15:42 所属栏目:Java 来源:网络整理
导读:我正在运行非常简单的 spring-boot应用程序: @SpringBootApplicationpublic class Application { public static void main(String[] args) { SpringApplication.run(Application.class,args); }} 我有一个简单的过滤器: @Componentpublic class MyFilter i
我正在运行非常简单的
spring-boot应用程序:
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class,args); } } 我有一个简单的过滤器: @Component public class MyFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { // This is getting called ! } @Override public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain) throws IOException,ServletException { // some logic filterChain.doFilter(request,response); } @Override public void destroy() { } } 我有一个返回索引页面的控制器: @Controller public class HomeController { @RequestMapping("/") public String index() { return "index"; } } 在请求索引页面时,我的过滤器没有被调用,尽管我认为它应该被调用. 在我的日志中,我看到: 2016-07-18 11:59:51.840 INFO 15623 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: 'MyFilter' to: [/*] 我错过了什么? 编辑: 这是我的项目结构: . ├── Dockerfile ├── build.gradle ├── gradlew ├── settings.gradle ├── src │?? ├── main │?? │?? ├── java │?? │?? │?? └── com │?? │?? │?? └── mypackage │?? │?? │?? ├── Application.java │?? │?? │?? ├── GreetingController.java │?? │?? │?? ├── HomeController.java │?? │?? │?? └── MyFilter.java │?? │?? └── resources │?? │?? ├── application.yml │?? │?? └── templates │?? │?? ├── greeting.html │?? │?? └── index.html 我正在用gradle构建一个jar文件: ./gradlew清洁构建 运行它: java -jar build / libs / sample-webapp-1.0.0.jar 我正在调用http:// localhost:8080并获取index.html文件(可能不通过控制器). Spring版本是1.3.6-RELEASE. 我的build.gradle的一部分: buildscript { repositories { maven { url "http://jcenter.bintray.com" } } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:1.3.6.RELEASE") } } dependencies { compile("org.springframework.boot:spring-boot-starter-thymeleaf") compile("org.springframework.boot:spring-boot-devtools") compile group: 'org.apache.logging.log4j',name: 'log4j-core',version: '2.6.2' compile group: 'org.apache.logging.log4j',name: 'log4j-api',version: '2.6.2' compile group: 'org.bouncycastle',name: 'bcprov-jdk16',version: '1.46' testCompile("junit:junit") } 解决方法
你的过滤地图/ *所以你对索引的调用应该是
http://localhost:8080/index. 你怎么称索引?
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – 如何在hibernate中启用批量插入?
- 最简单的Spring Cloud教程第一篇:服务的注册与发现(Eurek
- java – Weblogic管理控制台方式太慢了
- java – Android架构蓝图“todo-mvp-dagger”,其中是@Provi
- java – 新的PhoneGap 3.0导入org.apache.cordova无法解决
- 并发 – 在scheme中实现并行执行
- java – “eclipse可执行启动程序无法找到其随播共享库”
- Java Project与Maven Project(Eclipse),需要结构说明
- Java实现电影院订票系统代码
- Android应用中ListView实现多条数据同时倒计时功能