Spring阶段常见异常

ApplicationContext springContext = new ClassPathXmlApplicationContext("application.xml");
Person p4 = (Person) springContext.getBean(Person.class);

1、Exception in thread "main" org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'com.Person' available: expected single matching bean but found 4: p1,p2,staticP3,instP4

错误原因:按照class属性获取容器中组件,容器中有多个同类型组件,报异常

2、Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.Person‘ available

错误原因:在容器中没有注册该组件

 

3、浏览器显示400,一定是url的请求参数格式有问题(和服务器要求的不一样)

例如

@RestController
@RequestMapping("test")
public class Homework {
    //注解里限定只处理请求参数包含username和password的请求
    @RequestMapping(value = "limit", params = {"username", "password"})
    public ResultVo limit() {
        return ResultVo.resultOk();
    }
}

结果实际发送请求不是  http://localhost/test/limit?usename=xx&password=xxx

4、直接发送URL时不能带特殊字符

直接构造带特殊符号([ ])的URL

 

上面两种方式都不行 

localhost/bean?name=admin&hobbys=sing&hobbys=dance&hobbys=rap&hobbys=basketball&birthday=1991-05-19 14:20:15&orders[0].id=1&orders[0].goodsName=麦克风&orders[0].price=100&orders[1].id=2&orders[1].goodsName=音响&orders[1].price=10000&orders[2].id=3&orders[2].goodsName=摄像头&orders[2].price=1000

localhost/bean?name=admin&hobbys=sing&hobbys=dance&hobbys=rap&hobbys=basketball&birthday=1991-05-19 14:20:15&orders[0].id=1&orders[0].goodsName=麦克风&orders[0].price=100&orders[1].id=2&orders[1].goodsName=音响&orders[1].price=10000&orders[2].id=3&orders[2].goodsName=摄像头&orders[2].price=1000

需要把”[“变成对应的url编码才行,[ → %5B,] → %5D

要发送下面的url

localhost:80/bean?name=admin&hobbys=sing&hobbys=dance&hobbys=rap&hobbys=basketball&birthday=1991-05-19 14:20:15&orders%5B0%5D.id=1&orders%5B0%5D.goodsName=麦克风&orders%5B0%5D.price=100&orders%5B1%5D.id=2&orders%5B1%5D.goodsName=音响&orders%5B1%5D.price=10000&orders%5B2%5D.id=3&orders%5B2%5D.goodsName=摄像头&orders%5B2%5D.price=1000

localhost:80/bean?name=admin&hobbys=sing&hobbys=dance&hobbys=rap&hobbys=basketball&birthday=1991-05-19 14:20:15&orders%5B0%5D.id=1&orders%5B0%5D.goodsName=麦克风&orders%5B0%5D.price=100&orders%5B1%5D.id=2&orders%5B1%5D.goodsName=音响&orders%5B1%5D.price=10000&orders%5B2%5D.id=3&orders%5B2%5D.goodsName=摄像头&orders%5B2%5D.price=1000

 

表单方法构造URL就不需要转码(postman只会把post请求的表单内容发送出去,get表单的内容不会发送)

因为表单会自动将" [ "转换成url编码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值