ModelAndView 配置与使用

一,ModelAndView 介绍:

  1)ModelAndView 用于后台与前端页面交互;

  2)可以用于重定向与转发到指定页面,

  3)可以保存数据然后渲染到页面

二,使用:

  1)在Controller层的方法返回值写为ModelAndView 

  2)在方法内 new一个 ModelAndView

  3)给ModelAndView 赋值

  4)返回ModelAndView

  

三,常用返回类型与页面渲染方法:

    1)返回值

     // List
         List<String> list = new ArrayList<String>();
         list.add("张三");
         list.add("李四");
         list.add("王五");
         mav.addObject("userList", list);
 
         // Map
         Map<String, String> map = new HashMap<String, String>();
         map.put("zhangsan", "张三");
         map.put("lisi", "李四");
         map.put("wangwu", "王五");
         mav.addObject("map", map);

   2)页面

    //list 

    <%@ prefix="c" taglib uri="http://java.sun.com/jsp/jstl/core" %>
      <c:forEach items="${userList}" var="u">
      <c:out value="${u}"></c:out>
    </c:forEach>

    //map

    <c:forEach items="${map}" var="n">
      <c:out value="${n.value}"></c:out>
    </c:forEach>

 

四,Springmvc配置:

  

    <!-- 视图解析器 -->
    <bean
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/" />
    <!--
    prefix用于给返回的视图名之前添加路径,例如返回index,
    那就在项目的根路径下加上 /index (如果项目路径是:http://localhost:8080/portal)
    那么返回的路径就是:http://localhost:8080/portal/index
    -->
    <property name="suffix" value=".jsp" />
    <!--
    suffix用于给返回的视图名之前添加后缀,例如返回index,
    那么返回的路径就是:http://localhost:8080/portal/index.jsp
    -->
    </bean>

转自:https://www.cnblogs.com/hi-feng/p/7868226.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
在Spring Boot中,可以使用application.properties或application.yml文件来设置modelandview。以下是两种方法: 1. 使用application.properties文件 在application.properties文件中,可以使用以下语法来设置modelandview: ```properties # 设置modelandview的视图名称 spring.mvc.view.prefix=/templates/ spring.mvc.view.suffix=.html # 设置modelandview的属性 my.view.name=myview my.view.age=20 ``` 在Java代码中,可以使用以下代码来获取modelandview: ```java @RestController public class MyController { @Autowired private Environment env; @GetMapping("/modelandview") public ModelAndView modelandview() { ModelAndView mav = new ModelAndView(env.getProperty("my.view.name")); mav.addObject("age", env.getProperty("my.view.age")); return mav; } } ``` 2. 使用application.yml文件 在application.yml文件中,可以使用以下语法来设置modelandview: ```yaml # 设置modelandview的视图名称 spring: mvc: view: prefix: /templates/ suffix: .html # 设置modelandview的属性 my: view: name: myview age: 20 ``` 在Java代码中,可以使用以下代码来获取modelandview: ```java @RestController public class MyController { @Value("${my.view.name}") private String viewName; @Value("${my.view.age}") private String viewAge; @GetMapping("/modelandview") public ModelAndView modelandview() { ModelAndView mav = new ModelAndView(viewName); mav.addObject("age", viewAge); return mav; } } ``` 注意:在使用application.properties或application.yml文件设置modelandview时,需要注意视图名称的前缀和后缀。在以上示例中,视图名称为myview,视图文件存放在/templates/myview.html文件中。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值