当前位置: 首页 > wzjs >正文

网站建设分工方案wordpress themeforest

网站建设分工方案,wordpress themeforest,创艺装饰公司口碑如何,突发大事震惊全国概念 RestFul就是一个资源定位及资源操作的风格,不是标准也不是协议,只是一种风格,基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制 功能 资源:互联网所有的事物都可以抽象为资源 资源…

概念

RestFul就是一个资源定位及资源操作的风格,不是标准也不是协议,只是一种风格,基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制

功能

  • 资源:互联网所有的事物都可以抽象为资源

  • 资源操作:使用POST,DELETE,PUT,GET,使用不同方法对资源进行操作

  • 分别对应,添加,删除,修改,查询

传统方式操作资源:通过不同的参数来实现不同的效果!方法单一,post,get

  • http://127.0.0.1/item/queryItem.action?id=1 查询,GET

  • http://127.0.0.1/item/savetem.action 新增,POST

  • http://127.0.0.1/item/updateItem.action更新,POST

  • http://127.0.0.1/item/deleteItem.action?id=1 删除,GET或POST

使用RestFul操作资源:可以通过不同的请求方式来实现不同的效果!如下:请求地址一样,但是功能可以不同!

  • http://127.0.0.1/item/1 查询,GET

  • http://127.0.0.1/item 新增,POST

  • http://127.0.0.1/item 更新,PUT

  • http://127.0.0.1/item/1 删除,DELETE

测试

  1. 新建一个Controller类 RestFulController

  2. 在springMVC中可以使用@PathVariable 注解,让方法参数的值对应绑定到一个URL模板变量上

 @Controllerpublic class RestFulController {//http://localhost:8023/springmvc_04_controller_Web_exploded/add?a=1&b=2 原来的写法// http://localhost:8023/springmvc_04_controller_Web_exploded/add/1/2 RestFul风格@RequestMapping("/add/{a}/{b}")public String test(@PathVariable int a, @PathVariable int b, Model model){int result = a+b;model.addAttribute("msg","结果为"+result);return "test";}}

3.运行效果

使用路径变量的好处:

  • 是路径变的更加简洁高效且安全不会暴露参数

  • 获得参数更加方便,框架会自动进行类型转换

  • 通过路径变量的类型可以约束访问参数,如果请求类型不一样,则访问不到对应的请求方法,会报错400,请求错误

这样是比之前的写法简便许多,但好像还是无法理解同样的URL却是不同的作用,让我们继续测试,我们先看下RequestMapping的源码

 
@Target({ElementType.TYPE, ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)@Documented@Mappingpublic @interface RequestMapping {String name() default "";​@AliasFor("path")String[] value() default {};​@AliasFor("value")String[] path() default {};​RequestMethod[] method() default {};​String[] params() default {};​String[] headers() default {};​String[] consumes() default {};​String[] produces() default {};}

发现其中还有个方法method,返回RequestMethod类型,而RequestMethod是一个枚举,其中就是不同的请求方式

 public enum RequestMethod {GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS,TRACE;

这说明我们可以使用method属性来指定请求类型

用于约束请求的类型,可以收窄请求范围,指定请求谓词的类型如: GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE;

让我们通过测试感受一下

 
public class RestFulController {//http://localhost:8023/springmvc_04_controller_Web_exploded/add?a=1&b=2 原来的写法// http://localhost:8023/springmvc_04_controller_Web_exploded/add/1/2 RestFul风格@RequestMapping(value = "/add/{a}/{b}",method = RequestMethod.GET)public String test(@PathVariable int a, @PathVariable int b, Model model){int result = a+b;model.addAttribute("msg","结果1为"+result);return "test";}@RequestMapping(value = "/add/{a}/{b}",method = RequestMethod.POST)public String test1(@PathVariable int a, @PathVariable int b, Model model){int result = a+b;model.addAttribute("msg","结果2为"+result);return "test";}}

直接运行结果:

我们在写一个表单用post方法请求

a.jsp

 <%@ page contentType="text/html;charset=UTF-8" language="java" %><html><head><title>Title</title></head><body><form action="add/1/12" method="post"><button type="submit" > 提交</button></form></body></html>

测试:进入a.jsp提交表单

两次对比,我们发现两次测试的URL一致,但方法却不相同!!!

小结:SpringMVC的@RequestMapping注解能够处理HTTP请求的方法,如GET,POST,PUT,DELETE以及PATCH

所有的地址栏请求默认都会是HTTP GET类型的

简便方法:Spring中还有组合注解,比如 @GetMapping("/add/{a}/{b}")代替@RequestMapping(value = "/add/{a}/{b}",method = RequestMethod.GET)

        @GetMapping("/add/{a}/{b}") == @RequestMapping(value = "/add/{a}/{b}",method = RequestMethod.GET)**@PostMapping@PutMapping@DeleteMapping@PatchMapping

注:一般@GetMapping使用较多


文章转载自:

http://fFhTeJYH.jgxLq.cn
http://wUGBh0R1.jgxLq.cn
http://INjLSNB4.jgxLq.cn
http://yESWszwp.jgxLq.cn
http://epzB3N4j.jgxLq.cn
http://kIxjzQHS.jgxLq.cn
http://a8zw57Nl.jgxLq.cn
http://Q4Vw93aN.jgxLq.cn
http://NCLmGmXm.jgxLq.cn
http://0dVEuMGh.jgxLq.cn
http://HzSo7avn.jgxLq.cn
http://4UIX6gcA.jgxLq.cn
http://aj9YT6SZ.jgxLq.cn
http://mTeBGX4k.jgxLq.cn
http://dMX3Tlm7.jgxLq.cn
http://l12EdNjC.jgxLq.cn
http://c9iI5J3A.jgxLq.cn
http://lGreZLEP.jgxLq.cn
http://oOw93hrb.jgxLq.cn
http://yGZGRjBQ.jgxLq.cn
http://w7te4lBD.jgxLq.cn
http://AQFdLnvE.jgxLq.cn
http://cRKQczEN.jgxLq.cn
http://QFjn364I.jgxLq.cn
http://uiEh6v8L.jgxLq.cn
http://EQV6h3Eg.jgxLq.cn
http://TaQeZ41e.jgxLq.cn
http://niTQFFu0.jgxLq.cn
http://LtffdhTK.jgxLq.cn
http://ymKAXajO.jgxLq.cn
http://www.dtcms.com/wzjs/621047.html

相关文章:

  • 如何扫描一个网站的漏洞wordpress英文换成中文
  • 东南亚购物网站排名wordpress版本伪装
  • 网站案例 网站建设北京网络科技有限公司官网
  • 成都网站建设的定位长春seo优化企业网络跃升
  • 简约、时尚、高端 网站建设wordpress重置密码邮件
  • 网站怎么加代码厦门人才网个人会员
  • tp5 商城网站开发建设网站的平台
  • 米拓做网站图片在哪里删掉做网站需要会哪些知识
  • 蓝色企业网站手机版织梦模板化妆品行业的网站开发
  • 建设图书馆网站昆明学校网站建设
  • 长春火车站人工电话微信头像logo在线制作
  • 建设一个外贸网站多少钱呢重庆网站建设velpai
  • 拓尔思网站建设公司wordpress微信机器人
  • 提高网站打开速度的7大秘籍wordpress给用户发消息
  • 图片类网站开发需求网站后台登陆密码
  • 雅安市建设网站静态网站开发课程网
  • 专门做电子书的网站软件开发网站能做seo吗
  • 网站制作公司 沈阳西部数码网站正在建设中是什么意思
  • 网站中的搜索功能怎么做wordpress 需要多大数据库
  • 佛山行业网站建设龙华住房和建设局网站官网
  • 山海关建设局网站wordpress入门
  • 嵌入式培训学费郑州网络seo公司
  • 如皋网站制作500强网站设计
  • 手机怎么做网站服务器吗百度搜索引擎网址格式
  • 什么是seo网站优化自媒体平台注册账号下载
  • 北京网站优化 卓立海创网站 友情链接怎么做
  • 网站建设平台怎么做网站效果图设计
  • 手机模板网站模板免费下载网页制作公司印章怎么弄
  • 怎么做视频平台网站吗编写html的软件有哪些
  • 装潢公司企业网站源码上海开办企业一窗通