god-jiang的git个人博客

记录学习编程路上的点点滴滴和总结大学学习过的重要知识


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

手撸一个SpringBoot-Starter

发表于 2021-02-01 | 分类于 SpringBoot
字数统计: 896 字 | 阅读时长 ≈ 3 分钟

前言

SpringBoot几乎是我们所有Java开发者必须掌握的一个技能,它为所有开发者更快的入门,做到开箱即用,没有冗余的代码和XML配置要求,对于开发者来说几乎是“零配置”。这个得益于SpringBoot的“约定大于配置”。

SpringBoot的starter帮我们把繁琐的配置和注册到IOC容器的过程都做了,我们只需要按照约定配置就可以开箱即用,实现零配置,下面我们就手撸一个spring-boot-starter来加深对“零配置”和“约定大于配置”的理解吧。

阅读全文 »

Spring自带的线程池ThreadPoolTaskExecutor

发表于 2021-01-24 | 分类于 线程池
字数统计: 1.5k 字 | 阅读时长 ≈ 6 分钟

前言

上一篇分享了JDK自带的线程池ThreadPoolTaskExecutor的配置和参数详解,然而我们实际开发中更多的是使用SpringBoot来开发,Spring默认也是自带了一个线程池方便我们开发,它就是ThreadPoolTaskExecutor,接下来我们就来聊聊Spring的线程池吧。

阅读全文 »

JDK线程池之ThreadPoolExecutor

发表于 2021-01-20 | 分类于 Java进阶
字数统计: 1.4k 字 | 阅读时长 ≈ 5 分钟

前言

在真实的企业开发过程中,有时候我们需要通过并行计算提高程序执行的性能,或者是遇到等待网络、IO响应导致耗费大量的执行时间,这些情况下我们可以通过采用异步多线程的方式来减少阻塞。这个时候我们就要学习多线程并发来实现这些业务场景。

阅读全文 »

SpringBoot定时任务+自定义线程池

发表于 2021-01-20 | 分类于 源码解读
字数统计: 1.1k 字 | 阅读时长 ≈ 4 分钟

背景

在真实的Java开发环境中,我们经常会需要用到定时任务来帮助我们完成一些特殊的任务,比如我最近写的晚上11点定时拉取第三方的数据入库,晚上12点清理脏数据等等。

如果我们使用SpringBoot来开发,那么定时任务将会变得非常简单。SpringBoot默认已经帮我们封装好了相关定时任务的组件和配置,我们只需要在相应的地方加上@Schedule注解就可以实现定时任务。

阅读全文 »

Java反射机制

发表于 2021-01-03 | 分类于 Java基础
字数统计: 1.3k 字 | 阅读时长 ≈ 5 分钟

反射机制概念

Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够动态调用它的任意一个方法和属性;这个动态获取信息以及动态调用对象的方法的功能称为Java语言的反射机制。

在Java的设计模式和流行框架中,反射机制被大量的使用,如果不深刻理解Java反射机制,是无法理解Java的设计模式或阅读流行框架底层代码的。

阅读全文 »

Java之自定义注解

发表于 2020-12-27 | 分类于 Java基础
字数统计: 690 字 | 阅读时长 ≈ 2 分钟

什么是注解?

  • Annotation是JDK5.0开始引入的技术
  • Annotation的作用可以对程序作出解释(和注释没什么区别),可以被其他程序读取
  • Annotation的格式是以“@注释名“在代码中存在的,还可以添加参数值,如@SuppressWarnings(value = “all”)
  • Annotation可以附加在package,class,method,field等上面,给他们添加额外的辅助信息,可以配合反射实现对元数据的访问
阅读全文 »

SpringBoot自动配置(源码解读)

发表于 2020-12-15 | 分类于 源码解读
字数统计: 987 字 | 阅读时长 ≈ 3 分钟

背景

我参加SpringBoot项目开发也已经五个多月时间了,项目遇到一个大数据量文本的取存问题,DBA不允许我们存text或者blob类型的数据在MySQL中,不得已采取了ElasticSearch作为一个中间数据库使用,然后根据网上的方法把maven依赖导入,application.properties粘贴过来,发现已经引入了ElasticSearch这个组件,最后把问题解决了。

但是这也引发了我的思考,为啥SpringBoot可以自动识别并且帮我初始化ES呢?阅读了SpringBoot源码,我按照我的理解讲一下SpringBoot的自动配置。

阅读全文 »

解读阿里巴巴开发规范之MySQL

发表于 2020-11-29 | 分类于 MySQL
字数统计: 2.1k 字 | 阅读时长 ≈ 7 分钟

前言

从7月份毕业开始算起,也是将近有5个月的工作经验了吧。在工作上,经历了一段时间的适应,现在接触到不同大神写出来的代码,发现各有优劣,于是就在思考一个问题,什么样的代码才是最正常最规范的呢?我的同事甩给我了一本《阿里巴巴Java开发手册》,从头到尾也算是过了一遍。今天趁着双休的假期,我就来讲一下这本书里面的MySQL规范制约吧

阅读全文 »

聊聊MySQL的COUNT(*)的性能

发表于 2020-11-17 | 分类于 MySQL
字数统计: 967 字 | 阅读时长 ≈ 3 分钟

前言

基本职场上的程序员用来统计数据库表的行数都会使用count(*),count(1)或者count(主键),那么它们之间的区别和性能你又是否了解呢?

其实程序员在开发的过程中,在一张大表上统计总行数是非常耗时的一个操作,那么我们应该用哪个方法统计会更快呢?

接下来我们就来聊一聊MySQL中统计总行数的方法和性能。

阅读全文 »

MySQL优化之超大分页查询

发表于 2020-11-10 | 分类于 MySQL
字数统计: 1.6k 字 | 阅读时长 ≈ 5 分钟

背景

基本上只要是做后台开发,都会接触到分页这个需求或者功能吧。基本上大家都是会用MySQL的LIMIT来处理,而且我现在负责的项目也是这样写的。但是一旦数据量起来了,其实LIMIT的效率会极其的低,这一篇文章就来讲一下LIMIT子句优化的。

阅读全文 »
123…8
god-jiang

god-jiang

一名热爱编程和算法的在校大学生

80 日志
17 分类
46 标签
GitHub 知乎
© 2021 god-jiang
主题 — NexT.Gemini v5.1.4
全站共 84.3k 字
本站访问数 人 本站总访问量 次
0%