面试题各个击破---java

发布于 / 随记 / 0条评论 / Tags: 面试 / 4 次浏览

1.jvm 垃圾回收--年轻代

  • eden区新出生和死亡的特别多,使用MinorGC----复制算法,只把存活的复制到suvivor to区
  • suvivor from区同理,同上一步骤复制存活的到suvivor to区,但是年龄+1 ,到达年龄的送到老年区
  • 清空eden 和suvivor from区,交换from和to

2.jvm垃圾回收---老年代--永久代

  • 老年代很少变动,使用MajorGC -----标记清除算法,装不下就OOM
  • 永久代class ,meta
  • 确定垃圾算法
  • 引用计数
  1. 阻塞io其实是对线程说的,对操作系统来说那不是阻塞,是线程的正常工作
    4.静态语言的this和动态语言的this,在链式调用中为什么不一样,因为静态语言是在编译器确定的,this都是指向当前类文件;而动态语言的this是运行时确定的,一般是消息的接收者

----------------------------------------------JDBC-------------------------------

1.什么是jdbc driver,
jdbcdriver是java连接数据库组建,有4中类型:

JDBC-ODBC bridge driver
Native-API driver (partially java driver)
Network Protocol driver (fully java driver)
Thin driver (fully java driver)
  1. JDBC driver manager
    管理jdbc driver,register & unregister drivers. 提供创建Connection的工厂方法
    3.JDBC ResultSet
    代表table的一行,可以改变cursor,访问下一条
    4.ResultSetMetaData
    information of a table
  2. DatabaseMetaData
    information of the database, username,drivername,driver version ,number of tables views.
    6.什么是batch processing
    批量执行一组操作,节省时间
    7.execute, executeQuery, executeUpdate的区别

execute 是通用的,可以用getResultSet获取他select 的结果,getUpdateCount返回他更新的条数,返回true,表示计算了select并且有结果

executequery 用来查询,返回ResultSet
executeUpdate,用来执行DML操作,返回操作的条数

  1. 连接数据库的步骤
  2. classFor 创建driver,注册到drivermanager中
  3. driverManager.getConnection获取连接
  4. 创建一个preparedStatement,connnection.preparStatement
  5. execute计算结果
  6. ResultSet处理结果
  7. 关闭resultSet,connection
    --------------------------------------------Spring--------------------------------------
    1.Spring定义,一个IOC容器,轻量级java ee框架,包含
  8. Spring context 依赖注入
  9. Spring AOP 面向切面编程
  10. Spring Dao Dao模式的数据操作---隔离不同数据库的实现
  11. Spring JDBC ---
  12. SPring ORM
  13. Spring web moudule
  14. Spring mvc
  15. Spring bean 的scope
  16. singleton ---只有一个实例---默认的
  17. Prototype---每次请求,创建一个新的
  18. Request ----为每一个WebRequest创建
  19. Session/Global Session
    3.DispatcherServlet 和ContextLoaderListener 的作用
  20. DispatcherServlet可以看成controller的前端控制器,用于路由到不同的controller
  21. ContextLoaderListener 用于监听WebApplication的启动和shutdown
    4.如何处理Spring MVC 异常
  22. @ExceptionHandler
  23. @ControllerAdvice
    5.Checked Exception 要求开发必须处理的异常
  24. Exception Error的区别
    Error一般是不可恢复的一场

    评论区(暂无评论)