Spring
Elsa~
这个作者很懒,什么都没留下…
展开
-
控制反转IOC
目录什么是控制反转?控制的是什么?反转的是什么?IOC与DI的关系是什么?IOC最基本的技术是什么?IOC的核心是什么?IOC的缺点是什么?什么是控制反转?在引入IOC之前,A类如果想要使用B类的方法,自己去创建B类,然后调用B类的方法,无论是创建B类还是使用B类,控制权都在自己手里。引入IOC之后,A类与B类失去了直接联系,A类如果想要使用B类的方法,IOC会主动去创建B类,然后将B类注入到A类,这样创建B类的“控制”权就由原来的A类“反转”到IOC容器了,A.原创 2021-05-30 17:38:56 · 178 阅读 · 2 评论 -
静态代理如何演变为动态代理
首先我们来回顾一下代理的概念:为其他对象提供一种代理,以控制对这个对象的访问。更新ing...原创 2021-01-03 08:52:46 · 144 阅读 · 9 评论 -
Springboot装配Swagger的配置详解
Springboot配置Swagger可以分为以下两部曲。第一步在pom文件中引入swagger的依赖项如果不知道依赖项中的具体内容怎么写,可以通过maven库进行查找:maven库链接 <!--swagger配置--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2<原创 2020-12-20 14:46:32 · 586 阅读 · 6 评论 -
maven构建的目录演变过程
首先我们看一下maven的构建都有哪些步骤然后我们看每一步运行之后,目录的变化情况是怎样的。前提:打开cmd命令行,进入Hello项目根目录(pom.xml文件所在目录)一、cmd中输入mvn clean,将源包文件清理。二、编译 mvn compile三、测试编译 mvn test-compile四、测试 mvn test五、打包 mvn package六、安装到本地仓库...原创 2020-11-27 19:17:12 · 201 阅读 · 12 评论 -
AOP六个专业术语在代码中的体现
AOP是我们在做项目拓展时,时常用到的技术点,这也是我们面向切面编程的核心所在,AOP的使用还是很方便的,但里面的细节往往会被忽略,即六个专业术语的使用位置,今天小编为大家分享一下,aop的6个专业术语的使用位置。首先我们了解一下概念,源自百度百科:在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容...原创 2020-11-22 08:39:42 · 482 阅读 · 8 评论 -
SpringMvc视图解析器来源
我们在接触一个技术的时候,首先想到的是它是干什么的,怎么用,但很少人会去深究技术的来源。一个技术的产生必定是用来解决一定问题的,今天小编就为大家讲解一下SpringMvc视图解析器的来源。我们刚接触浏览器项目的时候,看到的时javaWeb系列,用到的是servlet。在没有springmvc之前的javaweb是如何实现视图解析的呢?springmvc不使用视图解析器前的操作通过以上代码我们会发现,每次的重定向,转发都需要我们写地址,如果有十几个我们还能接受,试想如果有成千上万条的话,一原创 2020-11-15 21:04:31 · 147 阅读 · 5 评论 -
SpringMVC运行原理(流程图)
SpringMVC运行原理图:以上的①-③是我们程序员做的,剩余的都是springmvc框架做的,对应代码如下:个人总结:SpringMvc将代码web代码运行过程封装成一个个的对象1、映射关系从具体到抽象,面向接口编程HandlerMapping接口通过映射关系寻找地址对应的具体类,之前使用的是<servlet-mapping>进行具体的地址拦截和<servlet>指定具体的Servlet类。现在springmvc使用HandlerMapping接口原创 2020-11-08 08:41:54 · 866 阅读 · 5 评论 -
Springboot过滤器和拦截器详解及使用场景
一、过滤器和拦截器的区别1、过滤器和拦截器触发时机不一样,过滤器是在请求进入容器后,但请求进入servlet之前进行预处理的。请求结束返回也是,是在servlet处理完后,返回给前端之前。2、拦截器可以获取IOC容器中的各个bean,而过滤器就不行,因为拦截器是spring提供并管理的,spring的功能可以被拦截器使用,在拦截器里注入一个service,可以调用业务逻辑。而过滤器是JavaEE标准,只需依赖servlet api ,不需要依赖spring。3、过滤器的实现基于回调函数.转载 2020-11-08 08:30:19 · 405 阅读 · 4 评论 -
java.sql.SQLException: The server time zone value is unrecognized
遇到这个问题的小伙伴们不用慌,这个是时区配置出现了问题,解决办法如下:以前配置文件中的url值修改后的配置文件url值:加上一个以下代码,其中&表示连接符的意思。mybatis?serverTimezone=GMT%2B8&以上配置中serverTimezone表示时区;userSSL表示安全设置;userUnicoode表示为unicode编码;characterEncoding=utf8表示为utf-8编码;...原创 2020-10-27 16:21:57 · 462 阅读 · 10 评论 -
IDEA中设置Maven自动更新
第一步:选择左上角的File,在出来的下拉框中选择settings。第二步:搜索Maven中的Importing,将Import Maven project automatically选项勾选,表示接受Maven的自动导入。原创 2020-10-16 10:01:07 · 4353 阅读 · 5 评论 -
AOP解析
最近我们项目组接收到一个任务,就是在之前开发的“智物”系统中添加一些功能,当然,这种添加是要符合设计模式“开闭原则”的,“对拓展开发,对修改关闭”,也就是说我们这次的功能拓展不可以修改以前系统的代码,一句也不可以改。那么在这种背景下进行开发的话,我们第一个想到的便是利用AOP切面进行功能拓展了。所以,今天小编就来为大家分享一下AOP的细节。今天我们重点分为两部分进行介绍:1】、AOP获取目标方法的参数、返回值、异常信息的方式。2】、AOP5个通知的执行顺序。-----------------原创 2020-10-07 20:00:15 · 325 阅读 · 7 评论 -
IDEA中“scratches and consoles“的作用
scratches and consoles的作用:提供了两种临时的文件编辑环境,通过这两种临时的编辑环境,你可以写一些文本内容或者一些代码片段。这个功能是idea用来测试一小段代码的或者是某个语句某个api等,非常的方便;两种 Scratches 分别是:Scratch files 和 Scratch buffersScratch files:Scratch files 有着完整的运行和 debug 功能等等,这些文件需要指定编程语言类型并且指定后缀。Scratch buffers:Scr原创 2020-09-30 20:48:45 · 5096 阅读 · 6 评论 -
@Controller @Repository @Service @Component异同
在讨论异同之前我们看一下每个注解的源码是什么样的。@Component@Service@Repository@Controller相同点:@Controller,@Service,@Repository都有带@Component父注解,四个注解都可以说成是Component级别的注解,Spring框架自动扫描的注解也是检测是否有Component注解标记。把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" cla...原创 2020-09-26 09:25:54 · 332 阅读 · 15 评论 -
spring中的前置处理器和后置处理器区别
背景:SpringIOC容器它会以某种方式,加载配置文件中的 信息,将其解析为一个个的BeanDefinition.之后将BeanDefinition注册到容器之中。Spring IOC容器在实现的时候经过的过程可以使用如下图片表示:分为两个主要部分:其一 :容器启动阶段其二:bean实例化阶段。在容器的启动阶段主要做的是一些信息收集的过程(主要依赖于工具类BeanDefinitionReader),将收集的信息组成BeanDefinition.将BeanDefinition注册到相应的原创 2020-09-17 17:14:41 · 10153 阅读 · 13 评论