java架构师面试题中最常见的基础题有哪些

随着每日确诊病例人数的减少以及治愈患者人数增多,随着这场抗“疫”战争即将以胜利告终,接踵而来的是企业复工、金三银四求职高峰季的来临。有很多Java工程师想要把握住这个机会,实现升职加薪、成为Java架构师。但你知道在面试java架构师的时候,考官一般都会问什么吗?接下来小编就给大家分享一些基础面试题答疑。

     随着每日确诊病例人数的减少以及治愈患者人数增多,随着这场抗“疫”战争即将以胜利告终,接踵而来的是企业复工、金三银四求职高峰季的来临。有很多Java工程师想要把握住这个机会,实现升职加薪、成为Java架构师。但你知道在面试java架构师的时候,考官一般都会问什么吗?接下来小编就给大家分享一些基础面试题答疑。

attachments-2020-08-QeI5Z5Td5f3390af9008b.png

    1、什么是Spring框架?Spring框架有哪些主要模块?


    Spring框架是一个为Java应用程序的开发提供了综合、广泛的基础性支持的Java平台。Spring帮助开发者解决了开发中基础性的问题,使得开发人员可以专注于应用程序的开发。Spring框架至今已集成了20多个模块。这些模块主要被分如下图所示的核心容器、数据访问/集成,、Web、AOP(面向切面编程)、工具、消息和测试模块。


    2、SpringMVC工作原理?


    1)客户端发送请求到DispatcherServlet


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


    3)Controller调用业务逻辑后,返回ModelAndView


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


    5)视图将结果返回到客户端


    3、讲下MyBatis的缓存


    MyBatis的缓存分为一级缓存和二级缓存,一级缓存放在session里面,默认就有,二级缓存放在它的命名空间里,默认是不打开的,使用二级缓存属性类需要实现Serializable序列化接口(可用来保存对象的状态),可在它的映射文件中配置。


    4、简述Mybatis的插件运行原理,以及如何编写一个插件?


    1)Mybatis仅可以编写针对ParameterHandler、ResultSetHandler、StatementHandler、Executor这4种接口的插件,Mybatis通过动态代理,为需要拦截的接口生成代理对象以实现接口方法拦截功能,每当执行这4种接口对象的方法时,就会进入拦截方法,具体就是InvocationHandler的invoke()方法,当然,只会拦截那些你指定需要拦截的方法。


    2)实现Mybatis的Interceptor接口并复写intercept()方法,然后在给插件编写注解,指定要拦截哪一个接口的哪些方法即可,记住,别忘了在配置文件中配置你编写的插件。


    5、springmvc和struts2的区别?


    机制:springmvc的入口是servlet,struts2的入口是filter。


    性能:springmvc会比struts2快一点。springmvc是基于方法设计,struts2是基于类,每次发一次请求都会实例一个action,每个Action都会被注入属性。


    参数传递:struts2是在接受参数的时候,可以采用属性来接收参数,这家说明可以让多个方法共享。


    拦截器机制:struts2有自己的interceptor机制,springmvc用的是独立的AOP方式,strtus2的配置文件还是比springmvc大,springmvc使用简洁,springMVC比struts2开发效率要高。


    6、谈谈SSH整合?


    struts(表示层)+spring(业务层)+hibernate(持久层)


    struts是一个表示层的框架,主要用于接收请求,分发请求。struts其实属于MVC中的VC层次的;


    hibernate是一个持久层的框架,主要负责与关系数据库的操作;


    spring是一个业务层的框架,是一个整合的框架,能够很好的黏合表示层和持久层。


    以上就是今天小编给大家分享的内容,希望对大家有帮助哦!

推荐阅读:java架构师指南之什么是架构和架构本质

0 条评论

请先 登录 后评论
JAVA Q&A
JAVA Q&A

171 篇文章

作家榜 »

  1. JAVA Q&A 171 文章
  2. 江南 1 文章
  3. 伯乐 0 文章
  4. 孤存 0 文章
  5. q21164340 0 文章
  6. 赫敏12 0 文章
  7. 子牙 0 文章
  8. 赫敏 0 文章