java web方面的面试问题,Spring MVC方面的面试问题,摘自java web轻量级开发面试教程

时间:2022-06-30 23:25:34

本文摘自java web轻量级开发面试教程:

https://baike.baidu.com/item/Java%20Web%E8%BD%BB%E9%87%8F%E7%BA%A7%E5%BC%80%E5%8F%91%E9%9D%A2%E8%AF%95%E6%95%99%E7%A8%8B/22038502?fr=aladdin

下面列出Spring Web方面的常见问题,除此之外,大家也可以自己不断收集,不断提升。

问题1,你们的项目是如何搭建Spring Web框架的,具体而言,如何定义控制器类,视图解析器有几个,一般是怎么定义的?

请结合项目的具体需求说下整个Web的处理流程,别泛泛而言。比如是银行项目,就拿一个具体的存钱请求,怎么发URL,URL会经什么样的拦截器处理,然后怎么被控制器类接收处理,最后怎么经过视图解析器,从而把结果返回到前端页面。

问题2,在项目里,你们是否用到拦截器?拦截器起了什么作用?

问题3,你们项目里有多少个控制器处理类?你们怎么把不同的请求定位到具体的控制器处理类上的?

上述两个问题都是问技术,不难回答。

问题4,Spring的拦截器和Struts的过滤器(Filter)有什么差别?

① 拦截器是基于Java反射机制的,而过滤器是基于函数回调 。

② 过滤器依赖于Servlet容器,而拦截器不依赖于Servlet容器 。

③拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用 。

④拦截器可以访问action上下文、值栈里的对象,而过滤器不能 。

⑤在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次 。

问题5,在你们的项目里,你们用到了Spring Web技术?解决了哪些比较麻烦的问题?

这个是开放性的问题,一般属于加分项,可以结合项目的实际情况来说。

问题6,你感觉Spring Web框架有哪些可以改进的地方?或者你们项目在使用Spring Web框架时,有哪些问题是框架本身无法解决的?

这个考查对Spring框架的熟练程度,对初级程序员来说,他们未必能有体会,如果有人能回答上,而且大致不差,这也是个加分项。

问题7,你们使用Spring Web框架做项目时,除了做开发以外,有没有参与框架搭建?对搭建Spring Web框架这方面,你有什么体会?

这个问题也属于开放性问题,对初级程序员来说难度比较大,我们一般是问高级程序员的,不过如果大家要走架构师这条路的话,这些针对框架的问题是大家提升自己能力的方向。