MoDou Blog

Thinking will not overcome fear but action will.

不学无数——Mysql查询带树状结构的信息 Gradle多项目工程

Mysql查询带树状结构的信息 Gradle多项目工程

Mysql查询带树状结构的信息 在Oracle中有函数应用直接能够查询出树状的树状结构信息,例如有下面树状结构的组织成员架构,那么如果我们想查其中一个节点下的所有节点信息,在Oracle中可以直接用下面的语法可以进行直接查询。 START WITH CONNECT BY PRIOR 但是在Mysql中是没有这个语法的,而如果你也是想要查询这样的数据结构信息该怎么做呢?我们可以自定...

不学无数——徒手撸一个简单的RPC框架

徒手撸一个简单的RPC框架

徒手撸一个简单的RPC框架 之前在牛逼哄哄的 RPC 框架,底层到底什么原理得知了RPC(远程过程调用)简单来说就是调用远程的服务就像调用本地方法一样,其中用到的知识有序列化和反序列化、动态代理、网络传输、动态加载、反射这些知识点。发现这些知识都了解一些。所以就想着试试自己实现一个简单的RPC框架,即巩固了基础的知识,也能更加深入的了解RPC原理。当然一个完整的RPC框架包含了许多的功能,...

不学无数——使用IDEA创建SpringBoot Gradle多项目工程

使用IDEA创建SpringBoot Gradle多项目工程

使用IDEA创建SpringBoot Gradle多项目工程 最近想用Springboot做一个项目练手,但是发现在一个项目中运行两个Springboot的工程不会创建,在网上查了一些资料,记录一下创建多项目工程的步骤 1. 点击Idea下的File新建一个Project 2. 由于使用的Gradle,所以此处选择Gradle项目创建 3. GroupId可以不用填写,Art...

不学无数——Spring Cloud 中使用Feign解决参数注解无法继承的问题

Spring Cloud 中使用Feign解决参数注解无法继承的问题

Spring Cloud 中使用Feign解决参数注解无法继承的问题 在使用Feign的时候,通常先写一个接口类,然后再写实现类,根据官网的例子接下来编写一个简单的Feign的请求例子 @FeignClient("spring-cloud-eureka") public interface FeignDemoApi { @RequestMapping("/testFeign")...

不学无数——Feign源码解析——执行过程

Feign源码解析——执行过程

Feign源码解析——执行过程 在上一篇Feign源码解析——初始化流程中我们从注解为起点介绍了Feign是如何进行初始化参数、将Bean注入到Spring容器中的。接下来我们就介绍Feign是如何开始执行的。 回顾 在上一篇中我们了解到了Feign将自身的参数注入到Spring容器中是分两种类型进行注入的。 FeignClientSpecification :主要为名字和Co...

不学无数——如何使用Spring的FactoryBean接口

如何使用Spring的FactoryBean接口

如何使用Spring的FactoryBean接口 在Spring容器中有两类的Bean,一类是普通的Bean,一类是工厂Bean。这两种Bean都是被Spring的容器进行管理的。而Spring也提供了一个接口用于扩展工厂Bean,我们只要实现org.springframework.beans.factory.FactoryBean即可。 如何使用 首先我们看一下FactoryBean...

不学无数——Feign源码解析——初始化流程

Feign源码解析——初始化流程

Feign源码解析——初始化流程 首先我们在使用Feign的时候会加上两个注解,第一个是@EnableFeignClients开启Feign的功能,第二个是在修饰被调用方的接口加上这个注解@FeignClient而生成代理类。那么我们就根据这两个注解为入口进行解析。 @EnableFeignClients注解 @Retention(RetentionPolicy.RUNTIME) @T...

不学无数——FreeMarker对应各种数据结构解析

FreeMarker对应各种数据结构解析

FreeMarker对应各种数据结构解析 FreeMarker 是一个采用 Java 开发的模版引擎,是一个基于模版生成文本的通用工具。 FreeMarker 被设计用来生成 HTML Web 页面,特别是基于 MVC 模式的应用程序。虽然 FreeMarker 具有一些编程的能力,但通常由 Java 程序准备要显示的数据,由 FreeMarker 生成页面,并通过模板显示准备的数据...

不学无数——Eureka注册中心ip-Address参数详解

Eureka注册中心ip-Address参数详解

Eureka注册中心ip-Address参数详解 在Eureka中如果不指定任何的Ip参数的话,那么提供者注册到Eureka中,消费者进行消费的时候访问的Ip为部署Eureka服务器的Ip地址。 那么正常情况下,服务器A调用将会调到服务B的身上,而此时如果在服务B中加入了一下的参数。那么就变了 eureka.instance.prefer-ip-address=true eurek...

不学无数——Mybatis中Oracle和Mysql的Count字段问题

Mybatis中Oracle和Mysql的Count字段问题

Mybatis中Oracle和Mysql的Count字段问题 我们在进行项目开发时经常会碰到查询总数的问题,所以我们直接是用select count(1) from table来进行查询。那么在Mybatis通常情况下我们是这么写的 <select id="testCount" resultType="int"> select count(1) as "totalCo...