SpringMVC注解

@RequestMapping用法:
    a. 用在controller方法上:
        标记url到请求方法的映射, 其实就是通过一段url地址, 找到对应需要执行的controller方法
    b. 用在controller类上:
        窄化请求映射: 其实就是在类上给url加一层目录, 防止url重名.
    c. 限定请求类型:
        请求类型: get, post, put, delete, option等
        如果没有限制请求类型, 不管get还是post都可以进入到这个方法
        如果限制请求类型, 则只有限定的请求类型才可以进入到这个方法执行
        @RequestMapping(value= "/list", method = RequestMethod.GET)

Controller方法返回值(需要知道如何指定页面的位置, 需要知道如何将数据返回给页面展示)
    a. 返回modelandView:
        可以借助于modelandview里面的方法, 指定页面的位置, 并且将数据放入这个对象, 可以返回到页面展示.
    b. 返回string:
        (1). controller方法返回string字符串, 那么这个字符串就是页面的位置, 数据可以借助于默认支持的参数model,
            将数据放入model中, 就可以返回给页面展示, model底层使用的是request域.
        (2). 请求转发:
            request域中的数据可以带到转发后的方法中, 浏览器中的url不发生改变
            在springMvc中,请求转发, controller方法必须返回string字符串,
            返回的字符串以forward:开头, 后面跟转发后方法的url地址
            例如: return "forward:/items/toEdit.action";
            请求转发可以把数据放入request域中也可以放入model中, 都可以带到转发后的方法中.
        (3). 重定向:
            request域中的数据不可以带到重定向后的方法中, 浏览器中的url发生改变
            controller方法必须返回string字符串, 返回的字符串以redirect:开头后面跟重定向的url地址
            如果向把数据带到重定向后的方法中, 可以把数据放入model中, 就可以带到重定向后的方法中了.
            例如: return "redirect:/items/toEdit.action";
    c. 返回void:
        一般情况不推荐使用:
             只有在ajax调用的时候适应, 因为ajax异步请求, 从哪个页面发送的请求, 响应就会直接返回到哪个页面.
             如果不是ajax请求, 使用返回void, 那么指定页面的位置就需要使用传统的请求转发或重定向写法, 这样就不走视图解析器, 需要写页面的完整路径.
         这样就破坏了springMvc设计的整体流程.

SpringMVC常用注解的规则(用法)的更多相关文章

  1. SpringMVC常用注解實例詳解3:@ResponseBody

    我的開發環境框架:        springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...

  2. SpringMVC常用注解實例詳解2:@ModelAttribute

    我的開發環境框架:        springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...

  3. 一 : springmvc常用注解

    springmvc常用注解详解1.@Controller在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层 ...

  4. 转:springmvc常用注解标签详解

    Spring5:@Autowired注解.@Resource注解和@Service注解 - IT·达人 - 博客园--这篇顺序渐进,讲得超级好--此人博客很不错http://www.cnblogs.c ...

  5. Spring 和 SpringMVC 常用注解和配置(@Autowired、@Resource、@Component、@Repository、@Service、@Controller的区别)

    Spring 常用注解 总结内容 一.Spring部分 1.声明bean的注解 2.注入bean的注解 3.java配置类相关注解 4.切面(AOP)相关注解 5.事务注解 6.@Bean的属性支持 ...

  6. springmvc常用注解与类型转换

    springmvc常用注解与类型转换 一:前置 spring -servlet.xml 注入 <!-- 启用spring mvc 注解 --> <context:annotation ...

  7. SpringMVC常用注解@Controller,@Service,@repository,@Component

    SpringMVC常用注解@Controller,@Service,@repository,@Component controller层使用@controller注解 @Controller 用于标记 ...

  8. SpringMVC 常用注解 详解

    SpringMVC 常用注解 详解 SpringMVC 常用注解 1.@RequestMapping                                      路径映射 2.@Requ ...

  9. SpringMVC常用注解,返回方式,路径匹配形式,验证

    常用注解元素 @Controller 标注在Bean的类定义处 @RequestMapping 真正让Bean具备 Spring MVC Controller 功能的是 @RequestMapping ...

随机推荐

  1. 用CSS来画空心三角形的方法

    画这里三角形的方法: 用CSS来实现:整个弹框的ID是#favoriteOptionMenus,对于#favoriteOptionMenus这个元素设置:before和:after的样式,让:befo ...

  2. Python3学习之路~4.3 装饰器

    定义:本质是函数,装饰其他函数就是为其他函数添加附加功能. 原则: 不能修改被装饰函数的源代码 不能修改被装饰函数的调用方式 实现装饰器知识储备: 函数即“变量” 高阶函数 把一个函数名当做实参传递给 ...

  3. Jmeter测试实践:文件下载接口

    一 Jmeter步骤 1.打开jmeter4.0,新建测试计划,添加线程组.根据实际情况配置线程属性. 2.添加HTTP请求.根据接口文档进行配置. Basic部分修改如下,Advanced部分保持默 ...

  4. Python3学习之路~2.10 修改haproxy配置文件

    需求: .查 输入:www.oldboy.org 获取当前backend下的所有记录 .新建 输入: arg = { 'bakend': 'www.oldboy.org', 'record':{ 's ...

  5. WebStrom2018注册码

    2RRJMBXW33-eyJsaWNlbnNlSWQiOiIyUlJKTUJYVzMzIiwibGljZW5zZWVOYW1lIjoi5b285bK4IHNvZnR3YXJlMiIsImFzc2lnb ...

  6. Openvpn配置文件详解

    一.vars配置文件 vars配置文件的主要内容如下: cat vars |grep -vE "^#|^$" KEY_DIR定义key生成的目录. KEY_SIZE定义生成私钥的大 ...

  7. Java知识点ArrayList

    ArrayList List<ApiSvcVersion> apiSvcVersionList = apiSvcVersionDao.getListByClientId(map1); // ...

  8. (转)以太坊(Ethereum)创世揭秘 以太坊(Ethereum)创世揭秘

    什么是以太坊(Ethereum) 以太坊(Ethereum)是一个基于区块链技术,允许任何人构建和使用去中心化应用的区块链平台.像比特币一样,以太坊是开源的,并由来自全世界的支持者们共同维护.与比特币 ...

  9. 【LeetCode每天一题】Longest Substring Without Repeating Characters(最长无重复的字串)

    Given a string, find the length of the longest substring without repeating characters. Example 1:    ...

  10. ubuntu 的远程命令行,老是不能支持联想

    首先发现没有source命令,非常奇怪,google发现是dash命令的问题. $ls -l `which sh` /bin/sh -> dash $sudo dpkg-reconfigure ...