SpringBoot整合系列-整合SpringMVC

超、凢脫俗 2022-12-18 09:54 724阅读 0赞

SpringBoot整合Spring MVC

步骤

第一步:添加必要依赖

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-web</artifactId>
  4. </dependency>

第二步:添加必要的配置

第三步:添加必要的配置类

SpringBoot整合SpringMVC没有必需的配置类,只有在想要自定义的时候添加一些实现了WebMvcConfigurer接口的配置类。

  1. @Configurationpublic class WebMvcConfig implements WebMvcConfigurer { // 添加针对swagger的处理,避免swagger404
  2. @Override
  3. public void addResourceHandlers(ResourceHandlerRegistry registry) {
  4. registry.addResourceHandler("swagger-ui.html")
  5. .addResourceLocations("classpath:/META-INF/resources/");
  6. } //...自定义实现WebMvcConfigurer中的若干默认方法}

第四步:整合模板引擎

整合Freemarker

第一步:添加必要的依赖

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-freemarker</artifactId>
  4. </dependency>

第二步:添加必要的设置(重点)

  1. #Freemarker-config# 设置模板前后缀名#spring.freemarker.prefix=spring.freemarker.suffix=.ftl
  2. spring.freemarker.enabled=true# 设置文档类型spring.freemarker.content-type=text/html
  3. spring.freemarker.request-context-attribute=request# 设置ftl文件路径spring.freemarker.template-loader-path=classpath:/templates/# 设置页面编码格式spring.freemarker.charset=UTF-8# 设置页面缓存spring.freemarker.cache=false

第三步:添加必要的配置类

第四步:添加控制器和动态页面

  1. @Controller@RequestMapping("base")@Log4j2@Api(hidden = true)public class Base { @RequestMapping("/book") @ApiOperation(value = "测试",hidden = true) public String toBookIndexPage(ModelMap model){
  2. log.info("进来啦!!!");
  3. model.put("name","浩哥"); return "/book/index";
  4. }
  5. }

resources/book/index.ftl

  1. <#assign base = request.contextPath/><!DOCTYPE HTML><HTML><HEAD>
  2. <TITLE>测试首页</TITLE>
  3. <base id="base" href="${base}">
  4. <link rel="stylesheet" href="/webjars/bootstrap/3.3.7-1/css/bootstrap.min.css" />
  5. <script src="/webjars/jquery/3.1.1/jquery.min.js"></script>
  6. <script src="/webjars/bootstrap/3.3.7-1/js/bootstrap.min.js"></script></HEAD><BODY>${ name}<a class="getBook" ="dianji()">点击</a><br/><button ="dianji()">点击</button></BODY><SCRIPT>
  7. function dianji() {
  8. $.ajax({ url: "/account/g/1", type: "GET", success: function (data) {
  9. alert(data);
  10. }
  11. })
  12. } var base = document.getElementById("base").href; // 与后台交互
  13. _send = function(async,url, value, success, error) {
  14. $.ajax({ async : async, url : base + '/' + url, contentType : "application/x-www-form-urlencoded; charset=utf-8", data : value, dataType : 'json', type : 'post', success : function(data) {
  15. success(data);
  16. }, error : function(data) {
  17. error(data);
  18. }
  19. });
  20. };</SCRIPT></HTML>

整合Thymeleaf

第一步:添加必要的jar包

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  4. </dependency>

第二步:添加必要的配置

  1. spring.thymeleaf.cache=falsespring.thymeleaf.encoding=UTF-8spring.thymeleaf.enabled=truespring.thymeleaf.mode=HTML
  2. spring.thymeleaf.prefix=classpath:/templates/spring.thymeleaf.suffix=.html
  3. spring.thymeleaf.servlet.content-type=text/html

以上配置中除了第一个之外,其余皆可不配置,上面的值也是默认值,需要修改的时候再进行配置

第三步:添加必要配置类

第四步:添加控制器和动态页面

  1. @Controllerpublic class BaseController { @RequestMapping("index") public String toIndex(ModelMap model){
  2. model.put("name","首页啊"); return "index";
  3. }
  4. }

resources/index.html

  1. <!Doctype html>
  2. <html>
  3. <head>
  4. <title>下一页</title>
  5. </head>
  6. <body>
  7. <h1 th:text="${name}">Hello World</h1>
  8. </body>
  9. </html>

整合WebJar

第一步:添加必要的jar包

  1. <!--导入bootstrap-->
  2. <dependency>
  3. <groupId>org.webjars</groupId>
  4. <artifactId>bootstrap</artifactId>
  5. <version>3.3.7-1</version>
  6. </dependency>
  7. <!--导入Jquery-->
  8. <dependency>
  9. <groupId>org.webjars</groupId>
  10. <artifactId>jquery</artifactId>
  11. <version>3.1.1</version>
  12. </dependency>

第二步:使用WebJar开发前端页面

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Dalaoyang</title>
  6. <link rel="stylesheet" href="/webjars/bootstrap/3.3.7-1/css/bootstrap.min.css" />
  7. <script src="/webjars/jquery/3.1.1/jquery.min.js"></script>
  8. <script src="/webjars/bootstrap/3.3.7-1/js/bootstrap.min.js"></script>
  9. </head>
  10. <body>
  11. <div class="container"><br/>
  12. <div class="alert alert-success">
  13. <a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>
  14. Hello, <strong>Dalaoyang!</strong>
  15. </div>
  16. </div>
  17. </body>
  18. </html>

结语:
本文总结到此结束!如果有想要学习Java,想要提升技术,想要找工作的朋友,可以点击进入,暗号:cspp ,有大量的学习资料、教程、面试真题。免费提供!
在这里插入图片描述
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,724人围观)

还没有评论,来说两句吧...

相关阅读