`
yanwt
  • 浏览: 98880 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring3 REST中的@

阅读更多
本文转自http://www.javabloger.com/article/spring3-rest-annotation.html

@RequestMapping @RequestParam @PathVariable @ModelAttributes @SessionAttributes @CookieValue @RequestHeader 都是Spring MVC REST中的注释方法,这几种注释方法的用法如下:

1#Controller 示例
URL示例: POST /users/query?userId=1234

@Controller
public class  JavaBlogerController {
    @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/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.11)
Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.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句话需要翻译一下
<%@taglib 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-data-rest-angular例子

    3. **数据库连接**: 在Spring Boot项目中,可以使用`spring.datasource.*`配置属性来设置数据库连接。Spring Boot支持多种数据库,如MySQL、PostgreSQL等。通常,我们使用JPA(Java Persistence API)和Hibernate...

    spring cxf rest demo

    在这个项目中,开发者可以学习到如何利用CXF作为服务端的REST服务提供者,以及Spring如何帮助管理和配置这些服务。 Apache CXF是一个开源的Java框架,它提供了创建Web服务的能力,包括SOAP和RESTful服务。CXF支持...

    Spring3.0 rest 实例

    **Spring 3.0 REST 实例详解** 在现代Web开发中,REST(Representational State Transfer,表述性状态转移)已经成为构建API的首选架构风格。Spring框架,作为一个强大的Java企业级应用开发框架,从3.0版本开始就...

    Spring MVC REST Demo

    "Spring MVC REST Demo"是一个示例项目,旨在展示如何在Spring MVC框架中实现RESTful Web服务。下面将详细讨论Spring MVC与RESTful API的结合,以及如何创建和测试此类服务。 首先,Spring MVC是Spring框架的一部分...

    spring mvc rest基础学习demo

    在"spring mvc rest基础学习demo"中,我们将深入探讨如何使用Spring MVC构建RESTful API。 REST(Representational State Transfer,表现层状态转移)是一种网络应用程序的设计风格和开发方式,基于HTTP协议,以...

    Spring REST Docs API(Spring REST Docs 开发文档).CHM

    Spring REST Docs。 官网 Spring REST Docs API。 Spring REST Docs 开发文档。

    spring mvc rest 小例子

    在这个小例子中,我们将探讨如何使用Spring MVC来实现REST接口。 首先,让我们理解Spring MVC的基本架构。Spring MVC通过DispatcherServlet作为前端控制器,接收HTTP请求,然后根据请求映射找到相应的Controller...

    rest+spring+hibernate

    "rest+spring+hibernate"这个主题结合了这三个关键技术,主要探讨如何在Spring框架中实现RESTful API,并利用Hibernate进行数据访问。 1. **RESTful API设计**:REST原则强调资源的表述和状态转移,通过HTTP动词...

    Rest简介及Spring实现

    了解REST和Spring中的REST服务实现是现代Web开发的重要组成部分。通过REST,我们可以构建高效、可扩展的API,方便客户端进行数据交互。Spring框架提供了强大的工具,简化了REST服务的开发过程,使开发者能够快速、...

    使用Spring MVC创建REST服务简单例子

    本教程将通过一个简单的例子,讲解如何利用Spring MVC创建REST服务。 首先,我们需要在项目中引入Spring MVC的相关依赖。通常,这涉及到在Maven或Gradle的配置文件中添加Spring Web和Spring MVC的依赖。例如,如果...

    Spring3.0实现REST实例

    在Spring 3.0中,我们可以使用以下技术实现REST服务: **1. @RestController注解:** 这是Spring MVC提供的一个新注解,它将@Controller和@ResponseBody合并在一起,表明控制器方法的返回值将直接转换为HTTP响应体...

    Spring @MVC REST 实例以及 (同一资源,多种展现:xml,json,html)

    该实例展示了 spring3 REST 的使用方法,以及同一种内容,多种不同方式展示的实现,例如同一 User 信息,可以展示为:xml,json,html三种不同的格式。可以参考这篇文章:http://badqiu.javaeye.com/blog/552806

    Java_学习如何使用Spring Data REST使用基于REST的超媒体数据持久化.zip

    在Spring Boot项目中,只需要引入Spring Data JPA和Spring Data REST依赖,然后配置实体类、Repository接口,Spring Data REST就会自动启动。你可以通过`@RepositoryRestResource`注解来定制资源的暴露行为。 2. *...

    Building a Rest API with Spring

    3. 为REST API添加Spring Security:这部分详细说明了为REST API集成Spring Security的过程,包括了web.xml中的Spring Security配置、安全配置、认证入口点、登录表单的配置、认证状态的正确返回码以及认证失败时的...

    apache wink集成spring 开发rest服务

    通过上述知识点,我们可以理解如何在Spring环境中集成Apache Wink,以创建和管理REST服务。提供的源码和可执行文件可能包含了具体的示例项目,供开发者学习和参考。通过深入研究这些材料,开发者可以更好地掌握Wink...

    基于spring的REST服务

    介绍restlet如何整合spring框架进行开发。Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的,广泛的应用于应用项目中。 具体教程可以查看http://www.lifeba.org/arch/restlet_spring_3.html。

    Spring Data REST简化RESTful开发.docx

    在实际开发中,Spring Data REST 还允许我们自定义响应格式、资源链接、权限控制等,以满足特定的应用场景需求。因此,对于构建 RESTful API 的项目,Spring Data REST 是一个非常实用且高效的工具。

    Apache CXF + Spring3 + REST + JSON配置

    在"Apache CXF + Spring3 + REST + JSON配置"中,我们主要探讨如何利用Apache CXF和Spring 3框架来构建RESTful服务,并使用JSON作为数据交换格式。以下是一些关键知识点: 1. **Spring 3集成CXF**: - 首先,你...

    spring-rest.rar_DEMO_employeeDS.java_rest spring mvc_spring mvc_

    在本示例中,我们将深入探讨如何利用Spring MVC框架构建RESTful API,主要涉及`employeeDS.java`这个可能的数据服务类以及与`rest_spring_mvc`、`spring_mvc`和`spring_rest`相关的概念。`spring-rest.rar`是一个...

Global site tag (gtag.js) - Google Analytics