Spring Boot 自动化控制器展示了如何使用 ViewControllerRegistry 在 Spring Boot 应用中创建简单的自动化控制器。 我们的应用显示一个显示当前日期的简单页面。 我们使用 FreeMarker 作为模板引擎。
Spring 是流行的 Java 应用框架。 Spring Boot 致力于创建独立的,基于生产级别的基于 Spring 的应用,而无任何麻烦。
FreeMarker 是适用于 Web 和独立环境的服务器端 Java 模板引擎。 模板使用 FreeMarker 模板语言(FTL)编写,这是一种简单的专用语言。
ViewControllerRegistry
有时我们不需要复杂的控制器逻辑,而只想返回一个视图。 ViewControllerRegistry
注册预先配置了状态代码和/或视图的简单自动化控制器。 它的addViewController()
方法将视图控制器映射到给定的 URL 路径(或模式),以便使用预先配置的状态代码和视图来呈现响应。
这是项目结构。 FreeMarker 模板文件的后缀为.ftl
; 它们默认位于resources/templates
目录中。 当 Spring Boot 在 Maven POM 文件中找到依赖关系时,它将自动配置 FreeMarker。 我们还包括一个测试文件。
pom.xml
spring-boot-starter-freemarker
是用于使用 FreeMarker 构建 Spring MVC 应用的启动器。 spring-boot-starter-test
导入必要的测试模块。 该应用打包到一个 JAR 文件中。
com/zetcode/MvcConfig.java
在MvcConfig
类中,我们为主页配置一个视图和一个控制器。 由于我们在 Maven POM 文件中包含 FreeMarker,因此 Spring Boot 会自动将 FreeMarker 配置为模板引擎。 因此,index
视图被映射到src/main/resources/templates
目录中的index.ftl
模板文件。
resources/templates/index.ftl
index.ftl
模板文件是应用的主页。 它显示当前日期。
在这里,我们将当前日期时间值分配给now
变量。
我们以短格式打印日期。
com/zetcode/Application.java
我们设置了 Spring Boot 应用。 @SpringBootApplication
注解启用自动配置和组件扫描。
com/zetcode/HomePageTest.java
这是对主页的测试。
我们启动该应用。
使用curl
工具,我们可以检索主页。
在本教程中,我们创建了一个简单的控制器,并在 Spring Boot 中进行了查看,而没有创建特定的控制器类。 我们已经使用 FreeMarker 作为模板引擎。