自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (1)
  • 收藏
  • 关注

原创 面向开发者的Docker实践

show me the code and talk to me,做的出来更要说的明白本文源码,请点击learnSpringboot我是布尔bl,你的支持是我分享的动力!一、 引入有开发经验的都知道,几乎每种技术都有一个吉祥物代表。那么Docker的吉祥物是怎么样的呢? 下图我们可以看到Docker是一个小鲸鱼,他的上面运载者许多货物。二、快速入门2.1 我为什么要用Docker那么,Docker究竟是什么东西来的呢?Docker由 Go 语言编写,是一个免费开源的开放平台,可以运行在多个.

2020-05-09 10:44:03 178

原创 打造百万级别数据库

最近想全解了解 MySQL 的索引优化知识。当我打开本地数据库的时候,我惊了。只有几条数据默默的停在数据库表里面。因此,我就萌发自己造数据的想法。首先我想到时使用存储过程以及 do while循环语句。说干就干,当时我三两下就写好了存储过程语句。因为我使用的是 navicat 软件,所以不需要注意 ; 的编译问题,navicat 真香。DROP PROCEDURE wk;create PRO...

2020-04-22 01:23:48 438 1

原创 基于 Spring Cloud 的微服务架构实践指南(下)

show me the code and talk to me,做的出来更要说的明白本文源码,请点击 learnSpringCloud我是布尔bl,你的支持是我分享的动力!一、引入上回 基于 Spring Cloud 的微服务架构实践指南(上) 介绍了 Spring Cloud 的常见组件,我们接着继续进入 Spring Cloud 的实战教程,撸起袖子,真枪实弹干一场。在实战演练中感...

2020-04-14 10:22:00 175 1

原创 基于 Spring Cloud 的微服务架构实践指南(上)

show me the code and talk to me,做的出来更要说的明白GitHub 项目learnSpringCloud同步收录我是布尔bl,你的支持是我分享的动力!一、 引入上回 Spring Cloud 理论篇 介绍了 Spring Cloud 的常见组件,让读者对 Spring Cloud 有了一个宏观认识,这是从理论层面出发的。接下来我们就进入 Spring Cl...

2020-04-03 08:28:34 363

原创 1分钟,带你上手“Markdown”语法

前言Markdown 是一种轻量级的标记语言,有 John Gruber 以及Aaron Hillel Swartz 一起编写。Aaron Hillel Swartz 是一个极富传奇的黑客,有兴趣可以看看他的生平。由于 Markdown 轻量化,易读易写,网上支持者众多。Github 、掘金、简书、博客园、csdn 军支持该语法。所以,作为一个开发者,学习 Markdown 刻不容缓啊。语法...

2020-03-19 17:22:58 132

原创 Spring Cloud 理论篇

微服务在 jsp 时代,应用前后端耦合,前后端 all in 一台服务器,随着流量的增大,代码数量的增加,单体应用不再适合互联网的发展,微服务顺应提出。微服务是一种用于构建应用的架构方案。区别于更为传统的单体式方案,将应用拆分成多个核心功能。每个功能都被称为一项服务,可以单独构建和部署,这意味着各项服务在工作(和出现故障)时不会相互影响。参考:https://www.redhat.com...

2020-03-15 23:56:21 172

原创 如何设计一个优雅的RESTFUL的接口

show me the code and talk to me,做的出来更要说的明白我是布尔bl,你的支持是我分享的动力!一 、引入设计接口是我们开发人员的日常操作。当我们把接口交给前端人员时,是否有种拔剑出鞘的错觉。毕竟交付接口,我们的开发工作就阶段性完成了。不过,如果我们没有一个接口设计规范的时候,结果会怎样呢?我们来张图感受一下。二、REST2000年,一个年轻小伙子(Roy...

2020-01-19 08:06:01 329

原创 简简单单之Linux命令入门

show me the code and talk to me,做的出来更要说的明白GitHub 项目JavaHouse同步收录我是布尔bl,你的支持是我分享的动力!引入作为一名合格的后端开发人员,我们难免要在 Linux 环境下进入操作,查找问题,配置文件等等操作。因此,我觉得我们需要掌握简单的 Linux 命令。本文简简单单介绍一下 Linux 的常见操作,努力让读者在 Linux...

2020-01-13 14:55:10 140

原创 SpringBoot基础架构篇3(Redis)

show me the code and talk to me,做的出来更要说的明白我是布尔bl,你的支持是我分享的动力!1 引入数据库达到瓶颈,有什么解决方法。 Redis 可以很好解决这个问题。那让我们来学习如何在 SpringBoot 使用 Redis。2 确保 redis 开启安装步骤省略。。。具体可以参考网上教程。2.1 测试 telnet IP地址 端口(默认6379...

2020-01-09 14:57:11 95

原创 SpringBoot基础架构篇1(SpringBoot、MyBatis-Plus与Thymeleaf)

show me the code and talk to me,做的出来更要说的明白我是布尔bl,你的支持是我分享的动力!1 引入使用 MyBatis-Plus 以及 thymeleaf 实现增删查改。效果图在最后。2 Mybatis-PlusMyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而...

2020-01-06 09:59:35 1046

原创 基础之Lamada和Stream的邂逅

show me the code and take to me,做的出来更要说的明白GitHub项目JavaHouse同步收录喜欢就点个赞呗! 你的支持是我分享的动力!引入是否有遇到看不懂身边同事代码的情况,是否有被面试官问到 Java 新特性不懂的情况。我掐指一算你大概是遇到的了 Lambda 表达式 和 Stream 流。为了解决上述情况,我特地献上一份关于 Lambda 和 S...

2020-01-03 11:13:51 140 1

原创 大白话讲工厂设计模式

show me the code and take to me,做的出来更要说的明白GitHub项目JavaHouse同步收录喜欢就点个赞呗! 你的支持是我分享的动力!引入我们经常听到工厂模式,比如说 Spring 用了工厂模式啦,面试也会被问到工厂模式等等,这见工厂模式是日常开发中比较重要的一种设计模式。其实工厂模式也是比较简单的一种设计模式,这年头似乎不了解工厂模式,你都不好意思...

2019-12-30 08:08:41 187

原创 Java的反射机制之反向抽烟

show me the code and take to me,做的出来更要说的明白GitHub项目JavaHouse同步收录喜欢就点个赞呗! 你的支持是我分享的动力!引入反射是一种不安套路处出牌的机制。通常我们接触的方式都是 “正射”,暂且起这个名字。虽然我们用的少,但是反射其实就在我们日常开发中。比如我们常见的空指针异常,或者是 Spring 的各种注解配置创建对象等等。正常操...

2019-12-27 00:40:29 126

原创 从0开始入门ssm-crm系统实战

喜欢就点个赞呗!GitHub项目ssm-learn-crmshow me the code and take to me,做的出来更要说的明白1.1 克隆git clone https://github.com/buerbl/ssm-learn-crm.git1. 2 结果2 分析需求我们需要做一个客户系统,使用者可以在系统上面保存、编辑、删除、客户信息。3 技术选型这次...

2019-12-24 17:47:39 367

原创 MyBatis 简单使用

0 文件路径图1 sql(src\main\mysql\c_customer.sql)首先找到 sql 文件得到结果2 编写 sqlMapConfig.xml(src\main\resources\sqlMapConfig.xml)这是一个 mybatis 的配置文件,他的作用是连接数据库以及找到相应的 xml 文件3 编写实体类(src\main\java\com\buer\...

2019-12-23 16:41:32 119

原创 递归的实际业务场景之MySQL 递归查询

喜欢就点个赞呗!源码<–请点击此处查看引入当我看到一些评论时,例如下面的样子。我挺好奇这个功能是怎么样做出来的。进过查阅资料,发现这其实是 MySQL 的递归操作。下面就让我操作一下怎么实现 MySQL 的递归查询。设计数据库观察这种数据库设计,你会发现他都有一个父节点,一直到根节点,所以我们设计数据库的时候,应该设置一个 parentid 字段。所以,我们可以得到以下的数据...

2019-12-17 14:35:07 162

原创 Apache Maven从入门到升天

喜欢就点个赞呗!GitHub项目JavaHouse同步收录1 引入在日常 Java 开发中,Maven 应该是必不可少的一个工具了,当然也有人使用 Gradle 的。那么 Maven 究竟是个啥东西呢?不就是一个依赖引入工具吗?我相信很多人和我是一样的感觉。但是一般而言,感觉的东西往往是不可靠的。我在网上收集一些资料,翻翻官网,重新整理了一下 Maven 的资料。2 Maven 简介...

2019-12-13 00:44:57 103

原创 ThreadLocal快速了解一下

欢迎点赞阅读,一同学习交流,有疑问请留言 。GitHub上也有开源 JavaHouse 欢迎star1 引入在Java8里面,ThreadLocal 是一个泛型类。这个类可以提供线程变量。每个线程都有自己的变量。这意味着什么?每一个线程都有自己的资源,就像在现实生活中,每一个程序员都有自己的一个对象,不用去竞争,绝对的线程安全啊。那么 ThreadLocal 究竟怎么用呢?2 类的说...

2019-12-08 13:32:30 105

原创 你真的了解Object源码吗

欢迎点赞阅读,一同学习交流,有疑问请留言 。GitHub上也有开源 JavaHouse 欢迎star引入Object 应该是比较简单的源码了。现在我们来分析一下他。Object 是类层次结构的根。Java体系里面的每个类默认都有一个超类就是 Object。总之,所有对象,包含数组,都默认实现该类的方法。native 关键字因为 Object 类里面有很多地方都用到 native 关键...

2019-12-03 18:37:25 183

原创 Java并发之synchronized关键字和Lock接口

欢迎点赞阅读,一同学习交流,有疑问请留言 。GitHub上也有开源 JavaHouse,欢迎star引用当开发过程中,我们遇到并发问题。怎么解决?一种解决方式,简单粗暴:上锁。将千军万马都给拦下来,只允许一个人过独木桥。书面意思就是将并行的程序变成串行的程序。现实的锁有门锁、挂锁和抽屉锁等等。在Java中,我们的锁就是synchronized关键字和Lock接口。synchroni...

2019-12-01 00:34:57 131

原创 Java并发之volatile关键字

引言说到多线程,我觉得我们最重要的是要理解一个临界区概念。举个例子,一个班上1个女孩子(临界区),49个男孩子(线程),男孩子的目标就是这一个女孩子,就是会有竞争关系(线程安全问题)。推广到实际场景,例如对一个数相加或者相减等等情形,因为操作对象就只有一个,在多线程环境下,就会产生线程安全问题。理解临界区概念,我们对多线程问题可以有一个好意识。Jav内存模型(JMM)谈到多线程就应该了解...

2019-11-26 00:46:24 91

原创 Serlvet之cookie和session学习

HTTP 协议Web通信需要一种语言,就像中国人讲中文,欧美说英文,Web使用的HTTP协议,也叫超文本协议。使用HTTP协议的人分为两类:客户端和服务端。请求资源的角色是客户端,提供资源的是服务端。HTTP协议是一个很神奇的东西,他只负责说话,至于说了什么他也不知道。所以HTTP是无状态的协议。会话HTTP是没有状态,但是人们是有记忆的,人们想让HTTP记住某些东西,然后就提出几...

2019-11-21 14:39:11 154

原创 常见排序算法

浙江大学数据结构课程参考:https://www.icourse163.org/learn/ZJU-93001?tid=1002654021#/learn/content?type=detail&id=1003627008&cid=1004311499&replay=true时间复杂度what:评价算法好坏(读big O)计算方法是:要高阶去低阶运行时间不是指实...

2019-11-18 15:36:29 121

原创 Spring MVC拦截器学习

1 介绍Spring Web MVC是基于Servlet API构建的原始Web框架。2 拦截器2.1 定义springmvc框架的一种拦截机制2.2 使用2.2.1 两步走实现HandlerInterceptor接口注册(xml或者注解 )2.2.2 HandlerInterceptor接口实现HandlerInterceptor接口import org.spri...

2019-10-13 11:00:20 115

原创 分组数据

1 介绍分组返回数据,不是where的那种返回特定数据2 创建分组(group by)select vend_id, count(*) as num_prods from products group by vend_id;2.1 分析按vend_id字段分组,然后统计总数返回数据3 过滤分组(having)select cust_id, count(*) as orders ...

2019-10-12 07:52:35 234

原创 redis数据库学习

0 使用理由0.1 高性能纯内存操作,比在硬盘操作数据的速度有极大提升0.2 高并发承受请求比直接操作数据库大得多0.3 单线程至于redis单线程的原因。有点意思。CPU不是Redis的主要瓶颈,因为Redis通常是内存或网络绑定。例如,一般Linux系统上运行的Redis每秒甚至可以提供100万个请求,因此不会使用太多的CPU。言下之意,就是说redis根本不需要多线程,...

2019-09-10 15:17:55 76

原创 redis实现排行榜

1 前言实现一个排版榜,我们通常想到的就是mysql的order by 简单粗暴就撸出来了。但是这样真的优雅吗?数据库是系统的瓶颈,这是众所周知的。如果给你一张百万的表,让你排序做排行榜,花费的时间是十分可怕的。不如缓存吧,order by的时候强制使用索引。但是这样真的优雅吗?2 Redis的排行榜我们分析一下排行榜,一个用户一个排名,意味着要去重,这时我们会想到Java的一种数据结构...

2019-08-08 16:14:20 671

原创 redis整合springboot的helloworld

引入依赖 compile 'org.springframework.boot:spring-boot-starter-data-redis'使用redis有两种方法1.JedisJedis jedis = new Jedis("localhost");2.RedisTemplate@Autowiredprivate RedisTemplate redisTemplate;如果...

2019-07-09 00:24:33 124

原创 dubbo整合springboot最详细入门教程

说明目前互联网公司,大部分项目都是基于分布式,一个项目被拆分成几个小项目,这些小项目会分别部署在不同的计算机上面,这个叫做微服务。当一台计算机的程序需要调用另一台计算机代码的时候,就涉及远程调用。此时dubbo就可以大展身手了。搭建工程idea新建工程后,删除src文件夹,然后在gradle文件中输入buildscript { repositories { m...

2019-07-05 07:42:17 384

原创 LinkedList源码

1 说明LinkedList是一个双向链表,继承看List接口和Duque接口。LinkedList不是线程安全,确保线程安全方法 List list = Collections.synchronizedList(new LinkedList(...))2 源码分析2.1 静态内部类LinkedList是一个链表,需要一个node类作为节点,因此他在内部构建了一个静态内部...

2019-06-13 23:35:30 78

原创 springboot批量导入excel数据

1 背景小白今天闲着没事,在公司摸鱼,以为今天有事无聊的一天,突然上头说小子,今天实现一下批量导入Excel数据吧,当时我的内心是拒绝的,然后默默打开idea。2 介绍2.1 框架java本身并不支持读取excel,所有读取excel需要借助一些框架。目前有几种方式,1. Apache POI2. Java Excel API3. easyexcel这里主要讲解的是 Apache ...

2019-06-11 10:30:02 2495 4

原创 git操作实战指南

1 背景小白进入公司,进入日常多人开发,git的使用应该是新人要掌握的第一个技能。git是一个分布式数据存储库,分为远程存储和本地存储,本地存储的话,每一台计算机就相当于一个存储数据库,可以记录和存储代码2 使用本文以IDEA的git工具操作为例,结合日常开发,讲解如何git开发。2.1 情景1小白进入公司后,上司对他说,今天数据一下代码哦。小白说我就不(内心活动) 默默打开git图形...

2019-05-22 01:00:46 108

原创 从实践认识修饰符

#从实践认识修饰符##1 修饰符分类说到修饰符,大家都知道有private deafult protect public,说到它们的区别,相信大家脑海会出现一张图。 |同一个类|同包非子类|子类|不同包非子类-|-|-|-private|是|否|否|否default|是|是|否|否protected|是|是|是|否public|是|是|是|是那么怎么从代码层面解释呢,学...

2019-05-04 15:16:55 120

原创 git必会必知

1 前言git前身是BitKeeper,但是他不是开源软件,不符合当时开源趋势,于是就会有了开源的git,git开发只用了十天时间。目前git是公司开发必不可少的一个工具,用于多人开发的分布式版本控制软件。git是Linux内核,由c语言开发。2 工作流程一般工作流程如下:克隆 Git 资源作为工作目录。在克隆的资源上添加或修改文件。3 推送1、初始化,添加.GIT文件git...

2019-04-08 10:40:42 92

原创 解锁Spring框架姿势1

Spring介绍:Spring 框架是一个Java平台,它为开发Java应用程序提供全面的基础架构支持。Spring负责基础架构,因此您可以专注于应用程序的开发。Spring可以让您从“plain old Java objects”(POJO)中构建应用程序和通过非侵入性的POJO实现企业应用服务。此功能适用于Java SE的编程模型,全部的或部分的适应Java EE模型。Ioc(依赖注入...

2019-02-01 17:38:02 204

原创 Linux必会必知

一、前言Linux作为一个开源系统,被极客极力推崇,作为程序员不来了解一下,那就亏了Linux是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布,在加上用户空间的应用程序之后,成为Linux操作系统。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证(GPL),任何个人和机构都可以自由地使用Linux...

2019-01-29 23:19:57 106

原创 移除链表元素

题目:移除链表元素描述:删除链表中等于给定值 val 的所有节点。输入: 1-&gt;2-&gt;6-&gt;3-&gt;4-&gt;5-&gt;6, val = 6输出: 1-&gt;2-&gt;3-&gt;4-&gt;5预备知识:思路:1、判断空指针2、增加虚拟头指针(知识点):预防head为一个值的情况,增加代码编写难度3、使用while循环判断val值Oj:https...

2019-01-25 09:54:15 101

原创 206 反转链表

题目:206 反转链表描述:输入:1-&gt;2-&gt;3-&gt;4-&gt;5-&gt;NULL 输出: 5-&gt;4-&gt;3-&gt;2-&gt;1-&gt;NULL预备知识:无思路:1、 一个节点找不到前节点2、 两个节点找不到前节点3、 三个节点可以找到前节点Oj:https://leetcode-cn.com/problems/reverse-linked-...

2019-01-25 09:53:35 105

原创 简单谈谈栈

一、前言计算机程序离不开算法和数据结构,数据结构这门学科就是为了让计算机能够以更加高效,简单,便捷的方式来存储和使用数据而产生的。本文简单介绍栈(Stack)和队列(Queue)的实现二、图解三、线性表1、 顺序存储结构:用一段地址连续的存储单元依次存储线性表的数据元素2、 链式存储结构:用一组任意的存储单元存储线性表的数据元素,这组存储单元可以连续,也可以不连续,空间与内存没有线性...

2019-01-20 21:16:57 138

原创 数据库面试题

数据库面试题DBS DBMS DB区别DBS 数据库系统DBMS 数据库管理系统DB 数据库数据库系统dbs包括但不限于数据库管理系统dbms和数据库dbMySQL存储引擎InnoDB(默认):支持事物,表锁,行锁设计,支持外键MyISAM:不支持事物和表锁设计,不支持外键事物使用场景转账:a转账给b,a账户减少b账户增加过程就要用到事物,转账事物就回...

2019-01-11 16:44:17 168

MYSQL必会必知

mysql基础mysql基础mysql基础mysql基础mysql基础mysql基础mysql基础mysql基础

2018-04-27

空空如也

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

TA关注的人

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