【Spring】— 应用案例——基于注解的Spring MVC应用

应用案例——基于注解的Spring MVC应用

为了帮助读者熟悉掌握Spring MVC的核心类和注解的使用,接下来将以注解的方式对入门案例进行改写,具体实现步骤如下。

1.搭建项目环境

创建一个名为chapter11_2的Web项目,将chapter11项目中的所有JAR包以及编写的所有文件复制到chapter11_2项目,并向lib目录添加Spring AOP所需的JAR。

2.修改配置文件

在springmvc-config.xml中添加注解扫描配置,并定义视图解析器。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-4.3.xsd">
        <!--  指定需要扫描的包  -->
        <context:component-scan base-package="com.ssm.controller"/>
    <!--  定义视图解析器  -->
    <bean id="viewResoler"
    class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
    <!--  设置前缀  -->
    <property name="prefix" value="/WEB-INF/jsp/" />
    <!--  设置后缀  -->
    <property name="suffix" value=".jsp" />
    </bean>
</beans>

首先通过组件扫描器指定了需要扫描的包,然后定义了视图解析器,并在视图解析器中设置了视图文件的路径前缀和文件后缀名。

3.修改Controller类

修改ControllerTest类,在类和方法上添加相应注解。

package com.ssm.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

//Controller注解
@Controller
//@RequestMapping注解
@RequestMapping(value = "/controll")
public class ControllerTest {
    
    
    @RequestMapping(value="/annotationController")
    public String handleRdequest(HttpServletRequest arg0, HttpServletResponse arg1,
                                Model model) throws Exception{
    
    
        model.addAttribute("msg","第一个Spring MVC程序");
        return "welcome";
   }
}

@Controller注解来标注控制器类,并使用@RequestMapping注解标注在类名和方法名上来映射请求方法。在项目启动时,Spring就会扫描到此类,以及此类中标注了@RequestMapping注解的方法。由于标注在类上的@RequestMapping注解的value值为“/controll”,因此类中所有请求方法的路径都需要加上“/controll”。由于类中的handleRequest()方法的返回类型为String,而String类型的返回值又无法携带数据,因此需要通过参数Model对象的addAttribute()方法来添加数据信息。因为在配置文件的视图解析器中定义了视图文件的前缀和后缀名,所以handleRequest()方法只需返回视图名“welcome”即可,在访问此方法时,系统会自动访问“WEB(-?)INF/jsp/”路径下名称为welcome的jsp文件。

4.启动项目,测试应用

将项目发布到Tomcat服务器并启动,在浏览器中访问地址http://localhost:8080/chapter11_2/controll/annotationController。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45627039/article/details/131261425