各大公司Java后端开发面试题总结
Hibernate的一级缓存是由Session提供的,因此它只存在于Session的生命周期中,当措施挪用save(),update(),saveOrUpdate()等要领 及挪用查询接口list,filter,iterate时,如Session缓存中还不存在响应的工具,Hibernate会把该工具插手到一级缓存中,当Session封锁的时辰缓存也会消散。 Hibernate的一级缓存是Session所内置的,不能被卸载,也不能举办任何设置一级缓存回收的是key-value的Map方法来实现的,在缓存实体工具时,工具的首要害字ID是Map的key,实体工具就是对应的值。 Hibernate二级缓存:把得到的全部数据工具按照ID放入到第二级缓存中。Hibernate二级缓存计策,是针对付ID查询的缓存计策,删除、更新、增进数据的时辰,同时更新缓存。 历程和线程的区别: 历程:每个历程都有独立的代码和数据空间(历程上下文),历程间的切换会有较大的开销,一个历程包括1–n个线程。 线程:统一类线程共享代码和数据空间,每个线程有独立的运行栈和措施计数器(PC),线程切换开销小。 线程和历程一样分为五个阶段:建设、停当、运行、阻塞、终止。 多历程是指操纵体系能同时运行多个使命(措施)。 多线程是指在统一措施中有多个次序流在执行。 在java中要想实现多线程,有三种本领,一种是继承Thread类,其它一种是实现Runable接口,尚有就是实现Callable接口。 Switch可否用string做参数? a.在 Java 7 之前,switch 只能支持byte,short,char,int 可能其对应的封装类以及 Enum 范例。在Java 7中,String 支持被加上了。 Object有哪些公用要领? a.要领equals测试的是两个工具是否相称 b.要领clone举办工具拷贝 c.要领getClass返回和当前工具相干的Class工具 d.要领notify,notifyall,wait都是用来对给定工具举办线程同步的 Java的四种引用,强弱软虚,以及用到的场景 a.操作软引用和弱引用办理OOM题目:用一个HashMap来生涯图片的路径和响应图片工具关联的软引用之间的映射相关,在内存不敷时,JVM会自动接纳这些缓存图片工具所占用的空间,从而有用地停止了OOM的题目。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |