java - Spring Boot - 无法查看带有控制器和配置设置的网页
问题描述
我无法查看 Spring Boot 应用程序中的任何文件。我有 Spring Boot Servlet Initializer 类正确加载我的类,并且我有一个映射到该 URL 的控制器。我知道,因为我可以在日志中看到它。
WebConfig.java
package com.project.LNUProject.config;
import com.project.LNUProject.utils.ViewNames;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.ViewResolver;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
import org.springframework.web.servlet.view.UrlBasedViewResolver;
@EnableWebMvc
@Configuration
@ComponentScan(basePackages = "com.project.LNUProject.config")
@Slf4j
public class WebConfig implements WebMvcConfigurer {
// == constants ==
public static final String RESOLVER_PREFIX = "/WEB-INF/view/";
public static final String RESOLVER_SUFFIX =".jsp";
// == bean methods
@Bean
public ViewResolver viewResolver() {
UrlBasedViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix(RESOLVER_PREFIX);
viewResolver.setSuffix(RESOLVER_SUFFIX);
return viewResolver;
}
@Override
public void addViewControllers(ViewControllerRegistry registry) {
log.info("registry add properly");
registry.addViewController("/").setViewName(ViewNames.HOME);
}
}
DevTrainingController.java
package com.project.LNUProject.Controller;
import com.project.LNUProject.utils.Mappings;
import com.project.LNUProject.utils.ViewNames;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Slf4j
@Controller
public class DevTrainingController implements CRUDController{
@Override
@GetMapping(Mappings.DEV_TRAINING_TABLE)
public String table() {
return ViewNames.DEV_TRAINING_TABLE;
}
@Override
public String edit() {
return "";
}
@Override
public String delete() {
return "";
}
@GetMapping("/")
public String home() {
log.info("Home template map");
return ViewNames.HOME;
}
}
日志说
2018-10-22 21:09:32,974 [main] [INFO] oswsmmaRequestMappingHandlerMapping - 将“{[/DevTrainingTable],methods=[GET]}”映射到公共 java.lang.String com.project.LNUProject.Controller.DevTrainingController。 table() 2018-10-22 21:09:32,977 [main] [INFO] oswsmmaRequestMappingHandlerMapping - 将“{[/],methods=[GET]}”映射到公共 java.lang.String com.project.LNUProject.Controller。 DevTrainingController.home()
...
2018-10-22 21:10:19,837 [main] [INFO] com.project.LNUProject.config.WebConfig - 注册表添加正确
但是,当我访问http://localhost:8080/LNU-Project/时,出现 404 页错误。这是我在github上的代码的链接
解决方案
模块名称叫WEB,所以映射到 http://localhost:8080/WEB/
推荐阅读
- mongodb - 外部字段是 id 数组时的 MongoDB 查找
- selenium - 将驱动程序参数传递给 main 之外的方法
- python - 将我的欧拉函数转换为使用 O(h^4) 算法运行的高阶 Runge–Kutta (RK4)?
- botframework - 无法通过 ConnectorClient 机器人连接器向团队发送消息
- java - 分页库可以用于在没有关联 UI 组件的情况下进行后台 API 调用吗?
- javascript - 页脚在开始时隐藏,然后在滚动后可见
- java - Access a child method from another child class
- android - ClipboardManager 有时不拾取剪贴板内容
- c# - Swagger 是否可以从 URL 查询字符串中获取授权令牌?
- r - 如何根据其他 3 列 [R] 中的匹配值计算我在 1 列中求和的行数?