SpringBoot日志整合

SpringBoot日志整合log4j2 + slf4j 良好的日志输出能够在遇到问题的时候很快的定位到出现问题的地方。所以我们首先把log4j集成进去。 我们使用的是log4j2,在使用方面与log4j基本上没什么区别,比较大的区别是log4j2不再支持properties配置文件,支持xml、json格式的文件. ...

July 20, 2020 · 9 min

SpringBoot多模块开发,聚合打包

SpringBoot多模块开发,聚合打包 使用springboot进行微服务开发时,单个微服务内部,根据业务不同需要划分多个模块进行业务实现,就涉及到多模块管理和聚合 如下图所示是一个mall工程 ...

July 17, 2020 · 1 min

控制反转

控制反转 控制反转(Inversion of Control,缩写为IoC),是 Martin Fowler 教授提出的一种软件设计模式,是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。 其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫依赖查找(Dependency Lookup)。通俗的来理解,就是本来当需要某个类(构造函数)的某个方法时,自己需要主动实例化变为被动,不需要再考虑如何实例化其他依赖的类,只需要依赖注入 。所谓依赖注入就是由 IoC 容器在运行期间,动态地将某种依赖关系注入到对象之中。所以 IoC 和 DI 是从不同的角度的描述的同一件事情,就是通过引入IoC 容器,利用依赖注入的方式,实现对象之间的解耦。 ...

July 17, 2020 · 3 min

面向切面编程

面向切面编程 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,提高代码的灵活性和可扩展性,AOP可以说也是这种目标的一种实现。 主要功能 日志记录,性能统计,安全控制,事务处理,异常处理等等。 主要意图 将日志记录,性能统计,安全控制,事务处理,异常处理等代码从业务逻辑代码中划分出来,通过对这些行为的分离,我们希望可以将它们独立到非指导业务逻辑的方法中,进而改变这些行为的时候不影响业务逻辑的代码。

July 17, 2020 · 1 min

SpringBoot快速上手demo

SpringBoot快速上手demo SpringBoot简介 是什么 在介绍 SpringBoot 之前我们首先来简单介绍一下 Spring。Spring 是诞生于2002年的 Java 开发框架,可以说已经成为 Java 开发的事实标准。所谓事实标准就是虽然 Java 官方没有说它就是开发标准,但是在当前 Java 开发的众多项目中,当我们谈到产品级的 Java 项目的时候,大多都是基于 Spring 或者应用了 Spring 特性的。 ...

July 10, 2020 · 6 min

Java 反射

Java 反射 什么是反射: 正常情况下我们新建一个类就是: Student st = new Student() 通过new方式,调用默认构造方法新建一个类,加载到jvm虚拟机中,这种类的加载方法存在一种问题,就是运行时不灵活,如果我们把student类换成teacher类,就需要重新修改代码。 ...

July 1, 2020 · 1 min

注解

Java 注解 Annotation 中文译过来就是注解、标释的意思,在 Java 中注解是一个很重要的知识点,但经常还是有点让新手不容易理解。 比较糟糕的技术文档主要特征之一就是:用专业名词来介绍专业名词。 比如: ...

July 1, 2020 · 14 min

Java 知识库

💦JAVA Library目的是整合Java学习过程中的琐碎知识点,致力于提升基础代码能力。 Java基础 基础知识 什么是反射 通俗易懂解释注解 JVM简介 常见的设计模式 Java8 Java8新特性 框架 Spring框架 spring基础 SpringBootDemo工程 框架特性-AOP 框架特性-IOC 常用注解 多模块开发,聚合打包 中间件 代理服务器 nginx简单使用 网络 CORS-跨域资源共享 对象存储 FastDFS-分布式文件系统 敏捷开发工具 swagger-API文档工具 前端 todo 拓展 如何使用vuepress玩转blog 编码规范 git基础规范 面试 todo

June 30, 2020 · 1 min

DDD(Domain-Drive-Design)领域驱动设计

领域驱动设计(Domain-Drive-Design) 领域驱动设计(简称 ddd)概念来源于2004年著名建模专家eric evans发表的他最具影响力的书籍:《domain-driven design –tackling complexity in the heart of software》(中文译名:领域驱动设计—软件核心复杂性应对之道)一书。,书中提出了“领域驱动设计(简称 ddd)”的概念。 ...

June 29, 2020 · 2 min

Spring框架常用注解

Spring框架常用注解 @Import注解 —— 导入资源 自定义类导入spring容器 创建需要导入的类 public class CatImport { } 启动时手动导入 @Import(CatImport.class}) @SpringBootApplication(scanBasePackages = {"com.cyn.config"}) public class SpringAnnotationApplication { public static void main(String[] args) { ConfigurableApplicationContext context = SpringApplication.run(SpringAnnotationApplication.class, args); CatImport catImport = context.getBean(CatImport.class); System.out.println(catImport); } } 输出 ...

June 23, 2020 · 3 min