1.项目细节:token springboot 感觉项目不熟悉,被拷打得有点不知所措了2.JUC 并发 线程 Runable thread*Runnable是接口,Thread是类且实现Runnable接口;*最主要的区别:一个是接口一个是实现类,常用接口可以避免单继承的局限性外n继承Thread类的方式可能会导致类的局部变量不能正确的被共享。*在使用Runnable定义的子类中没有start()方法,只有Thread类中才有;*Thread类,有一个构造方法:public Thread(Runnable targer)*此构造方法接受Runnable的子类实例,也就是说可以通过Thread类来启动Runnable实现的多线程。3.JVM栈,堆,new对象的储存方式*栈:存放基本类型和对象的引用,但对象本身不存放在栈中,而是存放在堆(new出来的对象)或者常量池中(字符串常量对象存放在常量池中。)*堆:存放所有new出来的对象和数组。*例如对象 sth=new 一个对象(String)(int)(char),基本类型String int char 与后续对象的引用放在栈,对象本身sth放在堆。4.hashset 如何去重hashset实现collection接口,使用hashcode()与equals()方法去重。5.Redis 实现集成(流程*SpringBoot集成任何的第三方技术就那么几个步骤,首先导入坐标,然后编写配置,自动注入操作对象完成操作。获取RedisTemplate对象操作Redis的过程6.MySQL优化,最左搜索*最左搜索可能会导致索引失效,例如:“%林”可能是陈林,李林等等,无法判断索引的第一个值大小,导致索引失效。*怎样知道索引失效了?在select语句前添加explain,获得语句执行结果,type字段,如果 是all就是索引失效了。7.前后端分离,怎样传送数据,明文or密文*一般是生成RSA的密钥对之后,公钥存储在前端或后端(登录时每次请求后端返回公钥)进行加密,私钥存储在后端用于解密;这里采用固定密钥对的方式。(使用open-ssl)8.hash加密算法*哈希Hash加密算法提供MD5加密、SHA-1加密、SHA-2加密、SHA-256加密、RIPEMD-160加密等各种加密工具。