- 博客(17)
- 收藏
- 关注
原创 Spring Boot MVC配置实现方案
配置区别Spring Boot是支持自动配置的webmvc的,我们来看看它的自动配置类。从这个配置类我们可以看出,一但应用上下文中出现WebMvcConfigurationSupport类,自动配置将不再生效,换句话讲就是只有你在WebMvcConfigurationSupport的子类中写那些配置会生效。另外当我们使用@EnableWebMvc注解时,同样会导致Spring Boot的自...
2020-03-19 21:55:46 378
原创 解决SpringBoo输出文档的title乱码问题
问题背景最近橙子开发中遇到一个问题,Spring Boot的输出文档内容出现了title乱码,但是文档内容并没有乱码。效果如下图所示橙子目前的项目是采用前后端分离开发的,前端使用的是基于umi封装的一套框架,后端是采用spring boot。但是不知道为什么集成到一起后项目出现乱码。原因看到这种问题究其原因肯定是编码导致的。打开游览器查看一下请求的响应编码一看,果然是的。输出文档的编码...
2020-03-19 20:50:17 507
原创 解决umi+maven打包的问题
umi是阿里的一个 前端框架,maven想要打包umi框架,必须要用到一个maven插件frontend-maven-plugin。但是不知道为什么在我的本地指定outputPath输出路径时并没有生效。还是输出到umi的默认打包路径/distbuild --outputPath ${project.build.outputDirectory}/META-INF/resourcesmaven...
2020-03-13 16:26:04 890
原创 快速在GitHub搭建一个规范的开源项目(五)
前面我们已经讲了如何在GitHub上创建一个团队,然后规范化开发流程,Issue创建与处理流程,以及如何接入CI和覆盖率报告。传送门:快速在GitHub搭建一个规范的开源项目(一)快速在GitHub搭建一个规范的开源项目(二)快速在GitHub搭建一个规范的开源项目(三)快速在GitHub搭建一个规范的开源项目(四)接下来本来是想跟大家讲一下如何发布一个开源项目到maven公库的,但是...
2020-03-12 12:13:52 339
原创 快速在GitHub搭建一个规范的开源项目(四)
前三篇博客快速在GitHub搭建一个规范的开源项目(一)快速在GitHub搭建一个规范的开源项目(二)快速在GitHub搭建一个规范的开源项目(三)我们已经介绍了如何初始一个团队并且制定了规范的开发流程和代码提交流程,Issue规范以及接入CI。接下来我们介绍如何统计项目的单侧覆盖率。这里我们用到的工具是codecov。官网链接其他集成非常简单,只要登录官网,然后关联GitHub账...
2020-03-11 20:52:54 468
原创 快速在GitHub搭建一个规范的开源项目(三)
上两篇博客快速在GitHub搭建一个规范的开源项目(一) 快速在GitHub搭建一个规范的开源项目(二)我们分别讲了如何如何初始一个团队并且制定了规范的开发流程和代码提交流程以及Issue规范。这一篇我们来讲一下如何规范的在GitHub上做持续集成。经常游览GitHub的同学可能发现,大一点的开源项目都会有这个两个标志。build passing和codecov。这两个标志分别代表单测通...
2020-03-11 20:18:47 467
原创 快速在GitHub搭建一个规范的开源项目(二)
上一篇博客快速在GitHub搭建一个规范的开源项目(一)我们讲了如何如何初始一个团队并且制定了规范的开发流程和代码提交流程。这一篇我们来讲讲如何正确使用Issue。很多人其实对Issue功能存在误解,认为Issue就是用来提交bug的,其实不然。GitHub上的Issue功能非常强大,使用好了的话完全可以充当一部分JIRA的功能,可以方便做版本复盘,以及收集需求,然后可以可以成为大家讨论问题的...
2020-03-11 18:35:35 658
原创 快速在GitHub搭建一个规范的开源项目(一)
前言最近橙子的团队在研究如何将团队内部的框架开源出来,以便让更多的人来参与到我们这几个框架的建设中来。其实,开源本身是一件非常好的事情。现代IT行业之所以如此快速的发展与开源脱离不了干系。很多人也许都有搭建自己的开源项目,然后发现过了几个月,项目还是寥寥数个star,也没啥人给你提issue。说到底还是你的开源项目不够规范,内容太杂乱。接下来,橙子一共分五篇文章来给大家讲述一下,到底如何搭建一...
2020-03-11 18:09:20 1349
原创 Spring中FactoryBean的正确用法
FacotryBeanSpring中一共有两种Bean。一种是普通的bean,一种是工厂bean。工厂bean注入到spring中的是其getObject()返回的对象实例。接下来我们通过两个例子来讲解如何正确的使用FactoryBean。下面这两个案例分别来自我们团队维护的两个开源项目:基于dubbo的远程SPI项目Spring策略框架大家有兴趣可以去了解一下案例一实现Facto...
2020-03-10 23:14:18 833
原创 spring data redis快速上手
本文讲述如何在spring boot中集成redis,并使用redis进行操作。下一篇我们讲redis实战maven配置如下:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</art...
2020-03-08 20:41:27 191 2
原创 Redis事务命令实现
Redis 事务Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证:批量操作在发送 EXEC 命令前被放入队列缓存。收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。一个事务从开始到执行会经历以下三个阶段:开始事务。命令入队。执行事务。案例以下是一个事务的例子,...
2020-03-08 16:46:39 160
原创 Redish订阅与发布机制
Redis 发布订阅Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Redis 客户端可以订阅任意数量的频道。下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 client1 之间的关系:当有新消息通过 PUBLISH 命令发送给频道 channel1 时, 这个...
2020-03-08 16:23:22 684
原创 Redis数据类型
String(字符串)string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。redis 127...
2020-03-08 13:13:23 90
原创 Redis入门
Redis 简介Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。Redi...
2020-03-08 12:29:25 108
原创 一文带你掌握Mapstruct用法
MapStruct用途在我们项目中,我们经常要处理将DTO转换成VO,DTO转成Entity等各类对象相互转换,如果我们采用BeanUtils工具类的copyProperty进行转换,很容易出现转换性能低,类型转换错误等问题。与其他转换工具相对,MapStruct具有以下优点:通过使用普通方法调用而不是反射来快速执行编译时类型安全性:只能映射相互映射的对象和属性,不能将订单实体意外映射到客...
2020-03-07 15:38:38 19057 1
原创 如何简单的使用Groovy+Spock写单测用例
概述 软件测试是软件开发中必不可少的流程之一,但是软件测试又全部都是测试人员的工作,作为开发人员最好也承担其中的一部分工作,因为开发人员了解自己的功能需要覆盖哪些必要的场景,而测试人员是帮你找到你没有覆盖到的场景。而且写单测用例能够有效的帮助项目做CI与DI。所以,既然是一件不可避免的事,我们何不让其变得简单呢。依赖与基础本人的项目环境如下:JDK8,Spring Boot 2.2.0....
2020-03-07 14:13:00 1147
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人