随笔分类 - Java
摘要:1、JVM内置缓存:值存放在JVM缓存中,容易造成内存溢出,没有持久化机制,存在多服务器数据不能共享 mybatis二级缓存机制oscache hibernate二级缓存机制escache oscache主要针对数据库访问层 escache主要针对页面缓存2、关系型数据库特征:主外键、SQL语句、存
阅读全文
摘要:1、Nginx轻量级服务器,抗住同时5W并发连接。 作用:做http服务器(反向代理)、虚拟主机、负载均衡、集群(实现动静分离)。2、Nginx的作用:集群(减轻单台服务器的压力),反向代理(不爆露真实IP地址),静态服务器(动静分离)3、项目安全架构措施 1、nginx反向代理(不爆露真实IP地址
阅读全文
摘要:1、Java中的异常 非检查异常(unckecked exception):Error 和 RuntimeException 以及他们的子类。 检查异常(checked exception):除了Error 和 RuntimeException的其它异常。强制要求程序员为这样的异常做预备处理工作 r
阅读全文
摘要:1、volatile和synchronized的区别 1.volatile本质是在告诉jvm当前变量在寄存器(工作内存)中的值是不确定的,需要从主存中获取;synchronized则是锁定当前变量,只有该线程可以访问该变量,其他线程被阻塞。 2.volatile仅能使用在变量级别;synchroni
阅读全文
摘要:Spring常见注解1、@Controller:用于标记一个类上,声明注解的类是一个Controller,将该类交给Spring容器进行管理,@Controller:只是定义了一个控制器类,而使用@RequestMapping注解的方法才是真正处理请求的处理器。2、@Service:表明该类是一个s
阅读全文
摘要:1、对于List而言,要不然就使用迭代器,要不然就从后往前删除,从前往后删除会出现角标越界。 因为我List有两个remove方法,一个是int作为形参(删除指定位置的元素),一个是Object作为形参(删除指定的元素)。传一个基本数据类型的数字调用的是第一个方法。一旦删除,原List集合在删除角标
阅读全文
摘要:1、线程中的run和start的区别? run()相当于线程的任务处理逻辑入口方法,它由Java虚拟机在运行相应线程时直接调用 start()的作用是启动相应的线程,该线程进入就绪状态,start()调用结束并不表示相应线程已经开始运行,这个线程可能稍后运行,也可能永远不运行。2、可不可以不通过st
阅读全文
摘要:jdk1.8中红黑树的加入以及concurrentHashMap1、什么时HashMap? HashMap是一个用于储存Key-Value键值对的集合,每一个键值对也叫做Entry,这些个键值对(Entry)分散存储在一个数组中,这些数组就算是HashMap的主干,数组的每一个元素的初始值都是nul
阅读全文
摘要:1、是否使用线程池就一定比使用单线程高效呢? 不是,比如Redis就是单线程的,但它却非常高效,redis基本上都是内存操作,这种情况下单线程可以很高效地利用CPU,而多线程存在相当比例的IO和网络操作,多线程带来线程上下文切换开销。2、solr如何实现搜索的? 倒排索引,先抽取文档中词,并建立词与
阅读全文
摘要:1.什么是Spring bean? Spring bean是被实例化的,组装的及被Spring容器管理的Java对象,Spring 容器会自动完成@bean对象的实例化。2.Spring提供了那些配置方式? 1.基于xml的配置 2.基于注解配置,需要在Spring容器中打开注解装配 3.基于Jav
阅读全文
摘要:1.Spring是什么? Spring是一个轻量级的IOC和AOP框架,目的是用于简化应用程序开发。 IOC:控制反转(Inversion of Control,缩写Ioc),是面向对象编程的一种设计原则,可以用来降低代码之间的耦合度。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界
阅读全文
摘要:1.提交任务时,线程池队列已满时会发生什么? 如果一个任务不能被调度执行那么ThreadPoolExecutor的submit()方法将抛出一(拒绝执行)RejectedExecutionException异常。(当线程池的排队策略为有界队列,而提交的任务超过了有界队列的长度时,就会抛出该异常,所以
阅读全文
摘要:1.什么是Java内存模型? Java程序是要运行在Java虚拟机上面的,Java内存模型(Java Memory Model,JMM)就是一种符合内存模型规范的,屏蔽了各种硬件和操作系统的访问差异的,保证了Java程序在各种平台下对内存的访问都能保证效果一致的机制和规范。2.MySQL的事务隔离级
阅读全文
摘要:浅谈对多线程的理解 1.什么是进程和什么又是线程??? 进程是指运行中的应用程序,每个进程都有自己独立的地址空间; 线程是进程中执行运算的最小单位,一个进程中可以有多个线程。 2.多线程的集中实现方式 (1):继承thread类,thread类本质上还是实现了runnable接口的一个实例,启动线程
阅读全文
摘要:简单介绍一下抽象类和接口? 1.抽象类中的抽象方法前面有默认的abstract修饰,不能用其他修饰符去修饰,原因是:抽象方法中没有方法体,是用来被继承的,所以private修饰符没有作用,static修饰符可以直接使用类名来调用访问该方法,抽象方法用static修饰就没有意义,因为可以直接用类名来调
阅读全文

浙公网安备 33010602011771号