好友
阅读权限 25
听众
最后登录 1970-1-1
三木猿
发表于 2020-9-4 13:57
本帖最后由 三木猿 于 2020-9-4 14:00 编辑
疫情期间找工作,我也是吐了呀,有多难受可以想象,面试的时候,问题都能答上来,不顶用!你不只是要答上来,还要答得详细,答得有特点,不要怕面试有不会的怎么办,不会很正常,但是该会的你必须搞懂,搞透彻,再强调一次框架不重要,学一个框架用不了多久,重要的是基础,就这。基础不行,啥也不是!!另附一套选择题,你要是全会了,面阿里都没毛病
java题库(都会了你就去面阿里吧).rar
(179.35 KB, 下载次数: 711)
(1) server.xml,schema.xml,rule.xml (1) 三次握手
① 第一次 客户端 发送 SYN=1,和随机生成的seq=J,同时客户端状态变为请求连接状态
② 第二次握手服务器端收到 SYN=1知道了客户端在请求连接,就再生成一个seq=k,ACK=j+1,SYN=1,然后服务器端状态变为同步收到状态。
③ 第三次握手客户端收到 ACK=j+1,seq=k后再次向服务器端传递ACK=k+1,然后客户端和服务器端状态都变为正在连接状态。
(2) 四次挥手
(1) 在 interface中可以写非抽象方法,只需要在方法前面加上default就可以,这样在该接口的实现类上就可以直接调用这个方法。 (1) Like %在前面会全表扫描
(2) 在表中建立索引,优先考虑 where、 group by 使用到的字段。
(3) 尽量避免使用 select *,返回无用的字段会降低查询效率
(4) 尽量避免使用 in 和 not in ,会导致数据库引擎放弃索引进行全表扫描
(5) 尽量避免使用 or,会导致数据库引擎放弃索引进行全表扫描
(6) 尽量避免在字段开头模糊查询 ( 后面就没事 ) ,会导致数据库引擎放弃索引进行全表扫描
(7) 尽量避免进行 null值的判断,会导致数据库引擎放弃索引进行全表扫描 (1) Eden区和两个幸存者区默认比例为8:1:1
(2) Minor GC或YGC即年轻代GC,当new出来的对象不被其他对象引用时,就会被从内存中清除。发生YGC后没被清除的将会放到幸存者区
① 年轻代又分为三个区域,分别是 Eden区和两个幸存者区(from和to)
② 在发生第一次 GC前to中是没有东西的,第一次GC后,存活年龄达到阈值的会进入年老代,同时没有达到阈值的会被复制到to中,然后eden区和from区会被清空,之后原来的to在有内容后变成from区, 而原来的from区则变为to区,每一次发生GC from和to都会交换,如果GC后to区满了,那么to区中所有的对象都会被移动到年老代
(3) 在发生多次 YGC还没被清除的就会被放到年老区。
(4) 当年老区被放满时将会发生 majorGC又称FullGC
(5) FullGC发生时会清理整个堆中的GC(包括年轻代和年老代)mybatis-plus的用法 mybatis动态 sql是什么 ,有那些?有什么好处? 什么是触发器? springMVC三个层的注解?
(1) @Controller @service @RepositorySpringboot关闭自动配置exclude参数 @SpringbootApplication的原理
(1) @ComponentScan 用于类或接口上主要是指定扫描路径,spring会把指定路径下带有指定注解的类自动装配到bean容器里。
(2) @EnableAutoConfiguration 用于自动配置
(3) @springBootConfiguration 继承自 @Configuration,二者功能也一致,标注当前类是配置类,并会将当前类内声明的一个或多个以@Bean注解标记的方法的实例纳入到spring容器中,并且实例名就是方法名 (1) Mysql版本号机制
在数据表中添加 version字段,修改数据之前先读取版本号
比如当前版本是 1,A和B获取到version=1,此时更新,那A和B的更新条件都为“version = 1”,如果A先提交了,此时表中该条数据version已经被A更新为2,B再提交,发现不满足“version=1”,所以无法更新,排他异常。
(2) Java CAS来实现---这个不是太懂,所以没法说出来
(3) Mysql使用悲观锁需要先把事务的自动提交关闭,然后用select 。。。for update,
(4) Java中悲观锁即使用synchronized。 (1) 就是线程同步的意思,也就是说一个程序对一个线程安全的方法或语句进行访问的时候,其他线程必须等该线程访问完才能继续访问该方法。 (1) 一个线程因为一些原因无法释放锁,导致资源被一直占用。 (2) 让线程的执行按特定的顺序执行 当几个线程都要访问共享资源 A、B、C时,保证使每个线程都按照同样的顺序去访问它们,比如都先访问A,在访问B和C (1) Jmm中有主内存,工作内存,和线程,每个线程中都包含自己的工作内存,工作内存中放的是主内存中的共享变量的副本。 (1) 什么是堆:一些基本类型的变量和对象的引用变量 (2) 什么是栈:存放变量所指向的对象 程序计数器是用来存放线程执行的下一个指令的字节码,是为了保证线程的连续执行。
免费评分
查看全部评分
发帖前要善用【论坛搜索 】 功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。