zhaoruisi

java面试题学习记录1

1.如何发现垃圾?
  引用计数法
  可达性分析
2.如何回收垃圾 4种
  标记清除
  标记整理
  复制算法
  分代收集算法

3.垃圾收集器 7种
  gms收集器 标记清除 老年代收集器
  g1收集器 标记整理 老年代加新生代
  serial收集器 单线程复制算法 新生代收集器
  parnew收集器 多线程复制算法 新生代收集器
  Parallel Scavenge收集器: 新生代收集器,复制算法的收集器
  Serial Old收集器 老年代版本
  parnew Old收集器 老年代版本


4.请求重定向与转发
  重定向浏览器地址会变,转发不会
  重定向是请求了两次,转发是一次
  重定向可以是任意地址,请求转发只能是当前项目
  重定向是浏览器跳转,请求转发是服务器跳转
5.get和post的区别
  get不安全,传递的参数可见
  get数据大小有限制,post无限制
  get只支持ascll码,post则是ios10646字符集
  get是from表单默认的请求方式,效率比较好
6.cookie和session的区别
  cookie存放在客户端  session存放服务器
  cookie可以长期有效 session跟随会话关闭则关闭

  cookie不安全,session安全

  存储容量不同,服务器压力不同,存放的数据类型不同
7.数据库的三大范式
  原子性,唯一性,直接性
8.mysql的存储引擎
  myISAM存储引擎 5.5之前使用的,支持表级锁,不支持事务
  innoDB存储引擎 5.5之后使用的,支持行级锁,支持事务,大并发量插入数据效率高,容易死锁
  Memory存储引擎 数据放在内存中,读取或写入快,重启数据丢失
9.事务的四种特性 ACID
  原子性 最小单位是原子,表示事务不可再拆分
  一致性 事务运行前和运行后状态需一致
  隔离性 事务与事务之间相互隔离,互不干扰
  持久性 事务一旦被提交,则持久到硬盘

  可能出现的问题:
    脏的读幻读 不可重复读
10.事务的传播行为 7种
  spring事务的传播行为说的是,当多个事务同时存在的时候,spring如何处理这些事务的行为。
  require必须的/suppor支持/mandatory 强制托管/requires-new 需要新建/ not -supported不支持/never从不/nested嵌套的

  PROPAGATION_REQUIRED:required需要,有加入,没有新建)
  PROPAGATION_SUPPORTS:supports支持,支持当前事务,有则加入,没有以非事务运行)
  supports在执行 增删改 时必须要有事务控制,查询是可有可无
  PROPAGATION_MANDATORY:mandatory强制性,支持当前事务,有则加入,没有抛出异常PROPAGATION_REQUIRES_NEW:requires_new需要新的,不管有没有事务,直接创建新事务
  PROPAGATION_NOT_SUPPORTED:not supported不支持事务,以非事务方式执行操作,存在事务,就把当前事务挂起。
  PROPAGATION_NEVER:never不支持事务,以非事务方式执行,存在事务,则抛出异常。PROPAGATION_NESTED:nested存在则在嵌套事务内执行。没有则新建。
  对事务的要求程度可以从大到小排序:mandatory / supports / required / requires_new / nested / not supported / never

posted on   zhaoruisi  阅读(14)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示