自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 强引用/软引用/弱引用/虚引用

引用

2022-07-19 23:18:09 113

原创 集合的简介(Collection/Map)

初始容量,负载因子,扩容方式

2022-07-19 22:56:14 203

原创 如何防止缓存击穿和穿透

防止缓存击穿

2022-07-18 23:01:10 861

原创 Redis中的过期key删除策略

Redis过期删除

2022-07-18 00:46:36 467

原创 前端-element-ui应用

批量、右键菜单

2022-02-23 18:55:28 152

原创 注解说明--@Deprecated是个啥

首先,从我们常见的@Override说起,@Override用来修饰方法,表明我们修饰的方法是属于在父类的基础上继承重写的,可以在原有的方法上完成增强,再来进行调用。 而...@Deprecated是个啥呢,从级别上看,它是与@Override属于同一级别的,而且@Depercated还可以用来修饰类,我们(新手时期)在代码中比较常见的有一些方法在使用时工具会自动在上面显示删除线,将我们用的方法标识为不推荐使用或方法已经过时,并不是不可以用,而是后续开发出了更好用或功能更强大的方法。 从功能上看,我..

2021-11-20 10:08:51 655

原创 面试题新的--Mybatis和Hibernate的区别??

首先,Mybatis和Hibernate都是持久层框架,狭义上来说,Mybatis和Hibernate不同点就是Mybatis属于半自动的映射工具,而Hibernate属于全自动的映射工具。具体的话有以下几点不同:因为Mybatis是半自动的,所以在涉及数据库的相关操作时,需要自行编写SQL语句,而Hibernate的SQL语句则是自行生成。 Hibernate数据库移植性要比Mybatis强,Hibernate提供了强大的映射结构和hql语言,大大降低了对象与数据库之间的耦合度。 ...

2021-09-26 08:28:46 105

原创 面试题心得--什么是springboot???

springboot是一款最新开源的轻量级框架,是基于spring4.0开发,除了继承了spring的优点外,同时还大大减少了配置的步骤,简化了开发过程。同时,在springboot中,由于继承了大量的依赖信息,很好地解决了版本冲突和引用不稳定的问题。 再来说说spring的特点:可创建独立的spring应用,基于MAVEN或Gandle插件,生成可运行的jars和wars; 拥有内置的tomcat或Jetty等Servlet容器; 尽量自己配置spring容器; 提供自动配置“starter”的

2021-09-23 09:37:57 128

原创 面试题心得--什么是IOC和DI?

在具体的spring中,我们可以将IOC与DI理解为一个概念,在spring中,可能存在某个对象想要用到其他对象的属性,从而在代码中需要由调用对象实例化被调用对象,但这种做法无疑加大了代码之间的耦合度,这时候,我们就可以通过spring中的IOC容器将实例交给容器来完成成,我们称之为控制反转,而将被调用对象的属性赋给调用者,这一过程就称之为依赖注入(Dependence Injecting)。...

2021-09-21 23:51:30 228

原创 面试题心得--死锁的预防和解除?

首先,我们先谈谈死锁的概念:死锁就是在多线程并发中,一个线程需要用到其他线程的锁,但自己也占用的其他线程的锁,就比如线程一有两把锁,锁A和锁B,线程二也有两把锁,顺序是锁B和锁A,此时线程一占用锁A,在请求锁B时发现已被锁二占用,而线程二请求A进入等待,两个线程都进入等待而陷入死循环。 在来谈一下造成死锁的原因资源不能共享,只能被一个进程或线程占用; 已经被占用的资源不能被剥夺; 已经锁定的资源不能共享; 循环等待;如何解决尽量避免并发出现修改的语句; 避免事务处理时间过长; 将经常进行修

2021-09-21 23:42:12 159

原创 面试题心得--jdk、jre,jvm的区别?

JVM:java Virtual Machine,java虚拟机,用于接收在Java源代码编译后的.class字节码文件,将字节码文件中的命令收取到后调用乡音的api完成动作。是Java跨平台性的基础。 JRE: java Runtime Environment,java运行环境,只要包括两大环境,jvm的标准实现和java的一些基本类库,对于JVM来说,JRE还包括了一些java的基本类。 JDK: java Development Kit,java开发工具包,集成了jre和一些常用的小工jar.ex

2021-09-21 23:26:19 95

原创 面试题心得--抽象类和接口的区别?

首先,抽象类的本质还是一个类,可以被通过extends由子类继承并实现,具有类的单继承性,而接口则是需要通过implments来实现。 接口相当于方法的集合,只能定义方法而不能实现方法,jdk1.8定义了接口中可以存在由default修饰的默认方法,而在抽象类中,则可以包含普通方法并有方法的实现。 接口强调的是有没有,强调特定功能的实现,是对实现类的一种约束,而抽象类则强调是不是。 从里面的元素来看,接口中不能有普通成员变量,不能有构造方法,不能有非抽象的普通方法等等.... 抽象类和接口都不能被实

2021-09-20 08:10:50 119

原创 面试题心得--Integer和Int的区别?

从类型上看,Integer是包装类类型,Int是基本是据类型。 Integer使用需要进行new,实例化,而Int则是直接赋值。 Integer是一个引用,当我们new后,引用指向具体的对象。 每个基本数据类型都有其包装类,在涉及包装类与基本数据之间的转换是jdk1.5出现的自动拆装箱功能。 使用方向,Int与Integer可进行数值转化,但在我们实际开发过程中却使用Integer来定义变量的类型,是因为Int的默认值是0,而Integer默认值是null,比如在录入数据的过程中,我们没有录入或者没

2021-09-20 07:30:36 91

原创 面试题心得--Springboot中的starter到底是什么???

springBoot中的Starter是一个pom,pom(project Object Model)项目对象模型,主要管理一些配置信息,源代码,使用者的信息等。在springboot中starter是一种十分重要的机制,能够抛除以前繁杂的配置过程,将其即成为Starter,在具体使用中需要在pom.xml进行spring-boot-start和spring-boot-web-start的依赖配置,spring才能扫描到要配置的类进行相关的配置,包脱了依赖库和配置信息的处理,我们也可以在配置...

2021-09-19 14:07:21 2672

原创 面试题心得--SpringBoot中自动配置的原理是什么?

spring boot的自动装配是通过几个核心注解实现的,@SpringbootApplication注解的底层代码中我们可以了解到有关自动配置的实验原理。包括@Configuration、@EnabledAutoConfiguration、@ConditionOnClass几大核心注解,在具体实施中,@EnableAutoConfuratuin会在我们Pom.xml配置导入的依赖中找到spring-boot-autoConfigure中的META-INF下面的spring-factories,将...

2021-09-19 13:56:56 277

原创 面试题心得--什么是YAML,YAML有哪些优点???

YAML是一种便于人类理解的序列化结构语言,通常同于属性的配置,在配置过程中有着良好的结构规则,与properties相比不易混淆,并且可以配置一些较为复杂的属性。优点:YAML有自己的结构,在具体配置过程中需遵守规则,便于程序员理解; YAML中有配置的顺序性,在某些场合下,配置的顺序很重要; YAML中支持数组,可以配置基本数据对象,也可以配置对象; 相较于properties,YAML的配置更加简洁。...

2021-09-19 13:37:20 1640

原创 面试题心得--spring、springmvc、springboot的区别?

首先我们先着这三个单词就可以知道,springboot和springmvc是以spring为基础的衍生物。spring:spring是以IOC(控制反转)和AOP(面向切面编程)为核心的轻量级框架,旨在将开发简化,更加便捷。 springmvc:在spring中的Web模块采用mvc的设计模式,是一款轻量型的Web框架,通过DispatcherServlet、ModelAndView以及ViewResolver来实现。 在spring的基础上简化配置步骤,约定优于配置,提供了快速开发spring的一种

2021-09-19 13:30:01 450

原创 面试题心得--单例模式和多例模式的区别?

首先,我们知道scope="???",在默认情况下是单例模式。在实际开发过程中,我们可能会涉及到对象的单例设置,抑或是将它设置为多例模式。 对于单例模式,我们每提交一次请求都会由一个对象来处理,单例模式是默认的配置,在IOC容器启动后就会实例化这个对象,但是!!!我们要知道的是,单例模式还可以细分为两种情况,分别为饱汉模式和饥汉模式,它们的区别是在IOC容器启动后就创建实例和在getBean之后在创建实例!!!,使用单例模式可以避免每次请求都创建一个新对象造成资...

2021-09-15 23:40:12 376

原创 面试题心得--mybatis和hibernate的区别?

首先说一下大家都有了解的,一般人说Mybatis是半自动映射,而hibernate是全自动映射工具,然后就没有然后了。。。 那么,它们什么半自动,全自动到底是指啥呢??? 先说一下mybatis,它是属于半自动的,我们需要自己对于SQL查询自己编写SQL语句,这就是为什么叫它半自动,Mybatis中还提供了将数据自动转换成实体类对象的功能,通过queryForList和queryForObject来获取查询的集合或单个对象。 而在hibernate中,它会自动帮我们写sql,这也是他被称为全自动的原因

2021-09-15 23:28:13 114

原创 面试题心得--拦截器和过滤器的区别?

可能有很多小伙伴容易把拦截器和过滤器混淆,弄不大清楚,下面为大家列出它们的几大区别:过滤器???拦截器 依赖于Servlet容器实现 不依赖Servlet容器 基于函数回调实现 基于Java的反射机制实现的 只有在容器初始化时调用一次 在Action中可以多次调用 基本上对所有请求都生效 只对Action的请求生效 无法获取 可以获取Action的上下文,值栈中的对象 ...

2021-09-15 23:13:15 239

原创 面试题心得--SpringMVC的流程是什么???

首先我们说一下什么是SpringMVC,springMVC是Spring中Web中的一种基于java的请求驱动类型的轻量型Web框架。采用Model-View-Controller分层指责解耦,将复杂的Web体系分解为清晰的几个部分,也正因为这点,将我们数据在整个Web中的流向,角色清晰地展现出来,大致流向为前端控制器--处理器映射器--处理器适配器--视图解析器。 下面,我为大家详细谈一下数据的走向:现有用户提交请求到前端控制器(DispatcherServlet); 再有前端控制器调用处理器映射器

2021-09-15 23:05:07 68

原创 面试题心得--Ajax和传统Web的差别

首先我们得认识一点,无论以那种方式进行开发,我们的走向都是由客户端提交请求,服务器端处理后返回响应。但是,Ajax与传统Web在具体实现上还是有很大差别的:从两点出发:请求方式不一样:Ajax采用的是XMLHTTPRequest请求,而在传统Web中,我们是通过浏览器提交请求。 响应方式不一样:传统Web再进行数据刷新是会刷新整个页面,而Ajax则是局部刷新,只响应局部的数据。...

2021-09-15 00:45:51 166

原创 面试题心得--Ajax的定义及优缺点

首先,我们了解到Ajax的全称:Asynchronous JavaScript And XML,以为异步JavaScript和XML,从异步我们就可以知道,Ajax可以帮我们快速地构建动态界面,传统web在刷新信息时必须刷新整个界面,而Aja可以进行局部刷新。另外,我们可以将Aja看作是连接客户端与服务端的一个中间层,他可用将服务端显示和客户端控制异步处理,在设计一些数据处理时可以直接有Ajax层来完成。下面来说一下啊,Ajax的优缺点,整理了几点,为了方便查看就用表格来展示吧Ajax优缺点 优点

2021-09-15 00:35:57 65

原创 面试题心得--springMVC的文件上传方式???

一般来说,我们使用Spring MVC的文件上传时会用到三种文件上传方式,使用这些方式的前提是我们需要在pom。xml文件中进行相应的包的DI(Dependence Injected)依赖注入,有Commen-fileupload包和commen-io包。在准备工作做好后,我们就可以在项目中进行文件上传的工作了。第一种:传统的文件上传,特点是只在单个服务器上对文件进行上传和查询,能回会涉及到页面跳转。 第二种:springMVC的上传,springMVC提供了一个MultipartFile的对象,这个

2021-09-15 00:14:50 170

原创 面试题心得--Spring jdbc与传统jdbc的区别?

Spring jdbc就是在原生的JDBC代码上进行封装,提供一些接口,节省大量代码,传统的JDBC步骤为:建立连接、定义sql,执行sql,返回结果集、关闭连接释放资源。而在spring中,只需要调用相应的接口来实现sql定义和获取结果集,其他步骤都可以由spring实现。...

2021-09-13 23:20:34 908

原创 面试题心得--spring JDBC数据源

首先,spring中包含两种数据源:DriverManagerDatasource,每次请求都会返回一个新的连接,没有用到pool池的管理; SingleConnectionDatasource,每次请求都会返回同一个连接。但是,这两种在我们现在的实际开发中都不经常使用。Spring JDBC数据源 一般是我们在配置文件中设置,用来和数据库建立连接并访问数据的基础。想要在配置文件中配置数据源成功,拿Mysql举例,我们除了要导入相应的Mysql驱动包,还要有spring jdbc包,至...

2021-09-13 22:55:10 100

原创 面试题心得--Spring MVC的优点有哪些?

抛开其余点不说,spring MVC按职责分模块处理,实现了降低耦合。 其次,在具体功能上,spring MVC大致有四大优点:spring自带的优点,在spring发展史上,spring并没有闭门造车,而是在发展过程中选择兼容其他技术,如ORM,logging框架,J2EE,JDK Timer,以及各种视图技术,这也使得spring MVC也能够支持其他试图技术,不仅仅jsp。 同样是spring的特性,使得我们在开发过程中,可以专注于spring的集成(包括IOC容器,AOP)。 通过MVC的应

2021-09-13 22:39:39 621

原创 面试题心得--什么是spring MVC?简单介绍一下你对spring MVC的理解?

首先,我们要认识到spring有几大核心模块,如IOC,AOP,core,Web等,而spring的Web是一个十分优秀的Web MVC,它包含了一个除主流框架struts,过度设计的,不太流行的框架之外的有力选项。我们所说的spring MVC就是它的Web MVC。 spring MVC,是一种设计理念,MVC全称为Model-View-Controller,就是在spring开发过程中,采用的是mvc,按照功能将各模块分开处理,降低代码的耦合,将复杂的Web划分为几个清晰的模块,有助于并行开发。.

2021-09-13 22:20:46 312

原创 面试题心得--AOP中的名词解释

spring中几大核心板块:core、IOC、Web、AOP......其中AOP(Aspect Oriented Programming)面向切面编程,起到加强目标的功能,其中有些固有名称,如:目标对象、代理对象、织入、切入点、连接点、切面、关注点、增强或通知。AOP名词解释 关注点(分为核心关注点和横切关注点) (核心关注点)oop关注系统的业务逻辑 (横切关注点)aop关注系统级的功能,如业务管理、日志处理 连接点 在程序运行中的某一点,如方法的调用,属性的访问、异常的抛

2021-09-13 01:02:44 82

原创 面试题心得--织入的时机有哪些?

首先,织入是spring中AOP板块的一的名词,其含义是切面引用到目标对象时产生一个新的代理对象的过程。织入的时机大致有三种:程序编译时,切面在目标类编译时被织入。 类加载时,如果织入发生在类加载的过程中,则需要一个特殊的类加载器,在目标类被引用前植入,加强目标的字节。 程序运行时:在代码运行时,切面织入,Aop为目标对象创建一个动态的代理类。一般来说,我们所设计的都是在代码运行过程中动态织入的。...

2021-09-13 00:40:02 94

原创 面试题心得--spring声明式事务管理的事务属性有哪些?

首先,spring的事务管理分为编程式事务管理和声明式事务管理,我们一般常用到声明式事务管理,既然涉及到事务管理,就一定涉及到数据库的事务管理,spring的事务管理的基础是数据库的事务管理,如果没有数据库的事务管理,spring是无法实现的。 步入正题,spring的声明式事务管理有五大事务属性:只读:表示某个事务是否为只读readOnly,若标识为只读就无法对其进行增删改操作。 事务超时:设置事务的最大执行时间,如果事务超出了这个时间,就会自动进行回滚操作。 回滚规则:设置哪些异常会让事务回滚、

2021-09-13 00:29:41 142

原创 面试题心得--使用spring注解装配

使用注解装配,除了要导入相应的包,还要在配置文件中进行相应的设置 <context:annotation-config> 将spring声明为基于注解的装配方式,注解的装配方式大致有三种。 @Autowised,spring自带的注解方式,可以通过设置@Autowised(required = false)在目标对象没有搜索到匹配的信息是将null值注入,若设置为true且没有匹配对象时则会抛出异常。 @Infect, 此注解是JSR(java规范提案) 330中的,

2021-09-13 00:11:21 86

原创 面试题心得--spring注解说明

首先,spring框架和注解在现下都十分流行,在开发过程中我们总不能一个个建立映射关系吧,所以说,老程序员都在用注解在偷懒了,我们经常使用的有八大ioc(Inverse Of Control)注解。 ioc八大常用注解 componont 泛指各个类型的组件,一般用于不明确的类 Repository 用户标注访问数据库的组件,常用在Dao层标注 Service 标注在业务层,及Service层 Controlled 标注在Servlet,用于表示m

2021-09-12 23:54:35 123

原创 面试题心得--spring注解的原理

首先,spring作为现下热门的开发框架,注解也作为流行的开发方式,包括全注解和xml加注解的方式都比较流行,所以我们在实际开发中经常遇到注解,降低代码的耦合度,提高开发效率。 再来说一下spring注解的具体原理,spring注解的基础是要导入相对应的jar包,aop包不要忘记,它的本质是一个继承了Annotation的特殊接口,具体实现类是java运行过程中的动态代理类,我们通过反射机制获取注解时,它会返回一个动态的代理对象,这个代理对象会调用AnnotationInvocationHandler的I

2021-09-12 23:28:28 194

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除