4 BlueKitty1210

尚未进行身份认证

以微观之处证宏观,借他人之事鉴己身~

等级
博文 105
排名 1w+

CSS 实现必填项前/后添加红色星号

1.常规写法<label><spanstyle="color:red;">*</span>用户名:</label><inputtype="text"value=""/>2.CSS写法(更简洁方便,而且便于统一调整样式)<style>label.xreuiredbefore...

2019-05-21 21:22:05

微服务概念详细介绍

目录一、单机服务到微服务的演变二、微服务的定义三、微服务为我们解决了哪些问题四、当前微服务面临的挑战五、结语一、单机服务到微服务的演变微服务,顾名思义就是“微小的服务”。主要就是从两个方面进行理解,什么是“微”?什么是“服务”?当然,服务的意思很好理解,就是实际工作中的一个完整的生产项目,例如淘宝网站,微信软件等等。然后再让我们通过下文来理解为什么要细化到“微”这个量级...

2019-04-26 09:50:09

Idea结合Maven的profile配置实现动态切换环境(不修改代码)

之前的切换环境的方式,就是在application.properties中配置spring.profiles.active=dev,然后通过修改dev为test或prod来切换项目环境,这样做的话每次切换环境都要重新改一下配置,而且如果不小心把本地改动提交到中央仓库了,可能会影响到其他同事拉取代码.maven中提供了一个profile配置项,可以在打包时动态的指定环境...

2019-04-25 17:05:08

高级JAVA - 动态代理的实现原理和源码分析

在之前的一篇文章中,我们简单了解了一下代理模式(JAVA设计模式-代理模式),本篇我们来学习一下动态代理的实现原理,以及源码是怎样的.JDK动态代理的主要实现步骤如下:1.声明一个handler类,实现InvovationHandler接口,然后重写它的invoke方法,在此方法中完成扩展逻辑.在生成动态代理类之后,原方法的调用就是会执行这个...

2019-04-23 18:35:00

JAVA设计模式 - 代理模式

在对象的一个业务方法完成之后,有时候我们可能需要去添加一些新的功能(前置校验等).但我们又不想更改原来的代码,代理模式就为我们提供了一种解决方案.1.代理模式的定义代理模式就是在不改变原有代码的基础上,实现对目标对象的功能扩展.以现实的情况为例,目前有一个艺人,她会表演和唱歌.现在想扩展一个行为来为这个艺人来接通告,通常情况下我们是不想把这个业务交给原...

2019-04-23 17:41:32

解决layui laydate动态创建多个时不起作用点击无效的问题

最近在一个表单中有个自定义日期选项,用户每点击一次按钮就动态增加一行日期选择框.我选择了laydate框架来完成,但在新生成的日期组件中,除了第一个生成的外,其他的点击和选择都不起作用.或者是闪了一下立刻消失了.通过排查问题及网上搜索终于定位原因.我们在每次动态生成laydate组件时,laydate框架会给input输入框增加一个lay-key="1",这样...

2019-04-22 16:24:40

MySql计算环比

目标:统计每天的点击数量,并计算当天相对前一天的环比增长环比计算公式:(本期数-上期数)/上期数*100,反映本期比上期增长了多少为方便理解,假设当前已经有一张表,里面存了每天的数量CREATETABLE`tb`(`id`int(11)NOTNULLAUTO_INCREMENTCOMMENT'自增主键',`dat...

2019-04-16 19:23:48

logback配置文件详解

logback配置文件详解<?xmlversion="1.0"encoding="UTF-8"?><!--根节点,logback的全局配置,包含3个属性scan:当文件发生变更时是否重载,默认值turescanPeriod:监测文件的间隔时间,即每隔多少时间扫描一次配置文件仅当scan=true时生效.默认间隔时间1...

2019-04-16 12:10:08

logback利用mdc机制为日志增加traceId

1.增加LogMdcFilterpackagecn.xbz.common.filter;importorg.slf4j.MDC;importjavax.servlet.*;importjavax.servlet.annotation.WebFilter;importjava.io.IOException;/***@title为logback日志增加tra...

2019-04-12 12:08:10

【SpringCloud从0到6】 第二节:注册中心 - eureka

从本节开始,我们就正式开始编写一个cloud基础微服务了,为了代码更简洁及更方便入门,在此采用了maven子模块的结构.1.创建maven主模块,配置cloud相关参数pom配置如下:<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.or...

2019-04-12 10:28:20

Maven 单独构建多模块项目中的子模块

在多模块的maven项目中,如果需要部署某个子模块,单独构建则会报错,如果构建整个项目,又会非常耗时.maven为自定义构建部分项目提供了支持:-pl,--projects构建指定的模块,模块间用逗号分隔;适合无依赖的项目-am,--also-make(常用)同时构建所列模块的依赖模块,比如A依赖B,B依赖C,构建B,同时构建C-am...

2019-04-11 16:28:42

屏蔽Idea中"不合理"的提示警告

当然,Idea的提示警告功能是为了让代码更安全标准,但在实际编码中,我们可能不需要这些善意的提醒.所以我们要设法屏蔽它.在Settings->Editor->Inspections我们可以更改提示/警告的设置.1.提示public方法转为private方法2.提示某个参数替换为常量...

2019-04-11 16:12:10

Intellij Idea插件利器推荐大全

名称 简介 快捷键/说明(个人) 插件介绍地址 推荐星级 Jrebel 热部署,修改类文件即时生效 地址 ★★★★★ KeypromoterX 基于Keypromoter,提示各种操作对应的快捷键(如果有),把相关操作自定义为快捷键 地址 ★★★★★ FreeMyBatisplugin...

2019-04-11 15:46:09

【SpringCloud从0到6】 第二节:Spring Cloud 和 Dubbo

1.框架背景当前主流上较常用的java微服务框架,就是cloud和dubbo.dubbo是阿里公司开源的RPC框架,背景很优秀,技术也是一等一的强,在springcloud之前的年代也是很辉煌的,后来阿里停止维护了大概2年多的时间,中间有人提了些bug和意见都没人搭理.后来cloud强势崛起后把微服务的概念又炒的火热起来,dubbo又恢复维护和更新...

2019-04-10 11:31:24

Intellij idea利用Statistic插件统计项目代码行数

1.插件介绍统计项目中各个文件的数量,大小,行数,平均等信息 根据扩展名自定义统计详细行数信息,包括总行数,代码行数,代码行数占比,注释行数,注释行数占比,空白行数,空白行数占比 自定义选择多个文件,统计各个文件信息 本插件需要JDK8或以上版本2.插件安装利用在线或离线方式安装Statistic插件到idea中(idea的插件安装详见Idea插件安装和管理)插...

2019-04-10 11:07:40

Java按行分割文件

方式一:/***按行分割文件*@paramsourceFilePath为源文件路径*@paramtargetDirectoryPath文件分割后存放的目标目录*@paramrows为多少行一个文件*/publicstaticintsplitFileByLine(Stringsourc...

2019-04-04 14:46:09

java高效获取大文件的行数

方式1:利用LineNumberReaderpublicstaticintgetFileLineNum(StringfilePath){try(LineNumberReaderlineNumberReader=newLineNumberReader(newFileReader(filePath))){lineNumberReader.sk...

2019-04-01 15:24:39

【SpringCloud从0到6】 第一节:初识微服务&微服务的雪崩效应

1.传统单机服务概念:所有的功能模块全部写在一起,打到一个war包里进行发布,除了容器(Tomcat等)以外基本没有其他依赖.它的结构图如下:单机服务中,一个模块包含了UI展示/业务处理/数据交互等所有的内容.它主要适用于初创团队或规模不大的公司进行的中小项目.主要有以下优势:开发简单直接,单个项目集中式管理 所有的功能业务都在一块,...

2019-03-29 15:18:53

MySql生成随机数/随机字符串/随机姓名

--随机0-1selectfloor(rand()*2);--随机布尔值selectif(floor(rand()*2)=1,'是','否');--随机2位小数selectconvert(floor(rand()*70+30)/100,decimal(10,2));--随机N位字符串selectsubstr(md5(rand(...

2019-02-14 13:40:49

js中常用的日期处理函数

/**时间戳转字符串*/functionlong2Str(time,format='yy-MM-ddHH:mm:ss'){if(!time||time<=0){return'';}vardate=newDate(time);varyear=date.getFullYear(),...

2019-01-16 15:12:10
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。