【问题标题】:Spring Boot Rest IntegrationSpring Boot 休息集成
【发布时间】:2018-11-17 16:51:15
【问题描述】:

我得到了这个例外:

@RestController
public class UserController {

@Autowired
    private IUserService userService;

    @RequestMapping(value="/getAllusers",method = RequestMethod.GET)
    public ResponseEntity<List<UserDTO>> getAllusers(){
        List<UserDTO> users=userService.getAllusers();
        return new ResponseEntity<List<UserDTO>>(users, HttpStatus.FOUND);

@服务 公共类 UserService 实现 IUserService {

public List<UserDTO> getAllusers(){
    List<UserDTO> users = new ArrayList<>();
    UserDTO userDTO = new UserDTO(1,"""","""");
    users.add(userDTO);
    return users;

}

@SpringBootApplication

公共类 SpringAPP {

public static void main(String args[]) {
SpringApplication.run(SpringAPP.class, args);
}

建议采取的行动:

考虑在您的配置中定义一个“com.abcd.service.UserService”类型的 bean。

【问题讨论】:

  • 我发布了整个服务
  • 请发布整个示例,附带服务。您的服务名称约定告诉我们,这只是接口,不是实现的服务,但没有代码,很难找到。
  • 确保 UserService 使用 @service 注释,以便 spring 容器创建该类型的 bean。
  • 是服务用@servcie注释
  • 第一点更新post中完整的堆栈跟踪,第二点private IUserService userService是这个com.anoj.service.UserService的父类或接口?

标签: spring-boot


【解决方案1】:

@AnojSingh :Spring Boot 似乎没有扫描您的组件。

UserService.java 和 SpringAPP.java 是否在同一个包中?如果不是,那么您需要提及@ComponentScan(basePackages= {""}) 示例:@ComponentScan(basePackages= {"com.rest.*"})。在 SpringAPP.java 类中。

示例:-

@SpringBootApplication
@ComponentScan(basePackages= {"com.rest.*"})
public class SpringAPP{

如果上述两个类,即 UserService.java 和 SpringAPP.java 都在同一个包中,则默认扫描 UserService 类。即默认扫描放置SpringAPP.java的包中的类。但是如果打算扫描其他包中的类,则需要明确提及@ComponentScan。

它应该可以工作。

【讨论】:

    【解决方案2】:

    spring 上下文不知道你的服务,这就是为什么你必须在 componentScan 中指定包的位置

      @SpringBootApplication
        @ComponentScan("com.anoj.service")
        public class SpringAPP {
          public static void main(String args[]) {
          SpringApplication.run(SpringAPP.class, args);
        }
    

    试试这个,它应该可以工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-28
      • 1970-01-01
      • 2019-07-10
      • 2017-11-19
      • 1970-01-01
      • 2017-04-13
      • 1970-01-01
      • 2018-06-03
      相关资源
      最近更新 更多