这篇文章上次修改于 2144 天前,可能其部分内容已经发生变化,如有疑问可询问作者。

1.jvm 垃圾回收—年轻代

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

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

  • 老年代很少变动,使用MajorGC ——-标记清除算法,装不下就OOM
  • 永久代class ,meta
  1. 确定垃圾算法
  • 引用计数
  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. 连接数据库的步骤
  • classFor 创建driver,注册到drivermanager中
  • driverManager.getConnection获取连接
  • 创建一个preparedStatement,connnection.preparStatement
  • execute计算结果
  • ResultSet处理结果
  • 关闭resultSet,connection
    ——————————————————————Spring———————————————————
    1.Spring定义,一个IOC容器,轻量级java ee框架,包含
  • Spring context 依赖注入
  • Spring AOP 面向切面编程
  • Spring Dao Dao模式的数据操作—-隔离不同数据库的实现
  • Spring JDBC —-
  • SPring ORM
  • Spring web moudule
  • Spring mvc
  1. Spring bean 的scope
  • singleton —-只有一个实例—-默认的
  • Prototype—-每次请求,创建一个新的
  • Request ——为每一个WebRequest创建
  • Session/Global Session
    3.DispatcherServlet 和ContextLoaderListener 的作用
  • DispatcherServlet可以看成controller的前端控制器,用于路由到不同的controller
  • ContextLoaderListener 用于监听WebApplication的启动和shutdown
    4.如何处理Spring MVC 异常
  • @ExceptionHandler
  • @ControllerAdvice
    5.Checked Exception 要求开发必须处理的异常
  1. Exception Error的区别
    Error一般是不可恢复的一场