SpringBoot中的mvc具体使用方法

经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面,下面为大家分享一下SpringBoot中的mvc具体使用方法。

关于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
@AllArgsConstructor
class BeanEntity {
   private int number;
   private String desc;
}

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

我们可以发现这里跟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学习之mvcSpringBoot学习之mvc

springBoot添加对jsp的支持

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

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

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

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

原创文章,作者:晴川运维,如若转载,请注明出处:https://baike.qcidc.com/5158.html

(0)
晴川运维晴川运维
上一篇 2025年6月8日
下一篇 2025年6月8日

相关推荐

  • Linux下部署RAID5具体方法

    RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。 RAID 5可以理解为是RAID 0和RAID 1的折衷方案。RAID 5可以为系统提供数据安全保障,但保障程…

    Linux系统 2025年6月9日
  • 详解观察者模式

    在现实世界中,许多对象并不是独立存在的,其中一个对象的行为发生改变可能会导致一个或者多个其他对象的行为也发生改变。例如,某种商品的物价上涨时会导致部分商家高兴,而消费者伤心;还有,…

    Linux系统 2025年6月8日
  • 使用selenium实现cookies免密登录

    一直想用selenium实现个小功能,比如发微博之类的,但是有的网站在登录会有验证码,没想到太好的方法解决,于是想到利用cookies来登录网站。 获取一个可用的cookies 获…

    Linux系统 2025年6月13日
  • 使用GitHub搭建专属的服务器

    现在固定公网IP资源稀缺,虽然说IPv6已经开始使用,但是用的人并不多,大部分用的都是IPv4,想要搞一个自己网站,首先就是需要一个固定的公网IP,但是每年却需要缴纳不少的mone…

    Linux系统 2025年6月8日
  • Linux下常用的终端应用程序

    许多 Linux 用户认为在终端中工作太复杂、无聊,并试图逃避它。但这里有个改善方法 —— 四款终端下很棒的开源程序。它们既有趣又易于使用,甚至可以在你需要在命令行中工作时照亮你的…

    Linux系统 5天前
  • Linux中通过osquery监控文件的完整性

    osquery 是 SQL 驱动的分析和监控操作系统的工具,是操作系统分析框架,支持 OS X 和 Linux 系统。osquery 能帮助监控和分析低水平的操作系统,提供更直观的…

    Linux系统 2025年6月8日
  • 如何备份一个磁盘分区

    通常你可能会把数据放在一个分区上,有时候可能需要对该设备或者上面的一个分区进行备份。树莓派用户为了可引导 SD 卡当然有这个需求。其它小体积计算机的用户也会发现这非常有用。有时候设…

    Linux系统 2025年6月8日
  • HTML 元素使用实例

    HTML 文档是由 HTML 元素定义的。HTML 元素指的是从开始标签(start tag)到结束标签(end tag)的所有代码,下面为大家详细讲解一下HTML 元素 HTML…

    Linux系统 2025年6月8日
  • 详解Redis主从技术

    Redis复制 在生产环境中,Redis通过持久化功能(RDB和AOF技术)保证了即使在服务器重启的情况下也不会损失(或少量损失)数据。但是由于数据是存储在一台服务器上的,如果这台…

    Linux系统 1天前
  • 详解grep命令的排除功能

    grep命令是linux中一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 在一个或多个文件中搜素字符串模式,如果字符串模式包括空格,也必须被引用,模式后…

    Linux系统 2025年6月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注