快不快乐的先不说,看到西湖有音乐节,忒开心想去遛跶,点进去一看没有门票,~.~||| 哼,啥也不是。

今儿全世界都在为程序员庆祝,我也想庆祝一下,哈哈哈...... @_@

下来说点啥呢?>>>>>>>>>说一下面试吧

补充tips:问为啥没好好写,因为懒,所以第二天才完成;谢谢链接中的大佬,抱拳!!!

first-part

1.  多线程用过么?线程实现的返回值怎么获取?

  •    new ThreadPoolExecutor(int coorPoolSize,int maximumPoolSize,long keepAliveTime, TimeUnit unit,new LinkedBlockedQueue<Runnable> queue,
    ThreadFactory threadFactory, RejectedExecutionHandler handler)
  • 执行顺序 :(核心线程线程数未满,核心线程执行;核心线程已满,队列等待;队列已满,进入最大线程数;最大线程数未满,执行;最大线程数已满,执行拒绝策略)
  • 拒绝策略

              AbortPolicy:默认测策略,抛出RejectedExecutionException运行时异常;

              CallerRunsPolicy:这提供了一个简单的反馈控制机制,可以减慢提交新任务的速度;

              DiscardPolicy:直接丢弃新提交的任务;

              DiscardOldestPolicy:如果执行器没有关闭,队列头的任务将会被丢弃,然后执行器重新尝试执行任务(如果失败,则重复这一过程);

  • callable()

2.  mybatis实现分页插件的

3.  list排序?

  • sort()函数;
  • treeSet也可以实现;

4.  stream的使用?

  • 顺序流: filter(),map()-一维,flatMap()-二维,distinct(),sorted(),groupingBy()
  • 并行流: parallelStream()

5.  内存溢出,内存泄露区别?

  • 内存溢出:所需的内存不够(eg:安装CSDN应用)
  • 内存泄漏:资源占用导致系统崩溃

6.  spring的AOP切面使用,实现,原理?

  •  定义上讲,将一些与业务无关,但又想增加在多处的功能,抽象出来调用,达到解耦。
  •  https://www.cnblogs.com/wangshen31/p/9379197.html    eg:日志(可以看入参,也可以看返回结果)
  •  jdk动态代理,ciglab动态代理

7.  springBean生命周期?

  • 实例化
  • 属性赋值
  • 初始化
  • 销毁

8.  spring事务?隔离级别?

  • 四大特性:原子性、一致性、隔离性、持久性
  • 传播机制:7种:REQUIRED(如果当前没事务,建;有,加入),REQUIRES_NEW(新建,如果当前有就挂起当前),SUPPORTS(支持当前,如当前没以非事务执行),NOT_SUPPORTED(以非事务执行,当前有挂起),MANDATORY(支持当前,没有抛异常),NEVER(以非事务执行,有挂起)
  • 隔离级别:读未提交(引起脏读、不可重复读、幻读);读已提交(引起不可重复读、幻读);可重复读(引起幻读);可串行化(挺好,就是会拉低效率)

9.  rabbitMq宕机,怎么保证消息不丢?

    将数据持久化

  •   设置交换机(channel.exchangeDeclare(exchangeName, “direct/topic/header/fanout”, true);即durable字段设置为true即可。)
  •   队列(Queue.DeclareOk queueDeclare(String queue, boolean durable, boolean exclusive, boolean autoDelete, Map<String, Object> arguments) throws IOException;即durable字段设置为true即可
  •   message(public BasicProperties( String contentType,//消息类型如:text/plain String contentEncoding,//编码 Map<String,Object> headers, Integer deliveryMode,//1:nonpersistent 2:persistent Integer priority,//优先级 String correlationId, String replyTo,//反馈队列 String expiration,//expiration到期时间 String messageId, Date timestamp, String type, String userId, String appId, String clusterId))
03-15 03:14