热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

springboot使用视图modelandview

 1:springboot使用视图解析器,添加依赖<!--freemarker模板引擎视图-->&amp

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

        
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-freemarkerartifactId>
        dependency>

        
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-devtoolsartifactId>
            <optional>trueoptional>
        dependency>

        
        <dependency>
            <groupId>org.apache.tomcat.embedgroupId>
            <artifactId>tomcat-embed-jasperartifactId>
            <scope>providedscope>
        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:测试成功:

  

spring boot 使用视图modelandview

 

 

6:目录结构

spring boot 使用视图modelandview

 


推荐阅读
author-avatar
Andiry舍甫琴科
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有