Respondendo HTML

Ao utilizar a dependência “Spring Boot Starter Web”, o Spring Boot sobe uma aplicação Web com o servidor HTTP Tomcat. Ao acessar o endereço http://localhost:8080 estamos no ponto de entrada da aplicação.

A URL pode e geralmente é mais complicada que apenas o nome de domínio e a porta como vimos até então. A URL pode conter diversos outros elementos o caminho e os parâmetros. A seguir é mostrado um exemplo de uma URL completa:

Exemplo de URL

Essa aplicação possui algumas configurações padrão como por exemplo o arquivo esperado para o domínio raiz, que é o arquivo index.html. Esse arquivo é um arquivo HTML que será retornado como resposta quando o usuário acessar o domínio raiz da aplicação ou seja, o caminho /.

Como não existe até então nenhum arquivo com esse nome e também nenhuma rota definida na aplicação, o Spring Boot não sabe como mapear a rota / e por isso retorna um erro.

O que é HTML?

HTML é a sigla para HyperText Markup Language, que em português significa Linguagem de Marcação de Hipertexto. O HTML é uma linguagem de marcação que é utilizada para estruturar e apresentar conteúdo na Web. O HTML é a linguagem padrão para desenvolvimento de páginas Web e é utilizada em conjunto com o CSS e o JavaScript.

O HTML é uma linguagem de marcação, ou seja, ela é utilizada para marcar o conteúdo. A marcação é feita através de tags, que são palavras ou símbolos que indicam ao navegador como o conteúdo deve ser apresentado. As tags são utilizadas em pares, sendo uma de abertura e outra de fechamento. A tag de abertura é representada pelo nome da tag entre sinais de menor e maior, já a tag de fechamento é representada pelo nome da tag entre sinais de menor e maior e uma barra antes do nome da tag. Por exemplo, a tag de abertura para o título é <h1> e a tag de fechamento é </h1>.

Estrutura de um documento HTML

Um documento HTML é composto por duas partes: o cabeçalho e o corpo. O cabeçalho é a parte do documento que contém informações sobre o documento, como o título, a codificação de caracteres, a folha de estilos, entre outras. O corpo é a parte do documento que contém o conteúdo que será apresentado na página.

A seguir é mostrado um exemplo de um documento HTML:

my-test-file.js
1
<!DOCTYPE html>
2
<html lang="pt-br">
3
<head>
4
<meta charset="UTF-8">
5
<title>Exemplo de HTML</title>
6
</head>
7
<body>
8
<h1>Exemplo de HTML</h1>
9
<p>Este é um exemplo de um documento HTML.</p>
10
</body>
11
</html>

A primeira linha do documento é o doctype, que é uma instrução para o navegador informando que o documento é um documento HTML. A segunda linha é a tag <html> que indica o início do documento HTML. A terceira linha é a tag <head> que indica o início do cabeçalho do documento. A quarta linha é a tag <meta> que indica que o documento utiliza a codificação de caracteres UTF-8. A quinta linha é a tag <title> que indica o título do documento. A sexta linha é a tag <body> que indica o início do corpo do documento. A sétima linha é a tag <h1> que indica o início de um título de primeiro nível. A oitava linha é a tag <p> que indica o início de um parágrafo. A nona linha é a tag </body> que indica o fim do corpo do documento. A décima linha é a tag </html> que indica o fim do documento HTML.

Respondendo HTML com Spring Boot

Para responder uma requisição com uma resposta HTML, é necessário criar um arquivo HTML e retornar o conteúdo desse arquivo na resposta. Para isso, crie um arquivo chamado index.html na pasta src/main/resources/static com o seguinte conteúdo:

1
<!DOCTYPE html>
2
<html lang="pt-br">
3
<head>
4
<meta charset="UTF-8">
5
<title>Exemplo de HTML</title>
6
</head>
7
<body>
8
<h1>Exemplo de HTML</h1>
9
<p>Este é um exemplo de um documento HTML.</p>
10
</body>
11
</html>

Suba novamente o seu servidor e acesse a URL da aplicação http://localhost:8080. Agora você deve ver na tela o conteúdo do arquivo HTML que você criou.