【发布时间】:2019-07-01 09:35:27
【问题描述】:
我们正在从头开始一个 (Spring Starter Project) 项目。当我们在 controller 中创建一个用 @Controller 注释的类(第一个也是唯一一个)并尝试为方法添加 @RequestMapping 时,它给出了错误说 @RequestMapping 无法导入。
现在,当我们给@RestController 时,@RequestMapping 已正确导入,我们再次尝试使用@Controller 进行注释以查看导入问题是否仍然存在,但没有任何反应。这意味着当使用@RestController 注释时,它会被导入,而当第一次使用@Controller 注释时,它不会被导入。这是为什么呢?
带控制器(第一次)
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RestController;
@Controller
public class DashBoardController {
@RequestMapping // CTE - RequestMapping cannot be resolved to a type
public String defaultGreeting() {
return "Good day!!";
}
}
使用 RestController
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class DashBoardController {
@RequestMapping("/home")
public String defaultGreeting() {
return "Good day!!";
}
}
所以在使用RestController之后RequestMapping可以很容易地导入,那么如果我们尝试删除导入语句并将其修改为ControllerRequestMapping将无法导入。
【问题讨论】:
-
您能否分享您收到的错误消息,因为我们将“@RequestMapping”与“@Controller”和“@RestController”互换使用,没有任何问题?
-
请添加一些示例代码来识别问题.. @Arun
-
@Raghvendra Garg 很简单,就像如果您尝试在没有 jar 的情况下导入某些类,则 Eclipse 会给出无法导入的错误消息。注释甚至没有出现在建议中
-
您可以随时导入任何注释。这是在编译时解决的。 Spring Boot 仅在运行时发挥作用。所以请显示添加一些代码并添加特定的错误消息。 ...无法导入不够具体,无法帮助您。
-
能分享一下你正在使用的spring-boot版本吗?
标签: java spring-boot import spring-tool-suite request-mapping