Spring MVC与JAX-RS比较与分析
2010-08-04 00:00:00 来源:WEB开发网@Path是个JAX-RS注解,它将AccountResource声明为“根”JAX-RS资源。
@Context也是一个JAX-RS注解,要求注入特定于请求的UriInfo对象。
JAX-RS有“根”资源(标记为@Path)和子资源的概念。在上面的示例中,AccountResource就是个根资源,它会处理以 “/accounts/”开头的路径。AccountResource中的方法如getAccount()只需声明针对类型级别的相对路径即可。
@Path("/accounts/")
@Component
@Scope("prototype")
public class AccountResource {
@GET
@Path("{username}")
public Account getAccount(@PathParam("username") String username) {
}
}
访问路径“/accounts/{username}”(其中的username是路径参数,可以是某个账户的用户名)的请求将由getAccount()方法处理。
根资源由JAX-RS运行时(在本示例中是Spring)实例化,子资源则由应用本身实例化。比如说,对于“/accounts /{username}/portfolios/{portfolioName}”这样的请求,AccountResource(由路径的第一部分“ /accounts”标识)会创建一个子资源实例,请求会被代理给该实例:
@Path("/accounts/")
@Component
@Scope("prototype")
public class AccountResource {
@Path("{username}/portfolios/")
public PortfolioResource getPortfolioResource(@PathParam("username") String username) {
return new PortfolioResource(accountRepository, username, uriInfo);
}
}
- ››Spring源码学习-含有通配符路径解析(上)
- ››Spring MVC与JAX-RS比较与分析
- ››Spring 框架的设计理念与设计模式分析
- ››Spring Web Flow 2 中流管理的持久化
- ››JAXP 全面介绍,第 1 部分:XML 处理工具包使解析...
- ››JAXP 全部内容,第 2 部分:使用 Sun 的 XML 处理...
- ››Spring 事务管理高级应用难点剖析: 第 2 部分
- ››Spring 事务管理高级应用难点剖析: 第 3 部分
- ››Spring 事务管理高级应用难点剖析,第 1 部分
- ››Spring之@Autowired问题
- ››spring 框架使用初步
- ››Spring 与 EJB 比较
更多精彩
赞助商链接