Trouble Shoot - The prefix "context" for element "context:component-scan" is not bound. Spring MVC

问题: 在Spring MVC WEB 开发过程中, 在自己定义的xml配置文件中发现错误. 

The prefix "context" for element "context:component-scan" is not bound.



解决办法: 在<beans> 中加入 

xmlns:context="http://www.springframework.org/schema/context"


原因: 从错误本身来分析, context 元素没有被界定在哪里.   为什么会这样? 从 xmlns 入手, xmlns 全称 是 XML NameSpace,  它的使用规则是 xmlns:namespace-prefix="namespaceURL". 当这个命名空间被界定后, 所有带有相同的namespace-prefix 的元素都会与这个命名空间( namespaceURL) 相关联. 这样做的好处?  避免XML解析器对XML解析时的发送名字冲突.   

通俗上来说: 就是避免元素名字冲突. 例子: ①<table> 这是个桌子 </table>     ②<table>这是个表格</table> 通过界定特定的URL, 我们能区分开这个table元素是用来作为桌子tag的还是用来做表格tag的.  


补充: 添加以上解决方案之后还会出现错误.

nested exception is org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'context:component-scan'.

解决方法: 在<beans>中,在xsi:schemaLocation中添加一下两个链接.

http://www.springframework.org/schema/context
	http://www.springframework.org/schema/context/spring-context.xsd

原因: 首先来了解下什么是(XML Schema Instance)xsi:schemaLocation. 是指具体用到的schema资源. 因为我们使用了context,所以需要提供相应的链接.

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值