SpringMVC的视图和视图解析器

来源:互联网 发布:myeclipse编译java文件 编辑:程序博客网 时间:2024/06/03 23:33

  前边我们讲过了SpringMVC的目标方法入参的实例对象实例化的过程,即它会根据他的一个key先去implicitModel中寻找相应的对象,若找不到则会去session中找,若还是找不到,则会通过反射创建一个这样的实例对象。需要注意的是若session中有对应的key却没有对象的话,则会报异常。下边我们来讲一讲SpringMVC用到的各种视图和视图解析器。

  1. 我们在SpringMVC的配置文件中配过一个InternalResourceViewResolver,这个视图解析器负责将逻辑驶入解析成物理视图。当我们在项目中加入了JSTL的两个标签包的时候,SpringMVC就会自动用JSTLView替代InternalResourceView。

  2. <mvc:view-controller>标签,这个标签允许程序从一个页面直接访问到另一个页面而不经过Handler。但是配置这个标签之后,为了确保Handler的mapping映射路径起作用,必须再添加一个配置<mvc:annotation-driven/>。

  3. 我们知道视图解析器中默认的页面之间的访问方式,都是转发,但是我们也可以在目标方法的返回值中添加如下字符来设定访问方式为重定向还是转发:

       return "redirect:emp"      return "forward:emp"

  4. 访问静态资源

  我们知道,springMVC对所有的请求都要求有Handler的目标方法进行映射,所以我们如果是访问如图片,.css,.js等静态资源时就会报出没有映射的异常,所以我们可以在springMVC的配置文件中添加一个注解<mvc:default-servlet-handler/>来设定SpringMVC将自动的判断该访问有没有映射请求。但需要注意的是,我们还需要加上<mvc:annotation-driven/>这个注解,否则普通的HandllerMethod会不起作用。

 


 

原创粉丝点击