SpringMVC框架----基于注解的SpringMVC应用

步骤:

导包 Spring-webmvc

配置文件

创建spring-mvc.xml文件,创建在webContent下

配置DispatcherServlet前端控制器。(web.xml)

详细步骤在基本框架配置程序测试中。

在前端控制器配置完成后,在spring-mvc.xml中添加Controller的过程和编写java的区别:

  1. 处理器不用实现Controller接口

  2. 方法名也不做要求,返回值可以ModelAndView,也可以为String,

  3. 可以添加多个方法,不需要再因为修改一点内容就跳转到不同的Controller中

  4. 使用@Controller,采用主键扫描,不用配置Bean元素

  5. 可以在方法前或者类前添加@RequestMappings来代替HandlerMappings的配置选择相应的处理器

@Controller  代替配置文件中:

<bean id="HelloController" class="com.SpringMVC.controller.HelloController"></bean>

@RequestMappings代替:

<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">

       <property name="mappings">

           <props>

    <!-- 告诉前端控制器请求结尾为hello.do,处理交由HelloController处理器来处理 -->

               <prop key="/hello.do">HelloController</prop>

           </props>

       </property>

    </bean>

使用后不会在局限于key值,key可以根据Controller注解中的注解在方法中任意选择,注解写在哪个方法之上就运行那哪个方法。

最后要在配置文件中加入ViewResolver配置,添加组件扫描,添加MVC注解扫描。

<context:component-scan base-package="com.SpringMVC.Controller"></context:component-scan>

    <!-- MVC注解扫描 -->

    <mvc:annotation-driven />

    <!-- 配置视图解析器 -->

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">

    <property name="prefix" value="/WEB-INF/"></property>

    <property name="suffix" value=".jsp"></property>

    </bean>

Controller.java:

package com.SpringMVC.Controller;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;


/**

* http://loaclhost:8080/8_8SpringMVC_02/demo/hello.do

* @author MAIBENBEN

*

*/

@Controller

@RequestMapping("/demo")

public class HelloController {

    @RequestMapping("/hello.do")

    public String hello() {

        //返回值为视图名

        System.out.println("hello()");

        return "hello";

    }

    @RequestMapping("/tologin.do")

    public String hello2() {

        System.out.println("tologin()");

        return "login";    

    }

    @RequestMapping("/login.do")

    public String login() {

        System.out.println("登录成功");

        return "show";

    }
    
}

点击提交按钮后跳转到login.do。

猜你喜欢

转载自blog.csdn.net/YuQuanZhang/article/details/81531504
今日推荐