- 博客(88)
- 收藏
- 关注
转载 SpringBoot自定义Jackson配置
为了在SpringBoot工程中集中解决long类型转成json时JS丢失精度问题和统一设置常见日期类型序列化格式,我们可以自定义Jackson配置类,具体如下:import com.fasterxml.jackson.databind.ObjectMapper;import com.fasterxml.jackson.databind.module.SimpleM...
2019-07-17 17:48:00
1185
转载 Prometheus + Node Exporter + Grafana 监控主机运行信息
上一篇文章中讲了如何利用Prometheus和Grafana监控SpringBoot应用的JVM信息,这次就来看看如何监控服务器运行状态,先列出用到的工具:Prometheusnode_exporter 0.17GrafanaGrafana Dashboard(8919)Prometheus和Grafana的安装和配置上一篇文章已经讲过,这里...
2019-06-30 12:24:00
340
转载 Prometheus + Grafana 监控SpringBoot应用
一、用到的工具PrometheusGrafanaMicrometerGrafana Dashboard (4701)二、安装和运行Prometheus官网下载prometheus-2.9.1.linux-amd64.tar.gz并解压 2. 配置(修改Prometheus目录下的prometheus.yml文件)...
2019-06-27 17:28:00
280
转载 SpringBoot 参数校验
一、添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId></dependency>...
2019-06-02 22:23:00
155
转载 SpringBoot 快速集成 Elastic Job
一、引入依赖<dependency> <groupId>com.github.kuhn-he</groupId> <artifactId>elastic-job-lite-spring-boot-starter</artifactId> <version>2.1.53&...
2019-05-26 11:10:00
164
转载 自定义日志注解 + AOP实现记录操作日志
需求:系统中经常需要记录员工的操作日志和用户的活动日志,简单的做法在每个需要的方法中进行日志保存操作,但这样对业务代码入侵性太大,下面就结合AOP和自定义日志注解实现更方便的日志记录首先看下一个简单的操作日志表action_logidsubject(日志主题)content(日志内容)create_bycreate_time...
2019-05-19 11:15:00
268
转载 SpringBoot整合MyBatis-Plus实现快速业务功能开发
概览:使用MybatisPlus和它的代码生成整合SpringBoot可以实现快速的业务功能开发,具体步骤如下一、添加依赖<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId>...
2019-05-17 17:41:00
348
转载 URLEncode解决url中有特殊字符的问题
问题:图片上传后的url地址中有&等特殊字符,页面传到后端时被自动处理成了&解决:前端对url进行URLEncode,后端收到后进行URLDecode总结:需要在请求url中传递回调地址或下载url等类似的情况时,需要先进行URLEcode避免中文字符和一些特殊字符转载于:https://www.cnblogs.com/gdufs...
2019-05-14 09:12:00
3530
转载 监控系统概览
分类基础资源监控(CPU、内存、网络、存储)中间件监控(缓存、消息、Web容器、数据库)应用程序监控(APM,如Pinpoint、Zipkin)日志监控(ELK、GrayLog)核心指标(Metric)采集数据存储数据处理数据展现告警数据分析选型Zabbix(适合传统监控,容器支持差...
2019-04-20 17:27:00
180
转载 SpringBoot 上传文件夹
前端代码:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>upload</title></head><body><form action="h...
2018-12-24 14:03:00
298
转载 Java定时清理过期文件
项目中经常需要自动定时去清理一些过期文件,这个其实Java实现挺简单的,核心部分就2个,一个定时任务,一个递归删除文件,不过前提是你的文件放在以“2018-12-05”这样命名的文件夹下,下面直接上核心代码:1. 递归删除文件/** * 递归删除文件夹下所有文件 * @param file */ public stati...
2018-12-05 15:18:00
862
转载 GrayLog + Logspout + Docker 实现分布式日志聚合
前提条件:你的服务器上已经安装了Docker和Docker Compose一、安装GrayLog(Docker方式)version: '2'services: mongodb: image: mongo:3 volumes: # Persisting data - ./data/mongo:/data/...
2018-10-10 17:06:00
241
转载 基于Spring Security OAuth2搭建的Spring Cloud 认证中心
Github传送门:https://github.com/13babybear/bounter-springcloud实现功能有:整合JWT刷新Token自定义客户端储存自定义用户储存资源服务器JWT本地鉴权密码Bcrypt加密支持的授权模式:客户端用户名密码授权码转载于:https://www.cnblog...
2018-09-28 15:33:00
381
转载 快速搭建Docker Registry私有仓库
前提条件:服务器已经安装Docker(我的服务器是CentOS 7)服务器已经安装Docker Compose满足以上条件时就可以开始搭建了:1. 生成用户密码文件:(运行下面命令后会在当前目录的auth目录下生成文件htpasswd,用户名:bounter,密码:111111)$ mkdir auth$ mkdir data$ d...
2018-09-06 17:58:00
91
转载 让你的Spring Boot应用快速运行在Docker上面
前置条件:1. 服务器(我这边是CentOS7)上已经安装了Docker(安装步骤很简单,可以参考我上一篇博客)2.服务器上已经安装了Java和Maven在满足以上条件后,我们就可以开始了:1. 创建一个简单的Spring Boot应用,应用只有一个控制器DockerController,内容如下:package cn.bounter.docker...
2018-08-31 10:36:00
84
转载 CentOS 安装 Docker
前言:其实安装步骤Docker官网很详细,如果有些人英文不好看的比较慢的话就可以直接看我的,我也是摘自官网,具体步骤如下1.安装依赖包$ sudo yum install -y yum-utils \ device-mapper-persistent-data \ lvm22.安装yum库$ sudo yum-config-ma...
2018-08-31 10:21:00
72
转载 Spring Cloud微服务集成配置中心
1. 搭建Spring Cloud Config配置中心(见上一篇博客)2. 创建微服务项目bounter-simon-app,pom文件如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi...
2018-08-22 14:06:00
130
转载 Spring Cloud配置中心搭建(集成Git)
1. 在Github(或其他)创建配置中心仓库bounter-config-repo,然后在仓库创建两个配置文件:simon.properties、susan.properties,链接如下:https://github.com/13babybear/bounter-config-repo2. 基于SpringBoot创建配置服务器项目bounter-config...
2018-08-22 12:01:00
143
转载 SpringBoot 整合 Dubbo 进行分布式开发
自从Dubbo支持SpringBoot后,Dubbo与Spring的整合变得更加的简单了,下面就是完整的步骤:1. 引入依赖<dependency> <groupId>com.alibaba.boot</groupId> <artifactId>dubbo-spring-boot-starte...
2018-08-03 15:21:00
89
转载 MongoDB在CentOS上的安装和配置
1. 创建mongodb-org-4.0.repo文件,并放入/etc/yum.repos.d目录下,repo文件内容如下[mongodb-org-4.0]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/...
2018-08-02 15:36:00
94
转载 快速搭建一个Spring Boot + MyBatis的开发框架
前言:Spring Boot的自动化配置确实非常强大,为了方便大家把项目迁移到Spring Boot,特意总结了一下如何快速搭建一个Spring Boot + MyBatis的简易文档,下面是简单的步骤。1、IDEA创建一个Spring Boot项目,起步依赖选择web、mysql、mybatis就行,需要注意的是为了打成war包部署到Tomcat,需要把<pa...
2018-08-02 10:26:00
111
转载 Elasticsearch 安装和配置
1. 下载并解压wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.0.tar.gz2. 更改网络配置,让外网可以访问(vi/home/elasticsearch-6.3.0/config/elasticsearch.yml)network.hos...
2018-07-05 15:09:00
69
转载 常见的HTTP状态码
下面都是我个人工作中最经常碰到的状态码,那些比较少出现的就没有列出来了301(永久移动)302(暂时转移)304(未修改,数据没有更新,和缓存一致)400(通常是参数错误)401(没有认证)403(没有权限,禁止访问)405(Method方法不允许)415(请求体的数据格式服务器不支持,如服务器要求json但客户端发的普通表单参数)500(服务...
2018-05-22 12:22:00
76
转载 实现JWT刷新机制以及让过期时间更精确
借助accessToken和refreshToken实现accessToken控制刷新间隔,refreshToken控制最长过期时间Min过期时间 = refreshToken过期时间 - accessToken过期时间Max过期时间 = refreshToken过期时间实际过期时间是一个范围,在(Min过期时间 ~ Max过期时间)之间如...
2018-05-09 18:06:00
2353
转载 Nginx location 正则篇
location 前缀没有前缀 匹配以指定模式开头的location= 精准匹配,不是以指定模式开头~ 正则匹配,区分大小写~* 正则匹配,不区分大小写^~ ...
2018-03-25 10:28:00
126
转载 解决前后端分离后的Cookie跨域问题
一. 前端Ajax关键配置$.ajax({ type: "post", url: xxx, data: xxx, contentType: 'application/json', dataType: "json", xhrFields: { withCredentials: true }, success...
2018-02-11 17:03:00
591
转载 Java对象模型规约
下面是我根据工作中项目的经验,总结的一套自己觉得比较方便的对象模型规约model(实体模型) -vo(与前端交互的对象模型,前端泛指页面、移动端和远程服务调用等) -xxxReq(前端发送的请求json对应的实体) -xxxResp(返回给前端的响应json对应的实体) -po(与持久层交互的对象模型...
2017-12-03 18:50:00
153
转载 推荐的增删改查接口命名规范
前言:开发团队一般因为没有统一的命名规范而随意命名导致很难根据方法名去快速知道方法作用,如果能约定一套统一的命名规范,肯定可以大大减少大家的沟通成本。因此,就推荐给大家一套常用的增删改查的命名Dao 接口命名insertbatchInsertselectOneselectByIdcountselectListupdatedel...
2017-11-24 14:30:00
1541
转载 借助dubbo-admin来管理你的服务
1. Github上下载最新的dubbo源码包并解压2. 修改配置信息(打开 dubbo-admin/src/main/webapp/WEB-INF下的dubbo.properties,修改 )dubbo.registry.address=zookeeper://your_ip:2181dubbo.admin.root.password=your_...
2017-11-23 11:21:00
71
转载 5分钟搞定Nginx安装
1. 安装gcc(centos 7之后一般已自带,可以在第6步失败后再安装)yum install gcc gcc-c++2. 安装pcreyum install -y pcre pcre-devel3. 安装zlibyum install -y zlib zlib-devel4. 安装opensslyum install -y o...
2017-11-21 21:28:00
88
转载 关于Dubbo和Spring异步注解@Async的冲突
项目中难免会有异步处理的需求,像异步记录日志啦,异步发送邮件啦,而Dubbo又是现在主流的分布式框架,所有异步+Dubbo的组合是再所难免的但博主是实践中发现Dubbo的服务并不能很好的跟Spring的@Async异步注解共存,否则会直接报错解决方法时直接使用Dubbo自己的异步方法,栗子如下://声明为异步Dubbo服务@Service(async = t...
2017-11-17 12:46:00
904
转载 查看和解除Linux系统对用户使用资源的限制
查看当前系统资源限制 ulimit -a设置用户的最大进程数(重启后失效) ulimit -u 1024设置用户可以打开的最大文件句柄数(重启后失效) ulimit -n 65530说明:现在阿里云的服务器一般都会帮你设置好了,还有,上面的方法只是快速修改,不能永久生效,如果想永久生效,就得修改相应的...
2017-11-17 12:37:00
439
转载 Spring 邮件发送
前言:以前都是直接用Java自带的邮件工具发送邮件,现在Spring帮我们做了封装,提供了更好用更简单的发送邮件工具JavaMailSender关于邮件服务器的设置就不在这里说了,直接去QQ邮箱设置下就好,下面看下主要的步骤:步骤一、添加发送邮件相关Maven依赖 <!-- Spring 邮件发送 --> &...
2017-11-16 15:12:00
89
转载 分布式一致性哈希算法
一致性哈希算法是一种分布式哈希算法,主要是为了解决互联网中的热点(Hot spot)问题计算公式hash(服务器IP地址) % 2^32hash(对象) % 2^32将对象Hash后的值映射到顺时针最近的一台服务器上Java实现package com.bounter.mybatis.util;import java....
2017-11-03 11:29:00
96
转载 Java实现三大简单排序算法
一、选择排序public static void main(String[] args) { int[] nums = {1,2,8,4,6,7,3,6,4,9}; for (int i=0; i<nums.length; i++) { for (int j=i+1; j<nums.length; j++) { ...
2017-10-23 23:05:00
112
转载 Java二维码生成与解码
基于google zxing 的Java二维码生成与解码一、添加Maven依赖(解码时需要上传二维码图片,所以需要依赖文件上传包)<!-- google二维码工具 --><dependency> <groupId>com.google.zxing</groupId> <artifactId&...
2017-07-25 20:08:00
178
转载 第三方支付之微信支付(扫码支付)
第一步:注册微信支付账户,开通扫码支付具体流程请参照官方说明第二步:创建Maven项目1. 添加微信支付SDK依赖、二维码工具依赖(微信支付需要自己通过二维码工具生成支付二维码) <!-- 微信支付 --> <dependency> <groupId>co...
2017-07-24 20:35:00
664
转载 第三方支付之支付宝(电脑网站支付)
第一步:蚂蚁金服开放平台注册账号该步骤的详细流程请参考蚂蚁金服官方说明,本示例主要关注Java后台代码的实现第二步:下载SDK,安装到本地或远程Maven仓库1. 进入下载的SDK的如下目录alipay.trade.page.pay-JAVA-UTF-8\WebContent\WEB-INF\lib2. 安装alipay-sdk-jav...
2017-07-24 20:24:00
671
转载 集成第三方开放平台
目前国内常见的第三方开放平台有:QQ开放平台微信开放平台蚂蚁金服开放平台新浪微博开放平台我们可以通过集成这些第三方平台来实现:第三方登录第三方支付内容分享到第三方平台获取第三方平台用户资源......下面以新浪微博开放平台的第三方登录为例看下Java系统具体的集成步骤,QQ和微信类似,只需少许修改(具...
2017-07-18 22:37:00
289
转载 Spring动态数据源实现读写分离
一、创建基于ThreadLocal的动态数据源容器,保证数据源的线程安全性package com.bounter.mybatis.extension;/** * 基于ThreadLocal实现的动态数据源容器,保证DynamicDataSource的线程安全性 * @author simon * */public class DynamicD...
2017-07-11 20:40:00
104
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人