springMVC学习笔记(一)

1、模型2介绍

        模型2基于模型-视图-控制器模式,成为MVC范式。视图负责应用的展示;模型封装了应用的数据和业务逻辑;控制器负责接收用户输入,改变模型以及调整视图的显示。SpringMVC和struts1使用一个servlet作为控制器,struts2则使用filter作为控制器。大部分都采用JSP作为应用的视图。模型则采用POJO(Plan Old Java Object),这是一个普通对象。一个javabean必须拥有一个午餐构造器,并通过get/set方法来访问参数,同时支持持久化。

2、SpringMVC的DispatcherServlet

        该Servlet的全名是org.springframework.web.servlet.DispatcherServlet。要使用这个servlet,需要在web.xml文件中进行配置,如下:    

<servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

        servlet元素内的load-on-startup元素是可选的。如果他存在,则他将在应用程序启动时装载servlet并调用他的init方法。若它不存在,则在该servlet的第一个请求时加载。DispatcherServlet在初始化时,会寻找一个在应用程序的WEB-INF目录下的配置文件,该文件的命名规则为:servletName-servlet.xml。其中servletName是在web.xml文件中DispatcherServlet的名称。

        此外也可以把SpringMVC的配置文件放在应用程序中目录的任何地方,用servlet定义的init-param元素,以便DispatcherServlet加载到该文件。比如可以利用init-param元素更改默认的文件名和文件路径为WEB-INF/config/simple-config.xml

 <servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
       <param-name>contextConfigLocation</param-name>
       <param-value>/WEB-INF/config/simple-config.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
 </servlet>

3、Controller接口

        在Spring2.5之前开发控制器的唯一方法是实现org.springframework.web.servlet.mvc.Controller接口。这个接口公开了一个handleRequest方法,签名如下:

ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
        其实现类可以访问对应请求的HttpServletRequest和HttpServletResponse,还必须返回一个包含视图路径或视图路径和模的ModelAndView对象。

        Controller接口的实现类只能处理一个单一动作(Action),而一个基于注解的控制器可以同时支持多个请求处理动作,并且无需实现任何接口。

4、View Resolver

        SpringMVC中的视图解析器负责解析视图。可以通过配置文件中定义ViewResolver来配置视图解析器。

<bean id="viewResolver" class="org.springframework.web.servet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/"/>
    <property name="suffix" value=".jsp"/>
</bean>




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值