海盗船|字节内部Java技术岗‘面试真题’泄露,冒死发布!( 八 )

  • 正是因为这些优点 , Netty 逐渐成为 Java NIO 编程的首选框架 。
  • 5、Netty 内部执行流程
    6、Spring Bean 的生命周期
    7、Spring 事务实现方式
    8、Spring 事务底层原理
    9、TCP 粘包/拆包的解决办法
    10、原生的 NIO 在 JDK 1.7 版本存在 epoll bug
    11、如何自定义注解实现功能
    12、Spring 的单例实现原理
    13、Netty 线程模型
    14、Spring AOP 实现原理
    15、说说 Spring AOP
    16、说说 Netty 的零拷贝
    17、Spring MVC 启动流程
    18、Spring 框架中用到了哪些设计模式
    19、什么是 TCP 粘包/拆包
    20、动态代理(cglib 与 JDK)
    21、BeanFactory 和 ApplicationContext 有什么区别
    II.Mybatis面试
    1、通常一个Xml映射文件 , 都会写一个Dao接口与之对应 , 请问 , 这个Dao接口的工作原理是什么?Dao接口里的方法 , 参数不同时 , 方法能重载吗?


    添加描述

    3、MyBatis编程步骤是什么样的?
    • 1、 创建SqlSessionFactory
    • 2、 通过SqlSessionFactory创建SqlSession
    • 3、 通过sqlsession执行数据库操作
    • 4、 调用session.commit()提交事务
    • 5、 调用session.close()关闭会话
    4、为什么说Mybatis是半自动ORM映射工具?它与全自动的区别在哪里?
    答:Hibernate 属于全自动 ORM 映射工具 , 使用 Hibernate 查询关联对象或者关联集合对象时 , 可以根据对象关系模型直接获取 , 所以它是全自动的 。 而 Mybatis 在查询关联对象或关联集合对象时 , 需要手动编写 sql 来完成 , 所以 , 称之为半自动 ORM 映射工具 。
    5、Xml映射文件中 , 除了常见的select|insert|update|delete标签之外 , 还有哪些标签?
    注:这道题出自京东面试官 。
    还 有 很 多 其 他 的 标 签,加 上 动 态 sql 的9 个 标签 , trim|where|set|foreach|if|choose|when|otherwise|bind等,其 中 为sql片段标签 , 通过标签引入 sql 片段 , 为不支持自增的主键生成策略标签 。
    6、Mybatis是否支持延迟加载?如果支持 , 它的实现原理是什么?
    7、Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式?
    8、Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式 , 以及它们之间的区别?
    9、传统JDBC开发存在什么问题?
    10、Mybatis是如何进行分页的?分页插件的原理是什么?
    11、IBatis和MyBatis在核心处理类分别叫什么?
    12、IBatis和MyBatis在细节上的不同有哪些?
    13、Hibernate和MyBatis的区别
    14、Mybatis如何执行批量操作
    15、{和${的区别
    16、Mybatis中如何指定使用哪一种Executor执行器?
    17、MyBatis的框架架构设计是怎么样的
    18、简述Mybatis的Xml映射文件和Mybatis内部数据结构之间的映射关系?
    19、Mybatis是否可以映射Enum枚举类?
    20、Mybatis比IBatis比较大的几个改进是什么?
    四、Java性能调优专题面试
    I.Netty
    1、IO多路转接(I/Omultiplexing)


    添加描述

    2、了解哪几种序列化协议?
    3、线程池解决多线程BIO编程会出现的问题


    添加描述

    4、如何选择序列化协议?


    添加描述