自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

风尘博客

我有一杯酒,可以慰风尘。

  • 博客(59)
  • 收藏
  • 关注

原创 Mysql高性能优化规范(一):设计规范

文章目录一、数据库命令规范二、数据库基本设计规范2.1、所有表必须使用Innodb存储引擎2.2、数据库和表的字符集统一使用UTF82.3、所有表和字段都需要添加注释2.4、尽量控制单表数据量的大小,建议控制在500万以内2.5、谨慎使用MySQL分区表2.6、尽量做到冷热数据分离,减小表的宽度2.7、禁止在表中建立预留字段2.8、禁止在数据库中存储图片,文件等大的二进制数据2.9、禁止在线上做数...

2019-06-22 15:10:45 180

原创 Redis 作为分布式锁(一):SpringBoot集成Redisson分布式锁

文章目录一、项目Demo1.1 项目依赖1.2 项目配置-redis1.3 Redisson的配置类RedissonConfig1.4 定义一个Loker接口,用于分布式锁的一些操作1.5 基于Redisson的实现类RedissonLocker1.6 定义一个分布式锁工具类LockUtil1.7 单元测试1.8 源码二、Redisson 之 Redlock2.1 基于Redis命令的分布式锁2....

2019-06-18 20:34:16 1268

转载 Java常用分布式锁技术方案

文章目录一、自身的业务场景:二、分布式锁的解决方式:2.1 几种解决方式总论2.2 基于数据库资源表做乐观锁,用于分布式锁2.2.1 乐观锁的含义:2.2.2 具体的案例:2.2.3 基于数据库表做乐观锁的一些缺点:2.3 使用memcached的add()方法,用于分布式锁2.4 使用memcached的cas()方法,用于分布式锁2.5 使用redis的setnx()、expire()方法,用...

2019-06-17 19:04:50 479

原创 Java 坐标系转换工具

文章目录一、添加所需依赖二、自定义日志注解 `WebLog`三、配置 AOP 切面四、测试及使用4.1 建立启动类4.2 新建controller测试4.3 启动项目,测试五、扩展5.1 指定环境下该注解可用5.2 多切面指定优先级5.3 源码地址之前分享过SpringBoot 配置 AOP 记录日志 可以通过切面的方式打印控制器层的日志,但是可能存在以下问题:不够灵活,由于是以所有 C...

2019-06-11 18:44:04 1382

原创 Shiro 放行Swagger

最近在研究Shiro,遇到一个棘手的问题:SpringBoot 集成Shiro后, Swagger接口得登陆才能访问,找了一下问题,记在这里,算是做个小笔记吧。在 Shiro 的配置文件中找到拦截器,将Swagger接口的路径放行即可 //放行Swagger2页面,需要放行这些 filterChainDefinitionMap.put("/swagger-ui.html"...

2019-05-17 18:18:35 5307 3

原创 Mybatis系列:逆向工程自动生成代码

文章目录一、背景二、上手使用2.1 引入`MyBatis Generator`的Maven插件2.2 `MyBatis Generator`一般配置2.2.1 首先,在数据库执行以下sql生成即将操作的表`tbl_user`2.2.2 `generatorConfig.xml` 配置如下:2.3 运行Maven插件生成代码3.2 Demo源码本文主要介绍使用Maven插件的方式自动生成Myba...

2019-05-10 18:40:05 195

原创 Mybatis系列:配置多数据源最简解决方案

文章目录一、依赖二、配置文件 `application.yml`三、数据源配置3.1 主数据源配置`DataSource1Config.java`3.2 从库数据源配置`DataSource2Config.java`四、测试代码部分4.1 数据表4.2 业务层接口和实现4.3 mapper 接口和映射文件xml基本完全一致4.3.1 mapper 接口4.3.2 xml的sql4.4 单元测试`M...

2019-04-25 15:28:28 1218

原创 Spring Boot 系列:整合 Alibaba Dubbo

文章目录一、新建项目1.1 使用IDEA新建一个Maven主项目-`dubbo`1.2 创建`dubbo`的子模块项目1.2.1 创建暴露Dubbo服务接口项目`dubbo-api`1.2.2 创建Dubbo服务接口提供者项目`dubbo-provider `1.2.3 创建Dubbo服务接口消费者项目`dubbo-consumer `二、dubbo-api子项目2.1 并创建一个实体类用于测试U...

2019-04-23 15:28:59 2007

原创 Mac 安装与配置 Zookeeper

一、下载解压Zookeeper下载地址,点击后下载适合稳定的版本,我选择的是 3.4.14。解压下载得到的ZooKeeper压缩包,发现有bin,conf,lib等目录。bin目录中存放有运行脚本;conf目录中存放有配置文件;lib目录”中存放有运行所需要第三方库。二、配置2.1 单机模式2.1.1 编辑配置文件在conf目录下,新建一个名为zoo.cfg的文件,其中内容如...

2019-04-22 12:04:04 11982 1

原创 Spring Boot 系列:配置 Swagger2

文章目录一、背景二、上手使用2.1 引入依赖2.2 Swagger全局配置2.3 SwaggerController控制层代码2.4 界面使用-测试三 扩展3.1 增加密码3.1.1 新增依赖3.1.2 配置文件中增加账号密码配置一、背景二、上手使用2.1 引入依赖<dependencies> <dependency> <groupId...

2019-04-08 18:05:43 398

原创 Spring Boot 系列:配置 Redis

文章目录一、StringRedisTemplate1.1 StringRedisTemplate与RedisTemplate区别点1.2 RedisTemplate中定义了5种数据结构操作1.3 StringRedisTemplate的使用二、上手实战2.1 导入依赖2.2 application.yml中redis配置2.3 Redis配置类-RedisConfig2.4 封装的redis操作S...

2019-03-25 14:40:08 295

原创 Spring Boot 系列:处理跨域请求

一、何为跨域前端请求于后端处理符合三个要求(同一域名,同一端口,同一协议)下,即可访问,有一个不符合就会出现跨域问题。1.1 一次正常的请求Controller层代码:@RequestMapping(&amp;amp;quot;/demo&amp;amp;quot;)@RestControllerpublic class CorsTestController { @GetMapping(&amp;amp;quot;/sayHello&amp;amp;

2019-03-15 00:17:03 70646 8

原创 Spring 断言机制 Assert

一、为什么要用断言机制平时做判断通常都是这样写if (message== null || message.equls("")) { throw new IllegalArgumentException("输入信息错误!"); } 用Assert工具类上面的代码可以简化为:Assert.hasText(message, "输入信息错误!");java assert表...

2019-03-12 00:28:34 1662

原创 Spring Boot 系列:实现定时任务

文末附源码demo一、定时任务实现的几种方式:Timer这是java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行。一般用的较少。ScheduledExecutorService也jdk自带的一个类;是基于线程池设计的定时任务类,每个调度任务都会分配到线...

2019-03-09 17:48:20 205

原创 MyBatis系列:模糊查询

在项目开发中,日志系统是必不可少的,用`AOP`在Web的请求做入参和出参的参数打印,同时对异常进行日志打印,避免重复的手写日志,完整案例见文末源码

2019-03-01 16:57:11 1235

原创 Spring Boot 系列:整合 Logback 异步打印 Web 请求参数

本文介绍:日志输出到文件并根据LEVEL级别将日志分类保存到不同文件、通过异步输出日志减少磁盘IO提高性能

2019-02-28 16:27:37 2016 2

原创 优秀的代码应该如何分层?

一、背景说起应用分层,大部分人都会认为这个不是很简单嘛 就controller,service, mapper三层。看起来简单,很多人其实并没有把他们职责划分开,在很多代码中,controller做的逻辑比service还多,service往往当成透传了,这其实是很多人开发代码都没有注意到的地方,反正功能也能用,至于放哪无所谓呗。这样往往造成后面代码无法复用,层级关系混乱,对后续代码的维护非常麻...

2019-02-27 17:58:57 1868 1

原创 Spring Boot 系列:配置文件详解

SpringBoot是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖就可以轻易的搭建出一个 WEB 工程。一、配置依赖首先,跟上文一样建立一个SpringBoot项目,导入:&amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;org.s...

2018-12-24 17:06:12 428

原创 SpringBoot:构建一个SpringBoot项目

SpringBoot为我们提供了一系列的依赖包,所以需要构建工具的支持:Maven或Gradle。博主更习惯使用Maven,暂时学习教程基本采用所Maven与IntelliJ IDEA;新公司使用的是Gradle,所以后续可能会使用Gradle。框架基于目前最新的SpringBoot 2.1.1。一、创建项目第一个项目,先做一个简单的demo,能跑起来即可。1.点击 File -&gt;...

2018-12-11 11:20:07 363 1

空空如也

空空如也

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

TA关注的人

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