ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

SpirngMVC使用注解之前和使用注解之后的对比

2021-04-14 23:36:44  阅读:141  来源: 互联网

标签:ModelAndView Controller mv 使用 msg 注解 public SpirngMVC


使用注解之前的配置

<?xml version="1.0" encoding="UTF-8"?>
<beans
        xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">

    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/" />
        <property name="suffix" value=".jsp" />
    </bean>
    <!--id是请求路径-->
    <bean id="/test" class="com.tv189.controller.HelloController" />
</beans>

外加一个类(实现了Controller接口)

public class HelloController implements Controller {
    @Override
    public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
        ModelAndView mv = new ModelAndView();
        mv.addObject("msg","你好,李焕英!");
        mv.setViewName("testindex");
        return mv;
    }
}

使用注解后的配置

<?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:mvc="http://www.springframework.org/schema/mvc"
        xmlns:context="http://www.springframework.org/schema/context"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">
        <context:component-scan base-package="com.tv189.controller" />
    <!--自动开启BeanNameUrlHandlerMapping,SimpleControllerHandlerAdapter
    mvc:annotation-driven 这个配置写上后会自动开启上面的两个组件
    并且自动注入-->
        <mvc:annotation-driven />
    <!--让springMVC不去处理静态文件 如:.css .js .html .mp3 .mp4 让这些文件不走下面的过滤-->
        <mvc:default-servlet-handler />
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver">
            <property name="suffix" value=".jsp" />
            <property name="prefix" value="/WEB-INF/jsp/" />
        </bean>
</beans>

类文件

@Controller
public class HelloController {

    @RequestMapping("/hello")
    public String hello(Model model){
        model.addAttribute("msg","Hello,springMVC");
        return "testindex";
    }
}

@Controller 相当于声明类实现了Controller类 并交给了spring管理
等价与
implements Controller +

@RequestMapping("/test") 等价于

这里可以看出在不使用注解时每写一个请求我们需要写一个实现Controller的类 并配置bean 如:

标签:ModelAndView,Controller,mv,使用,msg,注解,public,SpirngMVC
来源: https://www.cnblogs.com/yichenbusan/p/14660465.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有