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

如何建自己网站青岛最新消息

如何建自己网站,青岛最新消息,学生空间建设网站,微软网站开发技术目录 1. RequestMapping 注解介绍 2. RequestMapping 使用 3. RequestMapping与请求方式 3.1 RequestMapping 支持Get和Post类型的请求 3.2 RequestMapping 指定接收某种请求 3.3 GetMapping和PostMapping 4. 传参 4.1 通过查询字符串传参 4.2 在 Body 中传参 4.2.1 …

目录

1. @RequestMapping 注解介绍

2. @RequestMapping 使用

3. @RequestMapping与请求方式

3.1 @RequestMapping 支持Get和Post类型的请求

3.2 @RequestMapping 指定接收某种请求

3.3 @GetMapping和@PostMapping

4. 传参

4.1 通过查询字符串传参

4.2 在 Body 中传参

4.2.1 x-www-form-unlencoded

​编辑4.2.2 form-data

4.2.3 raw



1. @RequestMapping 注解介绍

@RequestMapping 是 Spring Web MVC 应⽤程序中最常被⽤到的注解之⼀,它是⽤来注册接⼝的
路由映射的.
表示服务收到请求时, 路径为 /user/m1 的请求就会调⽤ m1 这个⽅法的代码.
路由映射: 当用户访问⼀个 URL 时, 将⽤⼾的请求对应到程序中某个类的某个⽅法的过程就叫路由映射.
既然 @RequestMapping 已经可以达到我们的⽬的了, 我们为什么还要加 @RestController
呢?
Spring会对所有的类进⾏扫描, 如果类加了注解 @RestController , Spring才会去看这个类⾥⾯的⽅法有没有加 @RequestMapping 这个注解, 当然他的作⽤不⽌这⼀点, 后⾯再详细讲

2. @RequestMapping 使用

@RequestMapping 既可修饰,也可以修饰方法 ,当修饰类和⽅法时,访问的地址是类路径 + ⽅法路径.

如上图,类路径为 /user ,方法路径为 /m1 。

因此访问的地址为:http://127.0.0.1:8080/user/m1

【注意】

@RequestMapping 的URL 路径最前⾯加不加 / (斜杠)都可以, Spring程序启动时, 会进⾏判断, 如果前⾯没有加 / , Spring会拼接上⼀个 /

像上面这个例子就是路径不加斜杠

如果加上斜杠程序也能正常运行:


@RequestMapping 的URL路径也可以是多层路径, 最终访问时, 依然是 类路径 + 方法路径

访问的地址为:http://127.0.0.1:8080/user/m1/say/hi

3. @RequestMapping与请求方式

3.1 @RequestMapping 支持Get和Post类型的请求

@RequestMapping 支持 Get 请求还是支持 Post 请求?

我们使用浏览器访问 URL 时,发送的请求类型就是 Get 类型,使用fiddler抓包可以查看:

因此 @RequestMapping 肯定是支持 Get 类型的请求的,那么他支不支持 Post 请求呢?

此处需要使用 Postman 来构造 Post 请求:

使用 Postman 发送 Post 类型请求,可以正常返回 Hello world ,说明 @RequestMapping 也支持 Post 类型的请求。

3.2 @RequestMapping 指定接收某种请求

我们可以指定 @RequestMapping 来只接收一种请求:

以上代码指定了只有 Get 请求才能访问该路径

因此发送 Get 请求可以正常访问并响应:

如果发送 Post 请求则会出错:

用上述方法依此类推,可以单独支持8种类型的请求:

3.3 @GetMapping和@PostMapping

除了上述给 @RequestMapping 指定接收某种请求,还有两种注解可以指定接收 Get 和 Post 请求

@GetMapping 只支持 Get 请求,@PostMapping 只支持 Post 请求 :

使用Postman验证,m3只支持Get:

m3不支持Post:

m4只支持Post:

m4不支持Get:

4. 传参

4.1 通过查询字符串传参

URL的格式如下:

    @RequestMapping("/r2")public String r2(String keyword){return "接收参数:keyword:"+keyword;}

方法只能从()内的参数中获取到参数的值,而参数的值来自于请求时传入的参数:

传入多个参数:

    @RequestMapping("/r3")public String r3(String username,String password){return "username:"+username+"\npassword:"+password;}

请求也要传入对应的多个参数:

【注意】

传参时参数名要 一 一 对应,否则没有对应到的参数将自动赋值 null :

4.2 在 Body 中传参

使用查询字符串传参时,参数会显示在URL中:

如果不想让参数显示在URL中,我们也可以在 Body 传参。

4.2.1 x-www-form-unlencoded

此处使用的传参方式是 x-www-form-urlencoded :

在此处可以选择。

x-www-form-urlencoded 可以传入表单数据,

对应 Content-Type: application/x-www-from-urlencoded

传入 username 和 password :

此时参数就不会显示在URL上,而是在请求的 Body 里,使用 fiddler 抓包可以看到:

【注意】

① 在 Body 传参时,请求方法需要改为 Post ,否则服务端无法获取到参数:

② Integer 和 int 作为参数的区别

方法 r4 使用 Integer 接收参数,方法 r5 使用 int 接收参数:

相同点

① 都能正常传入数字

Integer:

int :

② 传入非数字值会出错:

Integer:原因:字符串“aaa”不能复制给Integer类型

int :原因:字符串“aaa”不能赋值给int类型

不同点

Integer 类型可以不传值,而 int 类型必须传值。

原因:当请求中没有给参数传值时,后端方法中的参数会自动给参数赋值null,Integer 是包装类型,可以赋值 null ,而 int 类型不能赋值 null。

Integer:

int :

4.2.2 form-data

表单提交的数据, 在 form 标签中加上 enctyped="multipart/form-data" , 通常⽤于提交图片/⽂件. 对应 Content-Type: multipart/form-data

此处可以选择传入表单,或者文件:

4.2.3 raw

可以上传任意格式的⽂本,可以上传text、json、xml、html


如果哪里有疑问的话欢迎来评论区指出和讨论,如果觉得文章有价值的话就请给我点个关注还有免费的收藏和赞吧,谢谢大家!

http://www.yidumall.com/news/43256.html

相关文章:

  • 福建省晋江市建设局网站2023年时政热点事件
  • 学做网站用到哪些知识网址安全检测中心
  • 网站域名费会计分录怎么做百度云电脑网页版入口
  • 自己的主机做网站服务器zoho crm
  • 无代码开发平台什么意思seo外包网站
  • 海南网站优化模板建站网页
  • 手机网站域名怎么解析seo赚钱暴利
  • 做二手的网站都有哪些亚马逊开店流程及费用
  • 自己做网站做淘宝客seo的主要内容
  • 自建站外贸平台有哪些比较好网络广告有哪些形式
  • 网站建设所需资料及费用长沙服务好的网络营销
  • 成都网络推广哪家公司好真人seo点击平台
  • 网站空间文件夹营销策划公司名称
  • 柳城网站开发qq引流推广软件免费
  • 网站上面的内容里面放照片怎么做免费b2b平台推广
  • 传业做微采商城网站网络平台怎么推广
  • 自学网网站推广普通话手抄报内容
  • 营销型网站建设案例分析爱上链外链购买交易
  • windows wordpress资源网站优化排名软件公司
  • 寻找大连网站建设网站如何快速收录
  • 怎么做网站首页线上产品推广方案
  • 做的网站可以转给其他公司吗百度seo搜索营销新视角
  • 古建设工程造价管理协会网站站长统计免费下载
  • 网站怎么做速排营销推广模式有哪些
  • 网页浏览器字体大小设置seo关键词使用
  • 如何设置网站标题青岛seo服务哪家好
  • 广东网站建设服务商网络营销策略的概念
  • 今年刚做电商网站慧有生意吗长沙网站推广服务公司
  • 网站2个页面做首页口碑营销是什么意思
  • 网站开发有哪些竞赛北京网络seo