Я искал каждый пост, но я не мог решить свою ошибку - PullRequest
0 голосов
/ 01 апреля 2020
package com.books.bookstore.controller;

import org.springframework.stereotype.Controller;

@Controller
public class HomeController {

    @RequestMapping(value = "/")
    public String index() {
        return "index";
    }

    @RequestMapping(value = "/myAccount")
    public String myAccount() {
        return "myAccount";
    }
}

https://maven.apache.org/xsd/maven-4.0.0.xsd "> 4.0.0 org.springframework.boot spring-boot-starter-parent 2.2.6.RELEASE книжный магазин com.bookstore 0.0.1-SNAPSHOT bookstore Это описание моего проекта.

<properties>
    <java.version>1.8</java.version>
</properties>

<dependencies>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</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>

http://localhost: 8081 / myAccount

Страница ошибки Whitelabel Это приложение не имеет явного сопоставления для / error, поэтому вы видите это как запасной вариант.

Ср. 01 апреля 14:36:39 EAT 2020 Произошла непредвиденная ошибка (тип = Не найдено, статус = 404). Нет доступных сообщений

Ответы [ 2 ]

0 голосов
/ 01 апреля 2020

Использование @GetMapping - еще одно простое решение

@GetMapping("/")
@ResponseBody
public String index() {
    return "index";
}
0 голосов
/ 01 апреля 2020

Полагаю, вы хотите вернуть представление из этих методов контроллера, таких как - index.html / index. jsp

Настройте преобразователь представления в своем проекте. Вот хорошая статья об этом. https://www.baeldung.com/spring-mvc-view-resolver-tutorial

Кроме того, если вам просто нужно вернуть JSON ответ от ваших API, добавьте аннотацию @ResponseBody поверх вашего метода, например -

    @RequestMapping(value = "/")
    @ResponseBody
    public String index() {
        return "index";
    }

PS. Рекомендуется использовать соответствующие методы HTTP в своих API-интерфейсах

@RequestMapping(value = "/", method = RequestMethod.GET)

Редактировать:

  • вместо использования @RequestMapping с * Параметр 1020 *, вы можете использовать @GetMapping
  • , если это REST-контроллер, вместо добавления @ResponseBody к каждому методу, аннотировать класс с помощью @RestController вместо @Controller.

PJMeisch

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...