BAEL-4225 Thymeleaf Variables
This commit is contained in:
parent
c5d164a30d
commit
c0b7dc928a
|
@ -0,0 +1,28 @@
|
|||
package main.java.com.baeldung.thymeleaf.articles;
|
||||
|
||||
public class Article {
|
||||
|
||||
private String name;
|
||||
private String url;
|
||||
|
||||
public Article(String name, String url) {
|
||||
this.name = name;
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
package main.java.com.baeldung.thymeleaf.articles;
|
||||
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/api/articles")
|
||||
public class ArticlesController {
|
||||
|
||||
@GetMapping
|
||||
public String allArticles(Model model) {
|
||||
model.addAttribute("articles", fetchArticles());
|
||||
return "articles/articles-list";
|
||||
}
|
||||
|
||||
private List<Article> fetchArticles() {
|
||||
return Arrays.asList(
|
||||
new Article(
|
||||
"Introduction to Using Thymeleaf in Spring",
|
||||
"https://www.baeldung.com/thymeleaf-in-spring-mvc"
|
||||
),
|
||||
new Article(
|
||||
"Spring Boot CRUD Application with Thymeleaf",
|
||||
"https://www.baeldung.com/spring-boot-crud-thymeleaf"
|
||||
),
|
||||
new Article(
|
||||
"Spring MVC Data and Thymeleaf",
|
||||
"https://www.baeldung.com/spring-mvc-thymeleaf-data"
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
<!DOCTYPE HTML>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<title>Thymeleaf Variables</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
||||
</head>
|
||||
<body>
|
||||
<main>
|
||||
<div th:each="article : ${articles}">
|
||||
<a th:text="${article.name}" th:href="${article.url}"></a>
|
||||
</div>
|
||||
|
||||
<div th:with="firstArticle=${articles[0]}">
|
||||
<a th:text="${firstArticle.name}" th:href="${firstArticle.url}"></a>
|
||||
</div>
|
||||
|
||||
<div th:each="article : ${articles}" , th:with="articleName=${article.name}">
|
||||
<a th:text="${articleName}" th:href="${article.url}"></a>
|
||||
</div>
|
||||
|
||||
<div th:each="article : ${articles}" th:with="articleName=${article.name}, articleUrl=${article.url}">
|
||||
<a th:text="${articleName}" th:href="${articleUrl}"></a>
|
||||
</div>
|
||||
|
||||
<div id="firstDiv" th:with="firstArticle=${articles[0]}">
|
||||
<a th:text="${firstArticle.name}" th:href="${firstArticle.url}"></a>
|
||||
</div>
|
||||
<div id="secondDiv">
|
||||
<h2 th:text="${firstArticle.name}"></h2>
|
||||
</div>
|
||||
|
||||
<div id="mainDiv" th:with="articles = ${ { articles[0], articles[1] } }">
|
||||
<div th:each="article : ${articles}">
|
||||
<a th:text="${article.name}" th:href="${article.url}"></a>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue