[刘阳Java]_BeanNameViewResolver视图解析器_第8讲

BeanNameViewResolver:这个视图解析器跟XmlViewResolver有点类似,也是通过把返回的逻辑视图名称去匹配定义好的视图bean对象。它要求视图bean对象都定义在Spring的application context中,而XmlViewResolver是在指定的配置文件中寻找视图bean对象

1. 在SpringMVC配置文件中添加BeanNameViewResolver

复制代码
<bean class="org.springframework.web.servlet.view.BeanNameViewResolver">  
    <property name="order" value="10" />  
</bean>     
<!-- 配置视图解析器 -->
<!--该视图解析器的order值为Integer.MAX_VALUE -->  
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
    <property name="prefix" value="/WEB-INF/"></property>  
    <property name="suffix" value=".jsp"></property>  
</bean>
复制代码

2. 创建一个HelloView类,实现View接口

复制代码
import java.util.Date;  
import java.util.Map;  
  
import javax.servlet.http.HttpServletRequest;  
import javax.servlet.http.HttpServletResponse;  
  
import org.springframework.stereotype.Component;  
import org.springframework.web.servlet.View;  
  
@Component  
public class HelloView implements View{  
  
    public String getContentType() {  
        // TODO Auto-generated method stub  
        return "text/html";  
    }  
  
    public void render(Map<String, ?> model, HttpServletRequest request,  
            HttpServletResponse response) throws Exception {  
        // TODO Auto-generated method stub  
        response.getWriter().print("Welcome to View:"+new Date());   
    }  
  
}
复制代码

3. 创建控制器

复制代码
import org.springframework.stereotype.Controller;  
import org.springframework.web.bind.annotation.RequestMapping;  
  
@RequestMapping(value="/springmvc")  
@Controller  
public class MyView {  
    @RequestMapping(value="/testMyView")  
    public String testView(){  
        System.out.println("testView");  
        return "helloView";
    }  
}
复制代码

这里return的是视图名的第一个字母小写,springmvc会根据这个helloView名,去getBean,得到这个视图对象

 

posted @   子墨老师  阅读(2165)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示