自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 持续集成工具Jenkins

1. 从装修厨房看项目开发效率优化1.1. 持续部署装修厨房全部装好之后发现灯不亮,电路有问题;冷热水装反了,管路有问题。这些问题要解决就必须把地砖、墙砖拆掉——一个环节有问题,其他环节跟着返工。那怎么做会好一些呢?任何安装完成及时测试,确保其可以正常工作。项目开发开发过程中进行单元测试能够通过,但是部署到服务器上运行出现问题。那怎么做会好一些呢?仅仅单元测试还不够,各个...

2020-05-18 10:43:59 347

原创 消息队列在项目中的使用

背景:在分布式系统中是如何处理高并发的。由于在高并发的环境下,来不及同步处理用户发送的请求,则会导致请求发生阻塞。比如说,大量的insert,update之类的请求同时到达数据库MYSQL,直接导致无数的行锁表锁,甚至会导致请求堆积很多。从而触发 too many connections 错误。使用消息队列可以解决【异步通信】。1.异步2.并行3.排队消息队列电商使用场景:消息...

2020-05-18 10:40:33 235

原创 图文讲解MySQL安装配置(超详细)

MySQL数据库下载地址:https://dev.mysql.com/downloads/mysql/,本文以mysql-5.5.27-win32为例讲解MySQL数据库的安装配置。一、MYSQL的安装打开下载的mysql安装文件mysql-5.5.27-win32.zip,双击解压缩,运行“setup.exe”。选择安装类型,有“Typical(默认)”、“Complete(完全)”...

2019-12-25 16:39:55 249

原创 Java多线程学习(二)

今日内容介绍线程安全线程同步死锁Lock锁等待唤醒机制第1章 多线程1.1 线程安全如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。我们通过一个案例,演示线程的安全问题电影院要卖票,我们模拟电影院的卖票过程。假设要播放的电影是 “功夫熊猫3”,本次电影的座位共100...

2019-12-25 16:12:29 270

原创 重置MySQL数据库root用户密码

一、 方法一找到MySQL数据库安装目录下的my.ini文件,并在[mysqld]节点下添加skip-grant-tables配置;重启MySQL服务;重新连接MySQL,此时的MySQL不需要密码即可登录数据库(提示输入密码直接回车即可);重新设置root用户密码;删除my.ini修改,重启MySQL服务,再用新密码连接MySQL数据库即可。...

2019-12-20 14:42:30 161

原创 Java反射学习笔记

内容介绍类加载器反射构造方法反射成员变量反射成员方法反射配置文件运行类中的方法第1章 类加载器1.1类的加载当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。加载就是指将class文件读入内存,并为之创建一个Class对象。任何类被使用时系统都会建立一个Class对象。连接验证:是否有正确的内部结构,并和其他...

2019-12-19 15:45:27 99

原创 POI使用教程

1. POI简介Apache POI是Apache软件基金会的开放源码函式库,POI提供API让Java程序对Microsoft Office格式的文档进行读写操作。2. HSSF概况HSSF 是Horrible SpreadSheet Format的缩写,通过HSSF,你可以用纯Java代码来读取、写入、修改Excel文件。HSSF 为读取操作提供了两类API:usermodel和even...

2019-12-18 18:25:42 6393 1

原创 PinYin4j使用教程

Pinyin4j是一个很流行的Java库,支持中文字符和拼音之间的转换,拼音输出格式可以定制,在项目中经常会遇到需求用户输入汉字后转换为拼音的场景,这时候Pinyin4j就可以派上用场。其官网为:http://pinyin4j.sourceforge.netPinyin4j支持方式:支持简体中文和繁体中文字符。支持转换到汉语拼音,通用拼音, 威妥玛拼音(威玛拼法), 注音符号第二式, 耶鲁...

2019-12-18 17:44:57 4137

原创 Java多线程学习(一)

1. 多线程1.1 多线程介绍学习多线程之前,先要了解几个关于多线程有关的概念。进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。线程:线程是进程中的一个个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这样的应用程序也可以称之为多线程程序。简而言之:一个程序...

2019-12-13 14:34:56 158

原创 Java正则表达式

(为了能看清,本文正则表达式用中文的句号代替英文句点)1. 正则表达式中的符号含义英文句点符号:匹配单个任意字符。如:表达式t。o可以匹配:tno,t#o,teo等等,不可以匹配:tnno,to,Tno,t正o等。方括号:只有方括号里面指定的字符才参与匹配,也只能匹配单个字符。如:表达式:t[abcd]n 只可以匹配:tan,tbn,tcn,tdn,不可以匹配:thn,tabn,tn...

2019-12-12 18:32:26 114

原创 Java排序方法大全

前言关于稳定排序和不稳定排序通俗地讲就是能保证排序前两个相等的数其在序列的前后位置顺序和排序后它们两个的前后位置顺序相同。在简单形式化一下,如果Ai = Aj,Ai原来在位置前,排序后Ai还是要在Aj位置前。问题来了,什么时候必须要求使用稳定排序呢?由上面的定义可知道稳定性排序保证了排序前两个相等的数其在序列的前后位置顺序和排序后它们两个的前后位置顺序相同。那么,当现实应用中排序的需求需...

2019-12-12 17:36:21 239

原创 Eclipse快捷键大全

Ctrl+1快速修复(最经典的快捷键,就不用多说了)Ctrl+D删除当前行Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Al...

2019-12-12 15:32:09 75

原创 float数据在内存中如何存储?

float类型的数字在计算机中用4个字节存储。遵循IEEE-754格式标准,即:一个浮点数由2部分组成:底数m和指数e。底数部分:使用二进制数来表示此浮点数的实际值,占三个字节;指数部分:用一个字节,即8bit的二进制数,可表示数值范围为0—255。但是指数可正可负,所以,IEEE规定,此处算出的次方必须减去127才是真正的指数。所以,float类型的指数可从-126到128底数部分实际...

2019-12-12 14:58:15 684

原创 Webpack1.X快速入门教程

前言本教程基于Webpack1.X,请注意。1. Webpack概述1.1. 什么是webpack?Webpack是一个模块打包器(bundler)。在Webpack看来,前端的所有除了html外的资源文件(js/css/img/less/…)都会作为模块处理。它将根据模块的依赖关系进行静态分析,生成对应的静态资源1.2. 理解LoaderWebpack 本身只能加载JS模块...

2019-11-22 18:17:32 171

原创 NodeJS入门教程

1. NodeNode是对ES标准一个实现,Node也是一个JS引擎;通过Node可以使JS代码在服务器端执行;Node就是一款使用JS编写的web服务器;Node仅仅对ES标准进行了实现,所以在Node中不包含DOM 和 BOM ;Node中可以使用所有的内建对象,而BOM和DOM都不能使用,但是可以使用 console 也可以使用定时器(setTimeout() setInterv...

2019-11-22 11:25:12 353

原创 Java网络编程

1. 网络编程概述1.1. 什么是网络编程?计算机网络:是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。网络编程:就是用来实现网络互连的不同计算机上运行的程序间可以进行数据交换。1.2. 网络模型计算机网络之间以何种规则进行通信,就是网络模型研究问题。网络模...

2019-11-21 09:41:50 335

原创 深入学习roadhog

1. roadhog概述1.1. roadhog是什么?简单来说,roadhog是可配置的react-create-app。由于 create-react-app 的默认配置不能满足需求,而他又不提供定制的功能,于是基于他实现了一个可配置版。所以如果既要 create-react-app 的优雅体验,又想定制配置,那么可以试试 roadhog 。roadhog和dvaJS是由同一个作者开源的...

2019-11-20 16:16:18 3329

原创 自动化构建工具—Maven

导语生产环境下开发不再是一个项目一个工程,而是每一个模块创建一个工程,而多个模块整合在一起就需要使用到像 Maven 这样的构建工具。1. Why?1.1. 真的需要吗?Maven 是干什么用的?这是很多同学在刚开始接触 Maven 时最大的问题。之所以会提出这个问题,是因为即使不使用 Maven 我们仍然可以进行 B/S 结构项目的开发。从表述层、业务逻辑层到持久化层再到数据库都有成熟的...

2019-11-19 14:50:49 223

原创 Java8新特性

1. 主要内容接口的新特性注解的新特性集合的底层源码实现新日期时间的APIOptional类的使用Lambda 表达式(Lambda Expressions)Stream API2. Java8新特性Java 8 (又称为 jdk 1.8) 是 Java 语言开发的一个主要版本。 Java 8 是oracle公司于2014年3月发布,可以看成是自Java 5 以来最具革命性的...

2019-11-18 18:52:37 191

原创 nginx入门教程

1. 什么是nginx?Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。2.应用场景http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。虚拟主机。可以实现在...

2019-11-18 12:27:06 103

原创 Redis入门教程

1. Redis的安装1.1. Redis的安装Redis是c语言开发的。安装redis需要c语言的编译环境,如果没有gcc需要在线安装,命令为:yum install gcc-c++安装步骤:第一步:redis的源码包上传到linux系统。第二步:解压缩redis。第三步:编译。进入redis源码目录。make第四步:安装。make install PREFIX=/usr/l...

2019-11-18 11:44:58 87

原创 Quartz框架入门

1. 什么是QuartzQuartz是OpenSymphony开源组织在Job scheduling领域的开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的Java组件或 EJBs。Quartz是一个任务日程管理系统,一个在预先确定(被纳入日程)的时间到达时,负责执行...

2019-11-14 09:39:30 137

原创 Dubbo框架入门

1. Dubbo原理概述Dubbo是阿里巴巴开源出来的一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及作为SOA服务治理的方案。它的核心功能包括:remoting:远程通讯基础,提供对多种NIO框架抽象封装,包括“同步转异步”和“请求-响应”模式的信息交换方式。Cluster:服务框架核心,提供基于接口方法的远程过程调用,包括多协议支持,并提供软负载均衡和容错机制...

2019-11-12 18:31:36 82

原创 Cookie 工具类

import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servle...

2019-11-12 18:14:49 131

原创 Excel工具类

import java.io.IOException;import java.io.InputStream;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Date;import java.util.List;import org.apache.poi.hssf.usermode...

2019-11-12 18:10:29 324

原创 发送http的get和post请求的工具类2

import java.io.IOException;import java.net.URI;import java.util.ArrayList;import java.util.List;import java.util.Map;import org.apache.http.NameValuePair;import org.apache.http.client.entity.Url...

2019-11-12 18:06:26 191

原创 发送http的get和post请求的工具类1

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.util.Map;import org.apache.http.client.config.RequestConfig;impor...

2019-11-12 18:02:58 93

原创 Redis工具类

import java.util.Set;import java.util.concurrent.TimeUnit;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.StringRedisTemplate;import org.sp...

2019-11-12 17:55:57 76

原创 资源文件读取工具类

import java.io.Serializable;import java.text.MessageFormat;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.Locale;import java.util.ResourceBundle;imp...

2019-11-12 17:54:00 85

原创 ftp上传下载工具类

import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.Outpu...

2019-11-12 17:49:19 66

原创 邮件发送工具类

import java.util.Properties;import javax.mail.Authenticator;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.PasswordAuthentication;import javax.mail.Session;impo...

2019-11-12 17:45:58 93

原创 日志框架Log4j和Slf4j入门教程

1. Log4j1.1 介绍Log4j是Apache的一个开放源代码项目,通过使用Log4j,可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器等;也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。1.2 是什么?一个开源的、轻量级的、用...

2019-11-08 12:23:05 294

原创 Java8新特性——Stream

1. stream概述Java8 也出来好久了,接口默认方法,lambda 表达式,函数式接口,Date API 等特性还是有必要去了解一下。比如在项目中经常用到集合,遍历集合可以试下 lambda 表达式,经常还要对集合进行过滤和排序,Stream 就派上用场了。用习惯了,不得不说真的很好用。Stream 作为 Java8 的新特性,基于 lambda 表达式,是对集合对象功能的增强,它专注...

2019-11-07 15:38:17 490 1

原创 React和dva项目前端问题详解

1. config文件单独打包在前端项目根目录建立文件webpack.config.js ,若存在,则在里面修改代码。webpack.config.js里面代码如下。let webpack = require('webpack');let path = require('path');export default function (config, env) { Object.a...

2019-11-05 18:41:31 827

原创 Git新手入门

1. 前言本文的阅读对象主要是对Git使用没有什么经验的人群,主要介绍一些Git的基本概念和操作,以及推荐一些常用的工具,无法为大家解决所有Git使用过程中遇到的问题,在遇到具体问题时大家可以google或者百度查找解决方法。2. Git基本介绍2.1. 什么是Git?Git是一款分布式版本管理系统,是现在最主流的版本管理系统。2.2. Git与SVN有哪些区别?相对于Git的分布式管...

2019-11-04 17:34:12 117

原创 SpringBoot2.0项目集成Swagger

1.Swagger介绍Swagger是一个简单又强大的能为你的Restful风格的Api生成文档工具。在项目中集成这个工具,根据我们自己的配置信息能够自动为我们生成一个api文档展示页,可以在浏览器中直接访问查看项目中的接口信息,同时也可以测试每个api接口。Swagger生成的api文档是实时更新的,你写的api接口有任何的改动都会在文档中及时的表现出来。  Spring提供了一个与Swa...

2019-10-31 10:59:39 181

原创 接口响应数据封装工具类

import com.szewec.framework.mybatisplus.plugins.pagination.Page;import java.util.List;/** * 接口响应数据封装工具类 * */public class ResponseUtil { /** * 操作成功,返回没有分页的列表 * * @param record...

2019-10-31 10:36:36 299

原创 Java http接口返回值封装实体类

public class RequestMessage { /* 服务器成功返回用户请求数据的状态码 */ public static String SUCCESS_GETS_CODE = "200"; /* 服务器成功返回用户请求数据的提示信息 */ public static String SUCCESS_GETS_MSG = "ok"; /* 新建或...

2019-10-31 10:32:25 3185

原创 调用公用流完成excel的导入导出

import org.apache.commons.io.FileUtils;import org.apache.poi.ss.usermodel.Cell;import org.apache.poi.xssf.usermodel.XSSFRow;import org.apache.poi.xssf.usermodel.XSSFSheet;import org.springframewor...

2019-10-31 10:27:24 106

原创 Java参数校验工具类--正则表达式校验

本文档中收集整理了一些Java开发中常用的正则表达式,使用其可对常见类型进行校验!import java.util.regex.Matcher;import java.util.regex.Pattern;public class ValidateUtil { /** * 整数 */ private static final String V_INTEG...

2019-10-31 09:59:22 1264

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除