自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小北呱的博客

乐于分享 拥抱生活

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

原创 JUC并发中Future的使用

JUC并发中Future的使用

2022-07-21 15:04:05 571 1

原创 史上最牛mysql-17 (触发器)

个人博客 :www.xiaobeigua.icu 触发器在实际开发中,我们经常会遇到这样的情况:有 2 个或者多个相互关联的表,如商品信息和库存信息分别存放在 2 个不同的数据表中,我们在添加一条新商品记录的时候,为了保证数据的完整性,必须同时在库存表中添加一条库存记录。这样一来,我们就必须把这两个关联的操作步骤写到程序里面,而且要用事务包裹起来,确保这两个操作成为一个原子操作,要么全部执行,要么全部不执行。要是遇到特殊情况...

2021-12-08 14:42:11 277

转载 史上最牛mysql-16 (变量,流程控制,游标)

变量,流程控制,游标 个人博客 :www.xiaobeigua.icu 1. 变量在MySQL数据库的存储过程和函数中,可以使用变量来存储查询或计算的中间结果数据,或者输出最终的结果数据。在 MySQL 数据库中,变量分为系统变量以及用户自定义变量。1.1 系统变量1.1.1 系统变量分类变量由系统定义,不是用户定义,属于服务器层面。启动MySQL服务,生成MySQL服务实例期间,MySQL将为MySQL服务器内存中的系

2021-12-08 14:02:05 311

原创 史上最牛mysql-15 (存储过程与存储函数)

存储过程与存储函数 个人博客 :www.xiaobeigua.icu MySQL从5.0版本开始支持存储过程和函数。存储过程和函数能够将复杂的SQL逻辑封装在一起,应用程序无须关注存储过程和函数内部复杂的SQL逻辑,而只需要简单地调用存储过程和函数即可。1. 存储过程概述1.1 理解含义:存储过程的英文是 Stored Procedure。它的思想很简单,就是一组经过预先编译的 SQL 语句的封装。执行过程:存储

2021-12-08 10:51:20 252

原创 史上最牛mysql-14 (视图)

视图 个人博客 :www.xiaobeigua.icu 1. 常见的数据库对象对象描述表(TABLE)表是存储数据的逻辑单元,以行和列的形式存在,列就是字段,行就是记录数据字典就是系统表,存放数据库相关信息的表。系统表的数据通常由数据库系统维护,程序员通常不应该修改,只可查看约束(CONSTRAINT)执行数据校验的规则,用于保证数据完整性的规则视图(VIEW)一个或者多个数据表里的数

2021-12-07 10:49:00 152

原创 史上最牛mysql-13 (约束)

约束 个人博客 :www.xiaobeigua.icu 1. 约束(constraint)概述1.1 为什么需要约束数据完整性(Data Integrity)是指数据的精确性(Accuracy)和可靠性(Reliability)。它是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。为了保证数据的完整性,SQL规范以约束的方式对表数据进行额外的条件限制。从以下四个方面考虑:实体

2021-12-07 10:30:40 160

原创 史上最牛mysql-12 (数据类型深究)

数据类型深究 个人博客 :www.xiaobeigua.icu 1. MySQL中的数据类型类型类型举例整数类型TINYINT、SMALLINT、MEDIUMINT、INT(或INTEGER)、BIGINT浮点类型FLOAT、DOUBLE定点数类型DECIMAL位类型BIT日期时间类型YEAR、TIME、DATE、DATETIME、TIMESTAMP文本字符串类型CHA

2021-12-07 09:55:34 339

转载 史上最牛mysql-11 (增删改)

数据处理之增删改 个人博客 :www.xiaobeigua.icu 1. 插入数据1.1 实际问题解决方式:使用 INSERT 语句向表中插入数据。 1.2 方式1:VALUES的方式添加使用这种语法一次只能向表中插入一条数据。情况1:为表的所有字段按默认顺序插入数据INSERT INTO 表名VALUES (value1,value2,....);值列表中需要为表的每一个字段指定值,并且值的顺序

2021-12-07 09:29:16 233

转载 史上最牛mysql-10 (创建和管理表)

创建和管理表 个人博客 :www.xiaobeigua.icu 1. 基础知识1.1 一条数据存储的过程存储数据是处理数据的第一步。只有正确地把数据存储起来,我们才能进行有效的处理和分析。否则,只能是一团乱麻,无从下手。那么,怎样才能把用户各种经营相关的、纷繁复杂的数据,有序、高效地存储起来呢? 在 MySQL 中,一个完整的数据存储过程总共有 4 步,分别是创建数据库、确认字段、创建数据表、插入数据。我们要先创建一个数据库,而不是直接创

2021-12-07 09:14:47 172

转载 史上最牛mysql-09 (子查询)

子查询 个人博客 :www.xiaobeigua.icu 子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从MySQL 4.1开始引入。SQL 中子查询的使用大大增强了 SELECT 查询的能力,因为很多时候查询需要从结果集中获取数据,或者需要从同一个表中先计算得出一个数据结果,然后与这个数据结果(可能是某个标量,也可能是某个集合)进行比较。1. 需求分析与问题解决1.1 实际问题现有解决方式:方式一

2021-12-06 18:04:25 171

转载 史上最牛mysql-08 (聚合函数)

聚合函数 个人博客 :www.xiaobeigua.icu 我们上一章讲到了 SQL 单行函数。实际上 SQL 函数还有一类,叫做聚合(或聚集、分组)函数,它是对一组数据进行汇总的函数,输入的是一组数据的集合,输出的是单个值。1. 聚合函数介绍什么是聚合函数聚合函数作用于一组数据,并对一组数据返回一个值。聚合函数类型AVG()SUM()MAX()MIN()COUNT()聚合函数语法聚合函数不

2021-12-06 17:32:13 180

原创 史上最牛mysql-07 (单行函数)

单行函数 个人博客 :www.xiaobeigua.icu 1. 函数的理解1.1 什么是函数函数在计算机语言的使用中贯穿始终,函数的作用是什么呢?它可以把我们经常使用的代码封装起来,需要的时候直接调用即可。学过java朋友就知道它就是Java中的方法 ,这样既提高了代码效率,又提高了可维护性。在 SQL 中我们也可以使用函数对检索出来的数据进行函数操作。使用这些函数,可以极大地提高用户对数据库的管理效率。从函数定义的角度出发,我们可以

2021-12-06 15:52:50 133

原创 史上最牛mysql-06 (多表连接)

多表连接 个人博客 :www.xiaobeigua.icu 多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段,这个关联字段可能建立了外键,也可能没有建立外键。比如:员工表和部门表,这两个表依靠“部门编号”进行关联。1. 一个案例引发的多表连接1.1 案例说明从多个表中获取数据:#案例:查询员工的姓名及其部门名称SELECT last_n

2021-12-06 15:29:16 3467 1

原创 史上最牛mysql-05 (order by 与 limit)

order by 与 limit 个人博客 :www.xiaobeigua.icu 1. ORDER BY(排序)1.1 排序规则使用 ORDER BY 子句排序ASC(ascend): 升序DESC(descend):降序ORDER BY 子句在SELECT语句的结尾。 1.2 单列排序SELECT last_name, job_id, department_id, hire_dateFROM e

2021-12-06 14:52:21 418

转载 史上最牛mysql-04 (运算符)

运算符 个人博客 :www.xiaobeigua.icu 一. 算术运算符算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式,对数值或表达式进行加(+)、减(-)、乘(*)、除(/)和取模(%)运算。1.加法与减法运算符mysql> SELECT 100, 100 + 0, 100 - 0, 100 + 50, 100 + 50 -30, 100 + 35.5, 100 - 35.5 FROM dual;+-----

2021-12-06 14:38:05 172

原创 史上最牛mysql-03 (select语句的使用)

select语句的使用 个人博客 :www.xiaobeigua.icu  1 sql背景1.1 SQL背景知识1946 年,世界上第一台电脑诞生,如今,借由这台电脑发展起来的互联网已经自成江湖。在这几十年里,无数的技术、产业在这片江湖里沉浮,有的方兴未艾,有的已经几幕兴衰。但在这片浩荡的波动里,有一门技术从未消失,甚至“老当益壮”,那就是 SQL。45 年前,也就是 1974 年,IBM 研究员发布了一篇揭开数据库技术的论文

2021-12-06 14:11:25 1017

原创 史上最牛mysql-02 (MySQL的下载、安装、配置)

2. MySQL的下载、安装、配置 个人博客 :www.xiaobeigua.icu 2.1 MySQL的4大版本MySQL Community Server 社区版本,开源免费,自由下载,但不提供官方技术支持,适用于大多数普通用户。MySQL Enterprise Edition 企业版本,需付费,不能在线下载,可以试用30天。提供了更多的功能和更完备的技术支持,更适合于对数据库的功能和可靠性要求较高的企业客户。MySQL

2021-12-04 12:27:54 1104

转载 史上最牛mysql-01 (数据库概概述)

史上最牛mysql-01 (数据库概概述) 个人博客 :www.xiaobeigua.icu 1. 为什么要使用数据库持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”,而持久化的实现过程大多通过各种关系数据库来完成。持久化的主要作用是将内存中的数据存储在关系型数据库中,当然也可以存储在磁盘文件、XML数据文件中。2. 数

2021-12-03 17:34:47 454

原创 Docker-01 (了解Docker)

我们写的代码会接触到好几个环境:开发环境、测试环境以及生产环境:不同环境的切换就很容易导致水土不服:比如 开发环境JDK使用的是 1.8 ,测试人员用的是1.7,所用在测试阶段,可能会出现bug,影响项目进度!1.1 Docker概念 Docker 是一个开源的应用容器引擎...

2021-11-29 10:53:43 1393

原创 设计模式-07(建造者模式)

建造者模式 个人博客:www.xiaobeigua.icu1.1概述将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。分离了部件的构造(由Bui...

2021-10-04 13:25:52 168 1

原创 设计模式-06(原型模式)

原型模式 个人博客:www.xiaobeigua.icu1.1 概述用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相同的新对象。...

2021-10-04 01:33:00 177

原创 设计模式-05 (工厂模式)

工厂模式个人博客:www.xiaobeigua.icu1.1 概述需求:设计一个咖啡店点餐系统。 设计一个咖啡类(Coffee),并定义其两个子类(美式咖啡【A...

2021-10-03 20:11:21 231 1

原创 设计模式-04(单例模式)

单例模式 个人博客:www.xiaobeigua.icu首先了解一下创建型模式,创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”。...

2021-10-02 21:45:09 2737 1

原创 设计模式-03(软件设计原则)

软件设计原则 个人博客:www.xiaobeigua.icu在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽 量根据6条原则来开发程序,从...

2021-10-02 19:43:24 130

原创 设计模式-02(UML中的类图)

类图个人博客:www.xiaobeigua.icu统一建模语言(Unified Modeling Language,UML)是用来设计软件的可视化建模语言。它的特 点是...

2021-10-02 13:35:05 831

原创 设计模式-01(概述)

概述1.1 软件设计模式的产生背景"设计模式"最初并不是出现在软件设计中,而是被用于建筑领域的设计中。1977年美国著名建筑大师、加利福尼亚大学伯克利分校环境结构中心主任 克里斯托夫·亚历山大 (Christopher Alexander) 在他的著作《建筑模式语言:城镇、建筑、构造》中描述了一些常见的 建筑设计问题,并提出了 253 种关于对城镇、...

2021-10-02 13:01:14 70

原创 Java多线程-13 (锁的优化)

锁的优化 个人博客:www.xiaobeigua.icu1.1 有助于提高锁性能的几点建议1.1.1减少锁持有时间对于使用锁进行并发控制的应用程序来说,如果单个线程特有锁的时间过长...

2021-08-11 23:11:53 141

原创 Java多线程-13(保障线程安全的设计技术 )

保障线程安全的设计技术 个人博客:www.xiaobeigua.icu从面向对象设计的角度出发介绍几种保障线程安全的设计技术,这些技术可以使得我们在不必借助锁的情况下保障线程安全,避...

2021-08-11 22:24:22 144

原创 Java多线程-12(线程管理中的线程池)

1.2 捕获线程的执行异常在线程的run方法中,如果有受检异常必须进行捕获处理,如果想要获得 run() 方 法中出现的运 行时异常信息(编译器不报错,运行时报错) , 可以通回调 UncaughtExceptionHandler 接口获得哪个线程出现了运行时异常。在 Thread 类中有关处理运行异常的方法有: getDefaultUncaughtExceptionHandler() 获得全局的 ( 默认的)UncaughtExceptionHandler ...

2021-08-11 18:21:31 582 2

原创 Java多线程-11 (线程管理中的线程组)

线程组 个人博客:www.xiaobeigua.icu1.1 线程组ThreadGroup类似于在计算机中使用文件夹管理文件,也可以使用线程组来管理线程。在线程组中定义...

2021-08-10 17:55:49 150

原创 Java多线程-10 (Lock锁之ReentrantReadWriteLock 读写锁)

ReentrantReadWriteLock 个人博客:www.xiaobeigua.icu1.3 ReentrantReadWriteLock 读写锁1.3.1认识读写锁synchroni...

2021-08-09 23:42:55 385 1

原创 Java多线程-09 (Lock锁之ReentrantLock可重入锁)

synchronized被称为内部锁,在 JDK5 中增加了Lock 锁接口,lock 关键字可确保当一个线程位于代码的临界区时,另一个线程不会进入该临界区。 如果其他线程尝试进入锁定的代码,则它将一直等待(即被阻止),直到该对象被释放。这也是多线程编程中一种保护线程安全的重要机制,它也被称为外部所,此接口有多个实现类,下面我们就来学习下Lock接口的一些实现类1.1 锁的可重入性锁的可重入是指,当一个线程获得一个对象锁后,再次请求该对象 锁时是可以获得该对象的锁的....

2021-08-09 21:45:18 460

原创 Java多线程-08 (线程通信中的 ThreadLocal)

1.3.1ThreadLocal 是什么?JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命名为ThreadLocalVariable 更容易让人理解一些。在JDK5.0中,ThreadLocal已经支持泛型,该类的类名已经变为...

2021-08-08 10:59:48 182

原创 Java多线程-07 (线程通信中的 “等待/通知” 机制)

线程通信 个人博客:www.xiaobeigua.icu1.1 等待/通知机制1.1.1 什么是等待通知机制在单线程编程中,要执行的操作需要满足一定的条件才能执行,可...

2021-08-08 00:09:40 269

原创 Java多线程-06(线程同步中的CAS和原子类)

线程同步 个人博客:www.xiaobeigua.icu1.5 CASCAS(Compare And Swap)是由硬件实现的。CAS 可以将 read- modify...

2021-08-06 21:57:25 175

原创 Java多线程-05 (线程同步中的锁和volatile关键字)

线程同步 个人博客:www.xiaobeigua.icu1.1 什么是线程同步线程同步机制是一套用于协调线程之间的数据访问的机制。该机制可以保障线程安全。J...

2021-08-06 11:09:42 244 2

原创 Java多线程-04 (线程安全问题)

线程安全问题 个人博客:www.xiaobeigua.icu非线程安全主要是指多个线程对同一个对象的实例变量进行操作时,会出现值被更改,值不同步的情况。...

2021-08-05 01:34:00 130 2

原创 Java多线程-03 (生命周期,优势和风险)

线程的生命周期,优势和风险 个人博客:www.xiaobeigua.icu1.1线程的生命周期线程的生命周期是线程对象的生老病死,即线程的状态.线程生命周期可以通过 getSt...

2021-08-04 22:10:12 93

原创 Java多线程-02 (线程的常用方法)

线程的常用方法 个人博客:www.xiaobeigua.icu1.1 currentThread()方法(类方法) Thread.currentThread()方法可以获得当前线程...

2021-08-04 12:36:47 198

原创 Java多线程-01 (了解多线程)

了解多线程 个人博客:www.xiaobeigua.icu1.1 线程相关概念进程进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是操作系统进行资源分配与...

2021-08-03 23:29:41 165 4

空空如也

空空如也

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

TA关注的人

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