Kaka Blog

追求自我价值的实现

Git常用命令

仓库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码历史 $ git clone [url] 配置 # 显示当前的Git配置 $ git config --list # 编辑Git配置文件 $ git config -e [--global]...

Spring Boot(四):Logback日志记录

前言 Spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J, Log4J2和Logback。每种Logger都可以通过配置使用控制台或者文件输出日志内容。默认情况下,Spring Boot会用Logback来记录日志。不需要添加spring-boot-starter-logging...

Spring Boot(三):使用Swagger2构建API文档

前言 手写Api文档的几个痛点: 文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时。 接口返回结果不明确 不能直接在线测试接口,通常需要使用工具,比如postman 接口文档太多,不好管理 简介 为了解决上面这样的问题,本文将介绍RESTful API的重磅好伙伴Swagger2,它可以轻松的整合到Spring Boot中,并与Spring M...

Spring Cloud(五):服务网关Spring Cloud Zuul

简介 spring cloud zuul是netflix提供的一个组件,功能类似于nginx,用于反向代理,可以提供动态路由、监控、授权、安全、调度等边缘服务。 什么是API Gateway? 微服务场景下,每一个微服务对外暴露了一组细粒度的服务。客户端的请求可能会涉及到一串的服务调用,如果将这些微服务都暴露给客户端,那么会增加客户端代码的复杂度。 参考GOF设计模式中的Facade...

Spring Cloud(四):配置中心Spring Cloud Config

Spring Cloud Config简介 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库或SVN中。 在spring cloud config 组件中,分两个角色,一是c...

测试工具JMeter入门

简介 JMeter是一个软件,使负载测试或业绩为导向的业务(功能)测试不同的协议或技术。 它是Apache软件基金会的Stefano Mazzocchi JMeter的最初的开发。它主要对 Apache JServ(现在称为如Apache Tomcat项目)的性能进行测试。Apache后来重新设计JMeter 增强的图形用户界面和添加功能测试能力。这是一个具有图形界面,使用Swing 图形...

论基于构件的软件开发

摘要 本文通过我参与的某市公共信用信息大数据系统项目为实例,详细说明我作为该项目的项目经理,我是如何基于构件开发技术开发软件项目以及实施过程中碰到的问题和解决的办法。文章首先解释了基于构件的软件开发的基本概念,认为目前大多数开发单位的产品存在重复的功能模块,而重复的工作导致项目周期及开发成本不必要的增加,针对这一问题,提出了应该及时整理已有的系统,形成自己的企业构件库,针对性的选择构件,从...

Spring Cloud(三):负载均衡Ribbon基本使用

Ribbon版本:1.4.4.RELEASE Eureka版本:1.4.4.RELEASE Spring Boot版本:2.0.3.RELEASE Spring Cloud版本:Finchley.RELEASE Ribbon介绍 Ribbon是Netflix发布的负载均衡器,它有助于控制HTTP和TCP的客户端的行为。为Ribbon配置服务...

关于代码检查工具Findbugs的运用

介绍 Findbugs是一个静态分析工具,它检查类或者jar文件,将字节码和一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况下对软件进行分析。不是通过分析类文件的形式或结构来确定程序的意图,而是通常使用Visitor模式来鉴别代码是否符合一些固定的规范。Findbugs可作为一款插件用在Eclipse或 IntelliJ IDEA环境的编译器上。 错误...

MySQL中CASE WHEN、IF用法

CASE WHEN用法 CASE <单值表达式> WHEN <表达式值> THEN <SQL语句或者返回值> WHEN <表达式值> THEN <SQL语句或者返回值> ... WHEN <表达式值> THEN <SQL语句或者返回值> ELSE <...