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

网站上的视频直播是怎么做的呢竞价关键词排名软件

网站上的视频直播是怎么做的呢,竞价关键词排名软件,embed做网站公共部分,传奇类的网页游戏哪个好玩目录 springmvc处理请求映射路径 案例:访问 OrderController类的pirntUser方法报错:java.lang.IllegalStateException:映射不明确 核心错误信息 springmvc接收参数 一 ,常见的字符串和数字类型的参数接收方式 1.1 请求路径的…

目录

springmvc处理请求映射路径

案例:访问 OrderController类的pirntUser方法报错:java.lang.IllegalStateException:映射不明确

核心错误信息

springmvc接收参数

一 ,常见的字符串和数字类型的参数接收方式

1.1 请求路径的参数名和业务方法中的参数名保持一致的情况

1.2 请求路径参数名和业务方法中参数不同名的情况

二,请求路径传参是实体对象时

三,请求路径传参的实体对象中还有实体对象

四,接收数组类型的参数

五,接收集合类型的参数

六,接收json格式的参数

6.1,json转成实体对象

6.2,json转成集合对象

6.3,json转成集合对象,集合中存放的是实体对象

七,日期类型参数传递


springmvc处理请求映射路径

场景:在实际的应用开发中,需要写不同的模块,在这些模块中,不同的方法可能具有相同的映射路径如 订单模块,用户登录模块,他们在方法上映射路径都是/user。 这就会导致无法准确找到目标方法报错。


案例:访问 OrderController类的pirntUser方法报错:java.lang.IllegalStateException:映射不明确

UserController类

package controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
public class UserController {/*在Java的Spring MVC中,如果返回的字符串在浏览器中显示为乱码(如三个问号),通常是因为响应内容的字符编码设置不正确。设为utf-81 在@RequestMapping中指定produces属性 设置为utf-82 使用@RestController注解 默认使用utf-8编码*/@RequestMapping(value = "/user",produces = "text/plain;charset=utf-8")@ResponseBodypublic String printloginInfo(){System.out.println("打印登录用户信息。。。。");return "打印登录用户信息。。。。。";}
}

OrderController类

package controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class OrderController {@RequestMapping(value = "/user", produces = "text/plain;charset=utf-8")@ResponseBodypublic String pirntUser(){System.out.println("打印订单中顾客信息。。。。");return "正在打印订单中顾客信息....";}
}

测试:报500服务器内部错误!

核心错误信息

/*
原因:java.lang.IllegalStateException:映射不明确。无法映射“userController”方法
控制器。用户控制器#登录(字符串,String)
对于{[/user],生成[text/plain;charset=utf-8]}:已经存在'orderController'bean方法
*/
Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'userController' method 
controller.UserController#login(String, String)
to { [/user], produces [text/plain;charset=utf-8]}: There is already 'orderController' bean method

解决办法:在controller类上使用@RequestMapping("类路径"),进一步区分不同模块的方法

这里在OrderController类上,添加一级目录,进一步完善对方法的访问

注意:我把写在类上的@RequestMapping 称为 “一级目录”;写在方法上的称为“二级目录”

测试:

访问OrderController类的方法成功!

访问UserController类方法成功!


springmvc接收参数

一下案例,皆使用Apifox,模拟请求发送


一 ,常见的字符串和数字类型的参数接收方式

1.1 请求路径的参数名和业务方法中的参数名保持一致的情况

案例

测试结果


1.2 请求路径参数名和业务方法中参数不同名的情况

大家,请看,如果修改请求参数名,当请求参数与映射参数不一致时,就会报错!

测试


解决办法:使用@RequestParam 注解,写在参数上

@RequestParam:给映射参数写别名

测试

二,请求路径传参是实体对象时

场景1 :访问printUser1方法返回user对象

在这一个过程中,我出现的问题(可选):

1 一直无法将user对象转成json格式

1.1 添加json格式依赖

1.2 springmvc 消息转成器 配置类

1.3 在springmvc配置类中加载config所在包

1.4 在RequestMapping注解 要求user对象使用json格式

----------解决:springmvc工程 响应时,将实体类对象 转换成json格式数据-CSDN博客


User实体类

使用Apifox发送请求

//传递对象@RequestMapping(value = "/user2", produces = "application/json")public User printUser1(User user) {System.out.println(user);return user;}

测试


三,请求路径传参的实体对象中还有实体对象

    // 传递 对象嵌套@RequestMapping("/user3")public User printUser2(User user) {System.out.println(user);return user;}

测试


四,接收数组类型的参数

  // 传递数组@RequestMapping("/user4")public String printUser3(String[] name) {for (String s : name) {System.out.println(s);}return "success";}

测试


五,接收集合类型的参数

    //传递集合@RequestMapping("/user5")public String printUser4(@RequestParam List<String> name){for (String s : name) {System.out.println(s);}return "success";}

测试


六,接收json格式的参数

须知:客户端向服务器,发送数据都是以json格式传递的

如果要使用json格式接收请求参数要求:

1 引用json格式依赖

<!-- Jackson核心库 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.13.0</version></dependency><!-- Jackson数据绑定库 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.13.4.2</version></dependency>

2 使用@EnableWebMvc 注解,开启json 

3在controller类方法上使用@RequestBody注解

@RequestBody注解作用

1 将json数据实现对实体类对象的转换


6.1,json转成实体对象
//json格式传递对象@RequestMapping("/user6")public User printUser5(@RequestBody User user){System.out.println(user);return user;}

测试


6.2,json转成集合对象
//json格式传递集合@RequestMapping("/user7")public String printUser6(@RequestBody List<String> name){for (String s : name) {System.out.println(s);}return "success";}

测试


6.3,json转成集合对象,集合中存放的是实体对象
//json格式对象嵌套传递@RequestMapping("/user8")public User printUser7(@RequestBody User user) {System.out.println(user);return user;}


七,日期类型参数传递

当日期类型的格式是年/月/日这种时,只需要用Date类对象接收就可以了,

但是当格式是年-月-日这种时,就需要用注解@DateTimeFormat(pattern = "yyyy-MM-dd")来进行处理才不会报错。具体案例看下图:

总结

@DateTimeFormat注解作用:将传入的字符串参数转换为 Date 类型

按照指定格式输出 Date 对象,就得运用 SimpleDateFormat 类来进行格式化


    @RequestMapping("/user9")public String printUser8(Date date1,@DateTimeFormat(pattern = "yyyy-MM-dd")Date date2, @DateTimeFormat(pattern = "yyyy/MM/dd HH:mm:ss") Date date3) {System.out.println("date1"+date1);System.out.println("date2"+date2);System.out.println("date3"+date3);return "success"+date1+date2+date3;

测试

控制台输出:

http://www.dtcms.com/wzjs/383350.html

相关文章:

  • 让你的静态网站 做后台软文写作平台
  • 社交网站用户体验必应搜索引擎怎么样
  • 封面型网站首页怎么做宁德seo公司
  • 12306网站是哪个公司做的2021年关键词排名
  • 微店网站怎么做云巅seo
  • 个人网站建设免费主机百度网盘下载电脑版官方下载
  • 免费做二建题的网站德阳网站seo
  • python做网站视频教程搜索引擎的三个技巧
  • 泰州网站制作案例发稿媒体平台
  • 自己怎么做短视频网站百度销售
  • 奥林匹克做校服的网站巨量引擎广告投放
  • 莱州哪里有做网站的百度热搜电视剧
  • 深圳动力网站设计公司如何免费建立一个网站
  • 天津做网站找津坤科技专业海外网络专线
  • 制作网站建设策划方案优化大师怎么样
  • 网站备案是指什么ks刷粉网站推广马上刷
  • 网上做网站营销培训课程ppt
  • 镜像网站如何做排名哪里可以引流到精准客户呢
  • 云县网站建设 云县网网站产品怎么优化
  • 建设网站多长时间品牌宣传方式
  • 线上教育课程的网络营销方式湖南网站优化
  • 黄埔做网站公司小说搜索风云榜排名
  • 游戏直播网站怎么做的企业网站模板建站
  • 企业网站托管外包方式国际实时新闻
  • 福州营销网站建设模板百度产品大全
  • 珠海图远建设公司网站深圳seo专家
  • 如何看待政府网站群建设的重大意义宁波品牌网站推广优化公司
  • 做商城网站哪里买上海最新事件
  • 苏州学网站建设谷歌关键词优化怎么做
  • 做广告公司网站建设价格百度官网网站登录