javax.servlet-api引入的问题
在之前的springMVC中引入了spring-webmvc后,并没有引入javax.servlet,运行程序时,也没有报错
但是为什么在这个章节中的9分34秒左右,提到了springmvc运行时底层以来就是javax.servlet-api
我很疑惑,为什么之前在springMVC章节中却没有引入也没有报错,在SSM整合中就会报错呢?
正在回答 回答被采纳积分+1
老师,我查了一下,也看了以前写的代码,我现在是这样理解的哈:
首先在阶段三,Servlet 那一章节中,其实后面的课程提到了scope这个标签,将其设置为 provided 即,只在编译和测试时使用,不会打包到最终的构件中,这样做的原因是因为 Tomcat 中提供了 javax.servlet-api 所以不需要,但是编译和测试时,在代码中引用了这个类,所以需要引入这个依赖。
其次,在 23 周,SpringMVC截器 那一章节也是这样,因为定义Interceptor需要将请求进行传递或者直接拦截停止传递,这也用到了 HttpServletRequest 等等,这些代码也是属于 编译和测试时使用,显示的引用了 javax.servlet-api中的代码,所以需要引入,但是当编译发布时,则不需要,所以为 provided
最后就是现在的 SpringMVC 进行测试时,因为测试阶段外部工具-IDEA 没有这个类,所以会报错,所以需要进行引入,但是当发布到tomcat服务器中时,就不需要了,所以也为 provided。
老师,您看,这样对不?😂
- 参与学习 2053 人
- 提交作业 1490 份
- 解答问题 1316 个
2024重磅革新,超百小时内容豪华升级,加速提升高级技能与高薪就业竞争力 课程紧贴企业最新人才需求,历经7年持续迭代,帮助万名学子入行转行 从零起点到高阶实战,学习路径稳健顺滑,成就从小白到工程师高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星