zoukankan      html  css  js  c++  java
  • springmvc 之 使用注解开发springmvc

    1. controller映射的几种方式:

    •    BeanNameUrlHandlerMapping
      <!-- 配置handlerMapping -->
          <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
          <!-- 配置后端控制器 -->
          <bean name="/hello.do" class="cn.wh.controller.HelloController"></bean>
    • ControllerClassNameHandlerMapping
      <!-- 配置handlerMapping -->
          <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"></bean>
          <!-- 配置后端控制器 
              以hello*.do开头的请求都被处理
          -->
          <bean name="helloController" class="cn.wh.controller.HelloController"></bean>
    • SimpleUrlHandlerMapping
      <!-- 配置handlerMapping -->
          <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
              <property name="mappings">
                  <props>
                      <!-- key配置url,value配置的是beanName -->
                      <prop key="/hello.do">helloController</prop>
                  </props>
              </property>
          </bean>
          <!-- 配置后端控制器 -->
          <bean name="helloController" class="cn.wh.controller.HelloController"></bean>
    • 使用注解进行映射

    2. 使用注解开发:

      处理器:

    /**
     * 使用注解开发springmvc
    * @Controller 声明控制器
     */
    @Controller
    /**
     * 窄化
     */
    @RequestMapping("/user")
    public class HelloController {
        /**
         * @RequestMapping 声明映射配置
         * value 指定url,可以指定多个url
         * method 指定请求方法,如果填写了method,那么该方法只能处理指定的请求方法
         */
        @RequestMapping(value="/hello.do",method=RequestMethod.GET)
        public ModelAndView hello(){
            System.out.println("hello annotation");
            ModelAndView mv=new ModelAndView("hello");
            mv.addObject("msg", "annotation application");
            return mv;
        }
    }

    配置文件:

    <!-- 配置注解适配器
            该适配器 使用DefaultAnnotationHandlerMapping来进行映射,该映射器不用配置
         -->
        <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"></bean>
        <!-- 配置视图解析器 -->
        <bean id="viewResolver"
            class="org.springframework.web.servlet.view.UrlBasedViewResolver">
            <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
            <!-- 前缀  在视图名前加上前缀 -->
            <property name="prefix" value="/WEB-INF/jsp/"/>
            <!-- 后缀  在视图名后加上后缀 -->
            <property name="suffix" value=".jsp"/>
        </bean>
        <!-- 配置扫描器 -->
        <context:component-scan base-package="cn.wh.controller"/>

    在配置注解时,可以使用新的适配器和映射器:

    <!-- 映射器 -->
        <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
        <!-- 适配器 -->
        <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>

    也可以使用

    <mvc:annotation-driven/>
  • 相关阅读:
    面向对象(静态)
    面向对象 三大特性
    MySQL数据库表分区功能详解
    zabbix 库表介绍
    数据库分库分表思路
    Mysql之binlog日志说明及利用binlog日志恢复数据操作记录
    zabbix 监控 tomcat
    zabbix 监控项报"Value "(No info could be read for "-p": geteuid()=1002 but you should be root"
    Linux中Swap与Memory内存简单介绍
    mysql常用命令杂记
  • 原文地址:https://www.cnblogs.com/forever2h/p/6801913.html
Copyright © 2011-2022 走看看