resultful

restful
pc端网页
jsp+servlet
ajax+json
移动端网页
ajax+json
android
java(socke,http)+json
c/s
ios
object-c+json
c/s
wp
.net+json
返回json的servlet(接口)
目前,前端碎片化严重,前端已经多个平台组成,大大加大了后台人员的作用量,任何数据都需要做两倍的动作,一个是把数据转成json提供给移动端网页或者移动端客户端。另一个还需要自己在去修改pc网页的html变成jsp。
前后端分离
字面意思就是后端只需要操作数据库,前端只需要书写前端页面,两个程序员之间互相不干扰
具体实现,后台人员只需要提供json,前端各个平台都有类似于(ajax)的请求方式请求到我们的servlet,我们的servlet返回json接口
优点
各个部门工作更加细化
统一了前端和后端数据渲染的方式
接口(interface)
调用者
子类1
子类2
子类3
接口人(包工头)
盖房子
瓦匠
木工
水泥工
数据库
restful是一个针对接口路径的定义的规范
特点
它将服务端的信息和功能等所有事物统称为资源,客户端的请求实际就是对资源进行操作
每一个资源都会对应一个独一无二的url 
客户端通过HTTP的GET、POST、PUT、DELETE请求方法对资源进行查询、创建、修改、删除操作
客户端与服务端的交互必须是无状态的
http就是一种无状态的短连接网络通讯方式
每个http请求都是独立的
socket是一种有状态的长连接请求方式
即时通讯
完整的restful包括
1请求协议http
2域名或者ip+端口
3 api  ,api子路径存放所有的接口
4版本号 ../test/api/v1
5资源,restful并把被操作的对象称之为资源,大部分情况指的是数据库,只能出现名字,不能出现动词
6http动词  ,表示对路径中名词指向的资源做增删改查中什么样的动作
get ,获取数据
post 新增数据
put  修改所有的字段
patch   修改其中部分字段
delete  删除数据
7参数
url?key=value
过滤性的信息
requestbody{ key=value}
新增或者提交数据
路径中携带可变参数
查询的条件
允许冗余,意思就是多个路径实现同一种功能提供给前端进行使用
8响应码,请求完毕需要返回响应码
9如果接口中存在代码上的异常,需要把异常原因进行捕获告知客户端
10返回的结果
get
对象
对象列表
post
返回插入成功的数据
11建议使用json格式进行数据返回(xml也有人在用)
接口返回的json的格式的规范
建议完整格式
有数据
{
data:{username:pfdu,age:10,id:2},
mes:"查询成功",
code:1
}
无数据
{
data:{},
mes:"没有查询对应的数据",
code:0
}
代码中实现restful
表单单实现restful
1添加一个springmvc提供的过滤器HiddenMethodFilter,转换请求方式
2form表单请求方式指定为post,添加一个hidden类型的input,name是_method,值是真正想要执行的请求方式
ajax中实现
直接使用不同的动词
模仿from
type:post
data:“_method=delete”
restful在springmvc
1@RequestMapping
path表示路径,method={RequestMethos.DELETE}
使用在类之上,设置统一的上一层级目录
@GetMappring  @PostMapping @DelteteMappring
jackson+@ResponseBody
1导包<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.9</version>
</dependency>
2开启注解<mvc:annotation-driven />
3@RequestMapping("/jackson")
public @ResponseBody Data<News> jackson() {return  data;
}
4ajax中直接获取到的就是一个js对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值