博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot学习之mvc
阅读量:6705 次
发布时间:2019-06-25

本文共 2884 字,大约阅读时间需要 9 分钟。

  Spring Boot非常适合Web应用程序开发。 我们可以使用嵌入式Tomcat,Jetty或Undertow轻松创建自包含的HTTP服务器。 大多数Web应用程序将使用spring-boot-starter-web模块快速启动和运行。

  一。关于SpringBoot中的mvc

  在SpringBoot中使用mvc与springmvc基本一致,我们甚至可以按照springmvc中的标准来完成控制器的实现。

  代码示例:

package com.bdqn.lyrk.study.springboot.controller;import lombok.AllArgsConstructor;import lombok.Data;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;/** * @author chen.nie */@Controller@RequestMapping("/index")public class IndexController {    @GetMapping("/index")    public String index() {        return "index";    }    @GetMapping("/number/{number}/Desc/{desc}")    @ResponseBody    public BeanEntity bean(@PathVariable ("number") int number, @PathVariable("desc") String desc) {        return new BeanEntity(number,desc);    }}@Data@AllArgsConstructorclass BeanEntity {    private int number;    private String desc;}
View Code

  当我们访问浏览器地址时得到对应的结果:

  我们可以发现这里跟springmvc中controller写法无二,其余的service层和dao层也均是按常规写法,用@Service和@Repository标记service与dao即可

  二.关于SpringBoot中mvc(静态资源-视图)

    默认情况下,Spring Boot将从类路径或ServletContext的根目录中的名为/static(或/ public或/resources或/META-INF/resources)的目录提供静态内容。

    在静态内容当中我们可以放js,css样式等文件,除Web服务,我们还可以使用Spring MVC来提供动态HTML内容。Spring MVC支持各种模板技术,包括Thymeleaf,FreeMarker和JSP。当然SpringBoot不推荐用JSP来作为视图层,通常情况我们把模板放在src/main/resources/templates下

  以下目录就是典型的模板与静态资源目录结构,按照上述规则我们把静态资源js文件放在static目录下,模板文件(这里使用的是Freemarker)放在规定的目录下:

  

 

  三.关于SpringBoot中的devtools(开发者工具)

    在使用SpringBoot时,有时候我们希望能够在改变相关资源时能够实时生效,尤其在更新视图资源时,体现尤为突出,那么这时候我们可以用SpringBoot给我们提供开发者工具来实现该效果,当类路径上的文件发生更改时自动重新启动:

  gradle代码:

dependencies {    compile("org.springframework.boot:spring-boot-devtools")}
View Code

  排除资源:

    如果要自定义这些排除项在类路径上的文件发生更改时自动重新启动,可以使用spring.devtools.restart.exclude属性。

  监视额外的路径:

    对不在类路径中的文件进行更改时,需要重新启动或重新加载应用程序,可以使用spring.devtools.restart.additional-paths属性来配置其他路径以监视更改

  使用触发器文件

    当使用IDE工具连续不断的进行编译,每次都重启并不好,因此当我们需要特定时间进行重启时,可使用触发文件
    因此我们可以使用spring.devtools.restart.trigger-file来指定触发文件

     liveReload:

    springboot开发者工具包含一个liveReload服务器,它可以在静态资源改变时触发浏览器刷新

 

  四。SpringBoot添加对jsp的支持

   1) 原则上来说,SpringBoot不推荐使用Jsp做为视图层,如果想用Jsp,我们需要包含以下的依赖:

    

org.springframework.boot
spring-boot-starter-tomcat
provided
org.apache.tomcat
tomcat-jasper
8.5.28
View Code

   2) 在application.properties做相关视图的配置

    

spring.mvc.view.suffix=/WEB-INF/jsp/spring.mvc.view.prefix=.jsp

    

转载于:https://www.cnblogs.com/niechen/p/7765056.html

你可能感兴趣的文章
video自动播放 隐藏播放控制条,并且用点击 video 元素的时候 控制暂停和播放...
查看>>
【go密码学】-数字签名
查看>>
代码重构之消除分支结构
查看>>
ingress controller学习记录
查看>>
328. Odd Even Linked List
查看>>
redis学习笔记(三)--Redis的功能
查看>>
MySQL性能调优与架构设计(二)—— MySQL存储引擎简介
查看>>
NeurIPS 2018 中的贝叶斯研究
查看>>
Android 音视频入门之音频采集、编码、播放
查看>>
python并发模块之concurrent.futures(一)
查看>>
1月10日云栖精选夜读 | 12亿行代码,阿里巴巴这一年的技术报告和梦想报告 ...
查看>>
Spring4定时任务配置
查看>>
ApiPost自动化测试基础之:接口参数依赖的情景处理
查看>>
短视频程序的魅力,你为什么喜欢抖音?知乎大神的回答
查看>>
智能手机背后的利益链:赚了满钵的供应商,提心吊胆的新技术者
查看>>
C语言参考库
查看>>
Spring Boot 项目搭建
查看>>
福佑卡车获D轮融资1.7亿美元,中银集团投资有限公司、经纬中国领投
查看>>
全球第一辆商用自动驾驶卡车即将在瑞典上路!
查看>>
云解析DNS“免费版”与“付费版”的功能对比!新手引导
查看>>