SpringBoot使用ModelAndView时配置视图解析器


spring boot 使用视图modelandview

原文:https://www.cnblogs.com/liyafei/p/7955943.html

 

 

 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.Driver
    url: jdbc:mysql://localhost:3306/demo
    username: root
    password: 1367356
 mvc: view: prefix: /WEB-INF/ suffix: .jsp mybatis: 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:目录结构


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM