今日在线

十五从军征,君子不器,萧何-梦想126-南大梦想平台

1、什么是 SpringMvc?

答:SpringMvc 是 spring 的一个模块,依据 MVC 的一个结构,无需中心整合层来整

2、Spring MVC 的长处:

答:1)它是依据组件技能的.悉数的运用方针,不管控制器和视图,仍是事务方针之类的都是 组件.而且和 Spring 供给的其他根底结构严密集成.

2)不依赖于 Servlet API(方针虽是如此,但是在完结的时分确实是依赖于 Servlet 的)3)能够恣意运用各种视图技能,而不仅仅局限于 JSP4)支撑各种恳求资源的映射战略5)它应是易于扩展的

3、SpringMVC 作业原理?答:

1)客户端发送恳求到 DispatcherServlet

2)DispatcherServlet 查询 handlerMapping 找到处理恳求的 Controller

3)Controller 调用事务逻辑后,回来 ModelAndView

4)DispatcherServlet 查询 ModelAndView,找到指定视图

5)视图将成果回来到客户端

4、SpringMVC 流程?

答:1)用户发送恳求至前端控制器 DispatcherServlet。

2)DispatcherServlet 收到恳求调用 HandlerMapping 处理器映射器。

3)处理器映射器找到详细的处理器(能够依据 xml 装备、注解进行查找),生成处理器及处理器阻拦器(假如有则生成)同时回来给 DispatcherServlet。

4)DispatcherServlet 调用 HandlerAdapter 处理器适配器。

5)HandlerAdapter 经过适配调用详细的处理器(Controller,也叫后端控制器)

6)Controller 履行完结回来 ModelAndView。

7)HandlerAdapter 将 controller 履行成果 ModelAndView 回来给 DispatcherServlet。8)DispatcherServlet 将 ModelAndView 传给 ViewReslover 视图解析器。

9)ViewReslover 解析后回来详细 View。

10)DispatcherServlet 依据 View 进行烘托视图(行将模型数据填充至视图中)。

11)DispatcherServlet 响运用户。

6、SpringMvc 的控制器是不是单例形式,假如是,有什么问题,怎样处理?

答:是单例形式,所以在多线程拜访的时分有线程安全问题,不要用同步,会影响功能的,解计划是在控制器里边不能写字段。

7、假如你也用过 struts2.简略介绍下 springMVC 和 struts2 的差异有哪些?

答:1)springmvc 的进口是一个 servlet 即前端控制器,而 struts2 进口是一个 filter 过虑器

2)springmvc 是依据办法开发(一个 url 对应一个办法),恳求参数传递到办法的形参,规划为单例或多例(主张单例),struts2 是依据类开发,传递参数是经过类的特点,只能计为多例。

3)Struts 选用值栈存储恳求和呼应的数据,经过 OGNL 存取数据,springmvc 经过参析器是将 request 恳求内容解析,并给办法形参赋值,将数据和视图封装成 ModelAnd方针,最终又将 ModelAndView 中的模型数据经过 reques 域传输到页面。Jsp 视图解析认运用 jstl。

8、SpingMvc 中的控制器的注解一般用那个,有没有其他注解能够替代

答:一般用@Conntroller 注解,表明是体现层,不能用用其他注解替代

9、 @RequestMapping 注解用在类上面有什么效果?

答:是一个用来处理恳求地址映射的注解,可用于类或办法上。用于类上,表明类有呼应恳求的办法都是以该地址作为父途径。

10、怎样样把某个恳求映射到特定的办法上面?

答:直接在办法上面加上注解@RequestMapping,而且在这个注解里边写上要阻拦的路

11、假如在阻拦恳求中,我想阻拦 get 办法提交的办法,怎样装备?

答:能够在@RequestMapping 注解里边加上 method=RequestMethod.GET

12、怎样样在办法里边得到 Request,或许 Session?

答:直接在办法的形参中声明 request,SpringMvc 就主动把 request 方针传

13、我想在阻拦的办法里边得到从前台传入的参数,怎样得到?

答:直接在形参里边声明这个参数就能够,但有必要姓名和传过来的参数相同

14、假如前台有许多个参数传入,而且这些参数都是一个方针的,那么怎样样快速得到这象?

答:直接在办法中声明这个方针,SpringMvc 就主动会把特点赋值到这个方针里边。

15、SpringMvc 中函数的回来值是什么?

答:回来值能够有许多类型,有 String, ModelAndView,当一般用 String 比较好

16、SpringMVC 怎样样设定重定向和转发的?

答:在回来值前面加"forward:"就能够让成果转发,比如"forward:user.do?name=method4回来值前面加"redirect:"就能够让回来值重定向,比如"redirect:百度一下,你就知道"

17、SpringMvc 用什么方针从后台向前台传递数据的?

答:经过 ModelMap 方针,能够在这个方针里边用 put 办法,把方针加到里边,前台就能够过 el 表达式拿到。

18、SpringMvc 中有个类把视图和数据都兼并的一同的,叫什么?

答:叫 ModelAndView。

19、怎样样把 ModelMap 里边的数据放入 Session 里边?

答:能够在类上面加上@SessionAttributes 注解,里边包括的字符串便是要放入 session 的 key

20、SpringMvc 怎样和 AJAX 彼此调用的?

答:经过 Jackson 结构就能够把 Java 里边的方针直接转化成 Js 能够识其他 Json 方针详细步骤如下 :

1)参加 Jackson.jar

2)在装备文件中装备 json 的映射

3)在承受 Ajax 办法里边能够直接回来 Object,List 等,但办法前面要加上@ResponseB注解

21、当一个办法向 AJAX 回来特别方针,比如 Object,List 等,需求做什么处理?

答:要加上@ResponseBody 注解

22、SpringMvc 里边阻拦器是怎样写的?

答:有两种写法,一种是完结接口,别的一种是承继适配器类,然后在 SpringMvc 的装备文装备阻拦器即可:mvc:interceptors

以上是腾讯关于springMVC面试题,想要了解架构技能知识点的,能够重视我一下,我后续也会收拾更多关于分布式架构这一块的知识点共享出来

相关文章