自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (2)
  • 收藏
  • 关注

原创 Lambda表达式

Java8新引入的语法糖 Lambda表达式*(关于lambda表达式是否属于语法糖存在很多争议,有人说他并不是语法糖,这里我们不纠结于字面表述)*。Lambda表达式是一种用于取代匿名类,把函数行为表述为函数式编程风格的一种匿名函数,这里再重申一下:Lambda表达式的执行结果是函数式接口的一个匿名对象(Lambda表达式的基本语法在初级课程已经讲过,在此不做赘述)。

2022-12-11 12:44:55 428 1

原创 Dubbo简介开发

Apache Dubbo 是一个高可用的,基于Java的开源RPC框架。​ Dubbo框架不仅仅是具备RPC访问功能,还包含服务治理功能。

2022-12-11 12:40:35 269

原创 springboot源码解析(四):监听器

在看springboot的源码过程中,发现内部使用了大量的监听器,下面来看下监听器的作用。在springboot的监听器有如下两类:# Run Listeners#事件发布运行监听器,是springboot中配置的唯一一个应用运行监听器,作用是通过一个多路广播器,将springboot运行状态的变化,构建成事件,并广播给各个监听器org.springframework.boot.SpringApplicationRunListener=\org.springframework.boot.contex

2022-12-08 08:53:00 431

原创 springboot源码解析(三):springboot内嵌tomcat

在使用springboot搭建一个web应用程序的时候,我们发现不需要自己搭建一个tomcat服务器,只需要引入spring-boot-starter-web,在应用启动时会自动启动嵌入式的tomcat作为服务器,下面来分析下源码的分析流程:之前我们已经讲过了自动装配的原理,其实tomcat的实现机制也是从自动装配开始的。@Configuration(proxyBeanMethods = false)@AutoConfigureOrder(Ordered.HIGHEST_PRECEDENCE)@Con

2022-12-08 08:49:27 417

原创 spring的自动配置原理

springboot配置文件的装配过程1、springboot在启动的时候会加载主配置类,开启了@EnableAutoConfiguration。2、@EnableAutoConfiguration的作用:利用AutoConfigurationImportSelector给容器导入一些组件。查看selectImports方法的内容,返回一个AutoConfigurationEntryAutoConfigurationEntry autoConfigurationEntry = getAutoConfigu

2022-12-08 08:49:12 247

原创 springboot运行原理

springboot-boot-starter:就是springboot的场景启动器。springboot将所有的功能场景都抽取出来,做成一个

2022-12-07 10:21:54 65

原创 springboot源码(二):自动装配原理

在之前的课程中我们讲解了springboot的启动过程,其实在面试过程中问的最多的可能是自动装配的原理,而自动装配是在启动过程中完成,只不过在刚开始的时候我们选择性的跳过了,下面详细讲解自动装配的过程。1、在springboot的启动过程中,有一个步骤是创建上下文,如果不记得可以看下面的代码:public ConfigurableApplicationContext run(String... args) { StopWatch stopWatch = new StopWatch();

2022-12-07 10:19:26 89

原创 springboot源码解析(一):启动过程

@SpringBootApplicationpublic class StartupApplication {​    public static void main(String[] args) {        SpringApplication.run(StartupApplication.class, args);   }}当程序开始执行之后,会调用SpringApplication的构造方法,进行某些初始参数的

2022-12-07 10:17:07 113

原创 springboot配置数据源

Spring Framework 为 SQL 数据库提供了广泛的支持。从直接使用 JdbcTemplate 进行 JDBC 访问到完全的对象关系映射(object relational mapping)技术,比如 Hibernate。Spring Data 提供了更多级别的功能,直接从接口创建的 Repository 实现,并使用了约定从方法名生成查询。

2022-12-07 10:15:52 7707 1

原创 springboot web开发

springboot在开发web项目的时候具备天然的优势,现在的很多企业级开发都是依托于springboot的。使用springboot的步骤:1、创建一个SpringBoot应用,选择我们需要的模块,SpringBoot就会默认将我们的需要的模块自动配置好 ​ 2、手动在配置文件中配置部分配置项目就可以运行起来了 ​ 3、专注编写业务代码,不需要考虑以前那样一大堆的配置了。很多同学在刚接触web开发的时候第一个接触的都是servlet,下面我们来使用springboot整合servlet(1)编写serv

2022-12-07 10:13:54 107

原创 thymeleaf模板引擎的使用

在早期开发的时候,我们完成的都是静态页面也就是html页面,随着时间轴的发展,慢慢的引入了jsp页面,当在后端服务查询到数据之后可以转发到jsp页面,可以轻松的使用jsp页面来实现数据的显示及交互,jsp有非常强大的功能,但是,在使用springboot的时候,整个项目是以jar包的方式运行而不是war包,而且还嵌入了tomcat容器,因此,在默认情况下是不支持jsp页面的。如果直接以纯静态页面的方式会给我们的开发带来很大的麻烦,springboot推荐使用模板引擎。模板引擎有很多种,jsp,freemar

2022-12-07 10:12:24 624

原创 springboot配置文件详解

在之前的项目开发中,我们可以使用xml,properties进行相关的配置,这种配置方式比较简单,但是在应对复杂的商业需求下,多环境和编程化的配置无法得到满足,因此springboot为我们提供了YAML的配置方式丰富功能和简化开发。通常情况下,我们可以使用properties文件进行相关的配置。(1)在resources目录下创建application.propertiesperson.name=zhangsanperson.age=12person.gender=男person.desc=my

2022-12-07 10:11:01 188

原创 Java SPI机制详解

SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制。SPI是一种动态替换发现的机制, 比如有个接口,想运行时动态的给它添加实现,你只需要添加一个实现。我们经常遇到的就是java.sql.Driver接口,其他不同厂商可以针对同一接口做出不同的实现,mysql和postgresql都有不同的实现提供给用户,而Java的SPI机制可以为某个接口寻找服务实现。 如上图所示,接口对应的抽象SPI接口;实现方实现SPI接口;调用方依赖SPI

2022-12-07 10:07:57 208

原创 ElasticSearch概述安装

  ES 是一个开源的高扩展的分布式全文搜索引擎,是整个Elastic Stack技术栈的核心。它可以近乎实时的存储,检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。  ElasticSearch的底层是开源库Lucene,但是你没办法直接用Lucene,必须自己写代码去调用它的接口,Elastic是Lucene的封装,提供了REST API的操作接口,开箱即用。天然的跨平台。  全文检索是我们在实际项目开发中最常见的需求了,而ElasticSearch是目前全文检索引擎的首选,它可以

2022-12-03 09:08:18 204

强制删除文件

把要删除的文件或者目录拖放到这个bat文件的图标上就可以删除了!

2019-01-11

ionic 环境安装手册

npm 为你和你的团队打开了连接整个 JavaScript 天才世界的一扇大门。它是世界上最大的软件注册表,每星期大约有 30 亿次的下载量,包含超过 600000 个 包(package) (即,代码模块)。来自各大洲的开源软件开发者使用 npm 互相分享和借鉴。包的结构使您能够轻松跟踪依赖项和版本。

2018-09-30

空空如也

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

TA关注的人

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