东莞企业网站咨询,网络培训心得体会5篇,做印章的网站,wordpress没有权限设置Spring Boot是一款出色的软件#xff0c;可让您在几秒钟内引导Spring应用程序。 它确实有效。 尽可能少的配置即可上手。 而且仍然可以更改默认值。 让我们看看用Thymeleaf和Maven引导Spring MVC并在IntelliJ中使用它是多么容易。 Spring MVC Thymeleaf与Maven的基本设置 确… Spring Boot是一款出色的软件可让您在几秒钟内引导Spring应用程序。 它确实有效。 尽可能少的配置即可上手。 而且仍然可以更改默认值。 让我们看看用Thymeleaf和Maven引导Spring MVC并在IntelliJ中使用它是多么容易。 Spring MVC Thymeleaf与Maven的基本设置 确保使用以下命令安装了Maven 3 mvn --version 。 导航到要在其中创建项目的目录并执行Maven原型 mvn archetype:generate -DarchetypeArtifactIdmaven-archetype-quickstart -DgroupIdpl.codeleak.demos.sbt -DartifactIdspring-boot-thymeleaf -interactiveModefalse 上面的命令将创建一个新目录spring-boot-thymeleaf 。 现在您可以将其导入到IDE中。 就我而言这是IntelliJ。 下一步是配置应用程序。 打开pom.xml并添加一个父项目如果未指定则来自父项目的值将是该项目的默认值。 下一步是添加Web依赖项。 为此我首先删除了所有先前的依赖项实际上是Junit 3.8.1并添加了以下依赖项现在等待一秒钟直到Maven下载依赖项并运行mvn dependency:tree来查看包含了哪些依赖项。 接下来是包装配置。 让我们添加Spring Boot Maven插件通过以上步骤基本配置已准备就绪。 现在我们可以运行该应用程序了。 Spring Boot Maven插件提供了两个run目标和repackage目标。 因此让我们使用mvn spring-boot:run应用程序。 该命令应产生Hello World! 。 请注意 App类具有main方法。 因此实际上您可以在IntellJ或任何其他IDE中运行此类。 Hello World! 但请稍等。 这不是Web应用程序。 因此让我们修改App类使其成为Spring Boot应用程序的入口点 package pl.codeleak.demos.sbt;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;EnableAutoConfiguration
Configuration
ComponentScan
public class App {public static void main(String[] args) {SpringApplication.run(App.class);}
} 除了上述内容我还将删除AppTest因为它很烂它是由maven-archetype-quickstart创建的 现在我们可以再次运行该应用程序以查看会发生什么 java.lang.IllegalStateException: Cannot find template location: class path resource [templates/] (please add some templates or check your Thymeleaf configuration) 明确。 然后添加一些Thymeleaf模板。 Thymeleaf模板放在哪里 模板的默认位置是…classpath中可用的templates 。 因此我们需要至少将一个模板放入src/main/resources/templates目录。 让我们创建一个简单的例子再次运行该应用程序将在端口8080上使用我们的应用程序启动嵌入式Tomcat Tomcat started on port(s): 8080/http 好。 但是缺少了一些东西。 当我们导航到localhost:8080 将看到404页面。 当然 还没有控制器。 因此让我们创建一个 package pl.codeleak.demos.sbt.home;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;Controller
class HomeController {RequestMapping(/)String index() {return index;}
} 再次运行该应用程序后您应该可以看到Hello Spring Boot! 页 添加静态资源 与Thymeleaf模板类似默认情况下静态资源是从classpath提供的。 我们可以将CSS文件放入src/main/resources/css 将JavaScript文件放入src/main/resources/js等。 在Thymeleaf模板中我们像这样引用它们 将包装从罐子转换为战争 但是如果我们想将应用程序作为纯Web应用程序运行并将其作为war软件包提供该怎么办 使用Spring Boot相当容易。 首先我们需要将pom.xml的包装类型从jar转换为war 包装元素。 其次-确保Tomcat是提供的依赖项最后一步是引导servlet配置。 创建Init类并从SpringBootServletInitializer继承 package pl.codeleak.demos.sbt;import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.web.SpringBootServletInitializer;public class Init extends SpringBootServletInitializer {Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder application) {return application.sources(App.class);}
} 我们可以检查配置是否适用于Maven mvn clean package 。 战争文件应创建 Building war: C:\Projects\demos\spring-boot-thymeleaf\target\spring-boot-thymeleaf-1.0-SNAPSHOT.war 使用Maven直接从war文件启动应用程序 java -jar target\spring-boot-thymeleaf-1.0-SNAPSHOT.war 有了一个战争项目我们可以在IntelliJ中运行该应用程序。 更改包装后IntellJ应该检测项目中的更改并在其中添加Web构面。 下一步是配置并运行Tomcat服务器。 导航到“ Edit Configurations然后添加带有爆炸战争产物的Tomcat服务器。 现在您可以像其他任何Web应用程序一样运行该应用程序。 重新加载Thymeleaf模板 由于该应用程序在IntelliJ中的本地Tomcat服务器上运行因此我们可以在不重新启动服务器的情况下重新加载静态资源例如CSS文件。 但是默认情况下Thymeleaf会缓存模板因此为了更新Thymeleaf模板我们需要更改此行为。 为此使用以下属性将application.properties添加到src/main/resources目录 spring.thymeleaf.cachefalse 。 重新启动服务器从现在开始您可以重新加载Thymeleaf模板而无需重新启动服务器。 更改其他配置默认值 缓存配置不是我们可以调整的唯一可用配置。 请查看ThymeleafAutoConfiguration类以查看您可以更改的其他内容。 仅举几例 spring.thymeleaf.mode spring.thymeleaf.encoding 。 最后的想法 Spring Boot简化了引导Web应用程序的过程。 仅需几步您就可以拥有完全正常运行的Web应用程序该应用程序可以是独立的也可以在任何servlet环境中运行。 除了学习Spring配置之外您还可以专注于开发。 要进一步了解Spring Boot请阅读手册并查看Spring指南其中提供了许多有用的入门教程。 请享用 资源资源 Spring Boot Thymeleaf项目源 Spring Boot参考指南 Spring指南 胸腺项目 翻译自: https://www.javacodegeeks.com/2014/04/how-to-spring-boot-and-thymeleaf-with-maven.html