2014-11-20 2 views
0

Так что пример с весны веб-сайта:Почему пример SpringBoot не работает так?

package com.example; 

import org.springframework.boot.*; 
import org.springframework.boot.autoconfigure.*; 
import org.springframework.stereotype.*; 
import org.springframework.web.bind.annotation.*; 

@RestController 
@EnableAutoConfiguration 
public class Example { 

    @RequestMapping("/") 
    String home() { 
     return "Hello World!"; 
    } 

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

, который работает отлично. Есть примечания @RestController is @Controller + @ResponseBody и аннотация @SpringBootApplication эквивалентна использованию @Configuration, @EnableAutoConfiguration и @ComponentScan.

Мой вопрос: Почему существует ошибка 404 Доступ к "/", если я использую аннотации ниже?

@ResponseBody 
@SpringBootApplication 
public class Example { ... } 
+0

Н.О. '@ SpringBootApplication' аннотаций не является эквивалентом этого. Он предназначен для тестирования, чтобы указать, что тестовый пример также должен загружать Spring Boot. –

+0

Аннотирование '@ SpringBootApplication' является новым в 1.2 и эквивалентно' @ Configuration', '@ EnableAutoConfiguration' и' @ ComponentScan' , Чтобы указать, что тест должен загружаться, используйте '@ IntegrationTest' –

+0

@ M.Deinum: этот текст копируется здесь: http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ – tomasb

ответ

2

Использование в одиночку @ResponseBody аннотацию не достаточно, чтобы сказать Spring, что ваш класс является контроллером MVC. Вы либо должны использовать @RestController:

@RestController 
@SpringBootApplication 
public class Example { ... } 

или @Controller и @ResponseBody:

@Controller 
@ResponseBody 
@SpringBootApplication 
public class Example { ... } 
+0

да, это нормально, когда я снова прочитаю свой вопрос, я вижу это :) по какой-то причине предполагается, что @ SpringBootApplication представляет @Controller, а также – tomasb

Смежные вопросы