加载中…
个人资料
ad_long
ad_long
  • 博客等级:
  • 博客积分:0
  • 博客访问:11,345
  • 关注人气:44
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Jerseyrest服务

(2022-03-21 11:58:58)
标签:

jersey

restful

分类: java
1.REST
即 Representational State Transfer.
(资源) 表现层状态转化. 是目前最流行的一种互联网软件架构. 它结构清晰, 符合标准, 易于理解, 扩展方便,所以正得到越来越多网站的采用

2.资源(Resources)
网络上的一个实体,或者说是网络上的一个具体信息. 它可以是一段文本, 一张图片, 一首歌曲, 一种服务,总之就是一个具体的存在. 
可以用一个URI(统一资源定位符) 指向它,每种资源对应一个特定的 URI. 获取这个资源,访问它的URI就可以,因此 URI 即为每一个资源的独一无二的识别符. 

3.表现层(Representation)
把资源具体呈现出来的形式,叫做它的表现层(Representation). 比如,文本可以用 txt 格式表现,也可以用 HTML 格式, XML 格式, JSON 格式表现,甚至可以采用二进制格式. 

4.状态转化(State Transfer)
每发出一个请求,就代表了客户端和服务器的一次交互过程. HTTP协议,是一个无状态协议,即所有的状态都保存在服务器端. 
因此,如果客户端想要操作服务器,必须通过某种手段,让服务器端发生“状态转化”(State Transfer).而这种转化是建立在表现层之上的,所以就是 “表现层状态转化”. 

具体说,就是 HTTP 协议里面,四个表示操作方式的动词: 
GET 用来获取资源
POST 用来新建资源
PUT 用来更新资源
DELETE 用来删除资源

5.Jersey
Jersey是一个REST框架,既然是REST框架,那自然提供了REST服务相关的一切东西
Jersey的一大特点就是,基于Jersey的REST应用,可以运行在Servlet环境下面,也可以脱离该环境

pom.xml
  org.springframework.boot
  spring-boot-starter-jersey

config.jersey
@Component
public class JerseyConfig extends ResourceConfig {
 
  public JerseyConfig() {
     // 类注册的方式
     // register(Demo.class);
 
    // 包注册的方式
    packages("com.demo.web");
  }
}
项目打为jar包启动时,不能使用包注册的方式,否则会报FileNotFound异常

6.Jersey 注解
@GET get请求 ajax格式是 {type: "get", "contentId": id}

@POST post请求 ajax格式是 {type: "post", "contentId": id}

@PUT put请求 目前浏览器不直接支持, ajax格式是 {type: "post", "contentId": id, "_method": "put"}

@DELETE delete请求 目前浏览器不直接支持, ajax格式是 {type: "post", "contentId": id, "_method": "delete"}

@Path
uri路径
定义资源的访问路径,client通过这个路径访问资源。比如:@Path("user")
 
@Produces
返回指定返回MIME格式
资源按照那种数据格式返回,可取的值有:MediaType.APPLICATION_XXX。比如:@Produces(MediaType.APPLICATION_XML)
 
@Consumes
接收入参接受指定的MIME格式
只有符合这个参数设置的请求再能访问到这个资源。比如@Consumes("application/x-www-form-urlencoded")
 
@PathParam
uri路径参数
写在方法的参数中,获得请求路径参数。比如:@PathParam("username")  String userName

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有