`
daigong
  • 浏览: 114751 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

spring rest 中的 注解使用

阅读更多
[url]http://hi.baidu.com/china8jie/blog/item/492b367f09d5ac052a388a62.html
[/url]

@RequestMapping @RequestParam @PathVariable @ModelAttributes @SessionAttributes @CookieValue @RequestHeader 都是Spring MVC REST中的注释方法,这几种注释方法的用法如下:
1#Controller 示例
URL示例: POST /users/query?userId=1234


@Controller
public class <SPAN class=t_tag onclick=tagshow(event) href="tag.php?name=Java">Java</SPAN>BlogerController {
    @Autowired
    JavaBlogerService serviceLayer;
    @RequestMapping
    public String delete(@RequestParam String userId ){
    serviceLayer.query (userId);
    return "redirect:list";
    }
}
2#CookieValue 示例


@RequestMapping ("/userList")
    public String delete(@CookieValue("JSESSIONID") String sessionId ){
    }
注释表明,CookieValue方法的参数可以绑定到HTTP的Cookie。支持在Servlet和Portlet环境注明处理方法。

3#RequestHeader示例
显示结果
User-Agent: Mozilla/0 (Windows; U; Windows NT 1; en-GB; rv:9.0.11)
Gecko/2009060215 Firefox/0.11 (.NET CLR 30729)
Accept-Language: en-gb,en;q=0.5
Accept-Encoding: gzip,deflate
Keep-Alive: 300


@RequestMapping("/showJavaBlogerInfo")
public void showHeadInfo(
                    @RequestHeader("User-Agent"),String userAgent,
                    @RequestHeader("Accept-Encoding"),String encoding,
                    @RequestHeader("Keep-Alive"),long keepAlive, ){
                    }
4#HiddenHttpMethodFilter 示例
·Allows HTML browsers to emulate PUT and DELETE requests HTML forms only support GET/POST natively
·Special hidden parameter determines RequestMethod

上面2句话需要翻译一下
<[email=%@taglib]%@taglib[/email] prefix="form" uri="http://www.springframework.org/tags/form" %>
<form:form method="delete">
    <input value="Delete" type="submit">
</form:form>


@RequestMapping (metthod=RequestMethod.DELETE)
public void delete (@RequestParam String userId) {
        System.out.println(userId);
    }
5#/** 分页信息装载 */ 示例


@RequestMapping(value = "/page/{pageNo}", method = RequestMethod.GET)
public String pageLoad(@PathVariable int pageNo) {
       String mapping = "mainPage";
      
        System.out.println(pageNo);
    return mapping;
    }
6#SessionAttributes 示例


@Controller
@SessionAttributes( "currentUser " )
public   class GreetingController {
@RequestMapping
public   void hello(@ModelAttribute( "currentUser " ) User user) {
   // user.sayHello()
}
//
}
使用@ModelAttribute 需要访问 Session 属性的 controller 上加上 @SessionAttributes,然后在 action 需要的 User 参数上加上 @ModelAttribute,并保证两者的属性名称一致。SpringMVC 就会自动将 @SessionAttributes 定义的属性注入到 ModelMap 对象,在 setup action 的参数列表时,去 ModelMap 中取到这样的对象,再添加到参数列表。只要我们不去调用 SessionStatus 的 setComplete() 方法,这个对象就会一直保留在 Session 中,从而实现 Session 信息的共享。

分享到:
评论

相关推荐

    spring+mybatis+rest全注解demo

    spring+mybatis+rest全注解demo

    Spring高级之注解驱动开发视频教程

    系统的学习Spring框架中各个部分,掌握Spring中一些高级特性的使用。 l Spring IoC n 设计模式-工厂模式 n 基础应用-入门案例 n 基础应用-常用注解使用场景介绍及入门 n 高级特性-自定义BeanNameGenerator n 高级...

    华为技术专家整理Spring Boot 注解大全.docx

    注解 (annotations) 列表 @SpringBootApplication ...@RestController 注解是 @Controller 和 @ResponseBody 的合集, 表示这是个控制器 bean, 并且是将函数的返回值直 接填入 HTTP 响应体中, 是 REST 风格的控制器。

    spring-rest-template:用于创建Spring Rest Web服务的样板项目

    用于创建Spring Rest Web服务的样板项目(Java注释)。 该项目包含开发基于Spring的Rest Web服务的所有基本要求。 这项工作正在进行中,我将继续使用其他功能(例如缓存,安全性,身份验证/授权等)来更新项目。

    Spring3MVC注解教程.ppt

    使用Spring的Servlet API代理类 使用IO对象作为入参 其他类型的参数 HttpMessageConverter HttpMessageConverter实现类 使用@RequestBody/@ResponseBody 使用HttpEntity&lt;T&gt;/ResponseEntity&lt;T&gt; 输出XML和JSON ...

    Spring3_MVC注解

    spring3 mvc 注解 支持REST风格的URL 添加更多注解,可完全注解驱动 引入HTTP输入输出转换器(HttpMessageConverter) 和数据转换、格式化、验证框架无缝集成 对静态资源处理提供特殊支持 更加灵活的控制器方法签名...

    Spring4.0从入门到精通springmvc全注解

    例子参考了这位地址 http://www.blogjava.net/pengo/archive/2010/07/03/325164.html 但里面的jar包与目录结构发生了变化,本mvc全注解注意看那个click的链接是一个类似rest风格的例子

    Spring MVC3 REST实例

    使用Spring MVC3基于注解的形式实现的REST小例子 部署运行: 1. 将工程导入eclipse 2. 添加tomcat属性 工程(右键)——&gt; tomcat project——&gt; update context 3. 启动tomcat 4. 在浏览器中输入...

    Spring3_MVC注解教程

    Spring3_MVC注解教程 支持REST风格的URL 添加更多注解,可完全注解驱动 引入HTTP输入输出转换器(HttpMessageConverter) 和数据转换、格式化、验证框架无缝集成 对静态资源处理提供特殊支持 更加灵活的控制器方法...

    S2SH+rest注解配置实例

    自己学习过程中写的一个整合以上技术的小例子,只有一个向数据库插入的操作,结构简单明了,SSH+rest+spring全注解(包括对beanname命名策略配置)

    Spring5.0官方中文文档

    使用注解进行编程 函数式编程 使用 REST 端点执行反应式编程 HTTP/2 支持 Kotlin 和 Spring WebFlux 使用 Lambda 表达式注册 bean Spring WebMVC 支持最新的 API 使用 JUnit 5 执行条件和并发测试 使用 Spring ...

    springMVC4-rest-jackson-jsonview-annotation.zip

    我们也可以在Spring REST Client使用@JsonView注解。Spring提供了MappingJacksonValue 包装POJO和序列化视图设置,在发送到web服务器短的时候,我们可以使用RestTemplate来过滤JSON。现在一步一步呈现完整的示例。

    Spring MVC – Easy REST-Based JSON Services with @ResponseBody

    NULL 博文链接:https://nethub2.iteye.com/blog/2329387

    Spring攻略(第二版 中文高清版).part1

    6.2 在你的Servlet和过滤器中使用Spring 214 6.2.1 问题 214 6.2.2 解决方案 215 6.2.3 工作原理 215 6.3 将Spring与Struts 1.x集成 220 6.3.1 问题 220 6.3.2 解决方案 220 6.3.3 工作原理 220 6.4...

    Spring+3.x企业应用开发实战光盘源码(全)

     第4章:讲解如何在Spring配置文件中使用Spring 3.0的Schema格式配置Bean的内容,并对各个配置项的意义进行了深入的说明。  第5章:对Spring容器进行解构,从内部探究Spring容器的体系结构和运行流程。此外,我们...

    Spring Data JPA从入门到精通

    内容包括整体认识JPA、JPA基础查询方法、定义查询方法、注解式查询方法、@Entity实例里面常用注解详解、JpaRepository扩展详解、JPA的MVC扩展REST支持、DataSource的配置、乐观锁、SpEL表达式在SpringData里面的应用...

    Spring攻略(第二版 中文高清版).part2

    6.2 在你的Servlet和过滤器中使用Spring 214 6.2.1 问题 214 6.2.2 解决方案 215 6.2.3 工作原理 215 6.3 将Spring与Struts 1.x集成 220 6.3.1 问题 220 6.3.2 解决方案 220 6.3.3 工作原理 220 6.4...

    SpringMVC-REST风格和SSM整合(注解版)彩色PPT版本.pptx

    1、REST简介 REST简介 REST风格简介 2、RESTful入门案例 入门案例 请求方法设定 请求路径参数 3、REST快速开发 RESTful快速开发(标准开发) @RestController 标准请求动作映射(4种) 4、案例:基于RESTful页面...

    Spring.3.x企业应用开发实战(完整版).part2

    12.2 在Spring中使用Hibernate 12.2.1 配置SessionFactory 12.2.2 使用HibernateTemplate 12.2.3 处理LOB类型数据 12.2.4 添加Hibernate事件监听器 12.2.5 使用原生Hibernate API 12.2.6 使用注解配置 12.2.7 事务...

    spring boot 实践学习案例,与其它组件整合

    - Spring Boot 数据库操作,包括SpringJDBC、JPA、Mybatis注解版 & XML版、MongoDB。其中,每个版本都有其对应的多数据源解决方案。 - springboot-caches - Spring Boot 缓存,包括redis、ehcache、spring-cache...

Global site tag (gtag.js) - Google Analytics