【发布时间】:2021-01-19 20:44:14
【问题描述】:
弹簧靴的新手。将战争部署到 tomcat 服务器。部署后的url是-http://localhost:8080/project-0.0.1-SNAPSHOT/。它显示欢迎 jsp 页面并且工作正常。启动按钮应该调用控制器启动项目。但是 url 调用转到 http://localhost:8080/startProject 而不是 http://localhost:8080/project-0.0.1-SNAPSHOT/startProject。 在快照版本之后手动输入 /startProject 后,项目工作正常。我缺少什么配置?请帮忙。谢谢。
我的代码如下 Welcome.jsp
<a type="button" class="start-btn" href="/startProject">Start New Project</a>
Pom.xml 4.0.0 org.springframework.boot spring-boot-starter-parent 2.3.4.发布 com.project 曼卡拉 0.0.1-快照 战争 曼卡拉 Spring Boot 演示项目
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
ProjectController.java
@Controller
公共类项目控制器 {
@Autowired
private ProjectService projectService;
@GetMapping(value = "/")
public String login() {
return "project";
}
@GetMapping(value = "/startProject")
public String startNewGame(ModelMap model) {
ProjectModel projectModel = projectService.startNewProject();
model.addAttribute("projectModel", projectModel);
return "project";
}
}
【问题讨论】:
-
嗨,我认为这是因为当您输入
/时,浏览器会转到根域,在这种情况下localhost:8080/您可以尝试<a type="button" class="start-btn" href="startProject">Start New Project</a>而不使用/,只需添加 url 的路径
标签: spring-boot