spring boot 使用视图modelandview

1:springboot使用视图解析器,添加依赖

<!-- freemarker模板引擎视图 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-freemarker</artifactId></dependency><!-- 热部署,不用重启 ,这个在这里不需要--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency><!-- jsp解析器 --><dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId><scope>provided</scope></dependency>

2:主函数需要继承SpringBootServletInitializer,并覆盖其方法。

package com.liyafei;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;@EnableAutoConfiguration
@SpringBootApplication
//返回jsp页面必须继承SpringBootServletInitializer类重写里面的方法
public class Main extends SpringBootServletInitializer{public static void main(String[] args) {SpringApplication.run(Main.class, args);}protected SpringApplicationBuilder config(SpringApplicationBuilder applicationBuilder){return applicationBuilder.sources(Main.class);}
}

3:配置文件中添加spring.mvc.view配置,配置了视图解析器之后,controlller返回的String,View等就会先找视图解析器

spring:datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://localhost:3306/demousername: rootpassword: 1367356mvc:view:prefix: /WEB-INF/suffix: .jspmybatis:config-location: classpath:mybatis-config.xml

4:controller映射

package com.liyafei.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.view.json.MappingJackson2JsonView;import com.liyafei.pojo.User;//这个注解不能使用RestController,不然会返回模板类型的页面
@Controller
public class MyController {User user=new User();@RequestMapping("/my")public ModelAndView test(){ModelAndView mv=new ModelAndView();mv.setViewName("modelandview");mv.addObject("name", "liyafei");user.setAge(20);user.setName("wangwu");mv.addObject("user", user);//设置返回的数据为json类型,也可以不设置,返回对象//mv.setView(new MappingJackson2JsonView());return mv;}@RequestMapping("index")public String index(){return "index";}}

5:测试成功:
在这里插入图片描述
6:目录结构
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/250025.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

题解-BOI 2004 Sequence

Problem bzoj & Luogu 题目大意&#xff1a; 给定序列\(\{a_i\}\)&#xff0c;求一个严格递增序列\(\{b_i\}\)&#xff0c;使得\(\sum \bigl |a_i-b_i\bigr|\)最小 Thought 正序&#xff1a;直接对应 逆序&#xff1a;取中位数&#xff08;证明&#xff1a;“医院设置”&am…

【vscode】编译java时报错乱码

报错如下 解决方案 改变终端的编码格式 chcp 946注意: chcp 65001 UTF-8编码chcp 936 GBK2312代码页

搭建集群架构

环境搭建进行规划(磨刀不误砍柴工). 集群架构组成说明. 负载均衡服务器使用Nginx做搭建,(nginx反向代理软件) Nginx01<-------->Nginx02 3台Web网站服务器,Nginx网站web服务功能 2台负载均衡服务器 (对网站的流量进行分流,减少流量对某台服务器的压力) 3台web服务器, (处…

Model、ModelMap和ModelAndView的使用详解

1.前言 最近SSM框架开发web项目&#xff0c;用得比较火热。spring-MVC肯定用过&#xff0c;在请求处理方法可出现和返回的参数类型中&#xff0c;最重要就是Model和ModelAndView了&#xff0c;对于MVC框架&#xff0c;控制器Controller执行业务逻辑&#xff0c;用于产生模型数据…

【mysql】- 初始化

参考 1、写配置文件 在mysql的根目录下创建 my.ini&#xff0c;根目录的截图和输入的内容如下所示。 my.ini的内容如下 [mysql] default-character-setutf8[mysqld] character-set-serverutf8 default-storage-engineINNODB sql_modeSTRICT_TRANS_TABLES,NO_ZERO_IN_DATE,…

@PathVariable注解使用

PathVariable是spring3.0的一个新功能&#xff1a;接收请求路径中占位符的值 语法&#xff1a; PathVariable("xxx") 通过 PathVariable 可以将URL中占位符参数{xxx}绑定到处理器类的方法形参中PathVariable(“xxx“) RequestMapping(value”user/{id}/{name}”) 请…

JAVA 框架-Spring-AOP面向切面

AOP&#xff08;Aspect Orient Programming&#xff09;&#xff0c;我们一般称为面向方面&#xff08;切面&#xff09;编程&#xff0c;作为面向对象的一种补充&#xff0c;用于处理系统中分布于各个模块的横切关注点&#xff0c;比如事务管理、日志、缓存等等。AOP实现的关键…

互相关和卷积的关系

转载于:https://www.cnblogs.com/seisjun/p/10134021.html

Thymeleaf3语法详解

Thymeleaf是Spring boot推荐使用的模版引擎&#xff0c;除此之外常见的还有Freemarker和Jsp。Jsp应该是我们最早接触的模版引擎。而Freemarker工作中也很常见&#xff08;Freemarker教程&#xff09;。今天我们从三个方面学习Thymeleaf的语法&#xff1a;有常见的TH属性&#x…

SSM+Netty项目结合思路

最近正忙于搬家&#xff0c;面试&#xff0c;整理团队开发计划等工作&#xff0c;所以没有什么时间登陆个人公众号&#xff0c;今天上线看到有粉丝想了解下Netty结合通用SSM框架的案例&#xff0c;由于公众号时间限制&#xff0c;我不能和此粉丝单独沟通&#xff0c;再此写一篇…

THYMELEAF 如何用TH:IF做条件判断

TestController 增加一个布尔值数据&#xff0c;并且放在model中便于视图上获取 package com.how2java.springboot.web; import java.util.ArrayList; import java.util.Date; import java.util.List;import org.springframework.stereotype.Controller; import org.springfr…

Thymeleaf th:include、th:replace使用

最近做到页面数据展示分页的功能&#xff0c;由于每个模块都需要分页&#xff0c;所以每个页面都需要将分页的页码选择内容重复的写N遍&#xff0c;如下所示&#xff1a; 重复的代码带来的就是CtrlC&#xff0c;CtrlV ,于是了解了一下thymeleaf的fragment加载语法以及th:includ…

Thymeleaf select 使用 和多select 级联选择

1.使用select 并且回绑数据; 页面&#xff1a; 状态&#xff1a; <select name"status" th:field"*{status}" id"idstatus" class"input-select" th:value"*{status}"> <option value"">--请选择-…

表达式符号

Thymeleaf对于变量的操作主要有$*#三种方式&#xff1a; 变量表达式&#xff1a; ${…}&#xff0c;是获取容器上下文变量的值.选择变量表达式&#xff1a; *{…}&#xff0c;获取指定的对象中的变量值。如果是单独的对象&#xff0c;则等价于${}。消息表达式&#xff1a; #{……

Java学习的快速入门:10行代码学JQuery

生活在快速发展时代的我们&#xff0c;如果不提速可能稍不留神就被时代淘汰了。快节奏的时代成就了快餐&#xff0c;亦成就了速成教育。尤其是身处互联网行业的我们&#xff0c;更新换代的速度更是迅速&#xff0c;快速掌握一门技术已经成为潮流趋势。怎样才能快速入门学习java…

项目管理

项目先后衔接的各个阶段的全体被称为项目管理流程。项目管理流程对于一个项目能否高效的执行起到事半功倍的效果。接下来我会利用36张的ppt&#xff08;当然了这里我只用部分图片展示要不然就太多图片了&#xff09;&#xff0c;介绍项目管理的整体流程。 1.项目管理的五大过程…

docker——三剑客之Docker Machine

Docker Machine是Docker官方三剑客项目之一&#xff0c;负责使用Docker的第一步&#xff0c;在多种平台上快速安装Docker环境。它支持多种平台&#xff0c;让用户在很短时间内搭建一套Docker主机集群。Machine项目是Docker官方的开源项目&#xff0c;负责实现对Docker主机本身进…

软件项目管理(二)

根据上次的路线图 从项目初始开始&#xff1a;包括项目确立和生存期 项目确立分成 项目立项、项目招投标、项目授权 项目立项&#xff1a;确定项目的目标、时间、资源、资金&#xff0c;关键在于得到项目发起人的认可 一个软件项目的立项开始于软件项目的启动&#xff0c;只…

软件项目管理(三)

上次讲完了项目初始部分&#xff0c;包括立项、招投标、授权 在进入第二部分&#xff0c;项目计划 前我们要先了解软件的需求以及任务的分解 软件需求管理 软件需求定义&#xff1a;用户对软件功能和性能的要求 软件需求管理过程&#xff1a;需求获取、需求分析、需求规格…

软件项目管理(四)

上一篇介绍了软件项目的需求分析和任务分解&#xff0c;即软件项目的范围计划&#xff0c;那么对于一个软件项目来说&#xff0c;我们还需要知道它需要多少时间多少成本&#xff0c;如何得到这些数据就是这次要解决的问题&#xff0c;即项目的成本计划 在项目未完成之前谁也不…