自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Azure Cosmos DB小白入门

Azure Cosmos DB 是一种用于新式应用开发的完全托管的 NoSQL 数据库。个位数的毫秒响应时间以及自动和即时的可伸缩性,可保证任何规模的速度。高可用性和企业级安全性可确保业务连续性。得益于全球各地的统包多区域数据分布、适用于常用语言的开源 API 和 SDK,应用的开发速度更快、效率更高。作为一项完全托管的服务,Azure Cosmos DB 使用自动管理、更新和修补,使你无需进行数据库管理。

2022-09-23 22:58:37 2247 1

原创 Mac系统 PyCharm.app”已损坏,无法打开。 您应该将它移到废纸篓。

我们在terminal窗口输入一下命令后就可以正常打开软件了。前提你的pycharm在你的应用程序文件夹内。sudo xattr -r -d com.apple.quarantine /Applications/PyCharm.app

2022-07-01 09:45:30 2742

原创 Java面试题

Java面试题01 数据库是怎么优化的答:1.数据库I/O方面硬件性能扩大虚拟内存,并保证有足够可以扩充的空间把数据库服务器上的不必要服务关闭掉把SQL数据库服务器的吞吐量调为最大2.调整数据库若对该表的查询频率比较高,则建立索引。分区(如MySQL,按时间分区)尽量使用固定长度字段和限制字段长度(如 varchar(10))优势:降低物理存储空间提高数据库处理速度附带校验数据库是否合法功能3.使用存储过程应用程序的实现过程中,能够采用存储过程实现的对数据库的操作尽

2022-01-24 00:27:13 812

原创 基于SpringBoot的JWT单点登录

单点登录单点登录SSO,分布式架构中通过一次登录,就能访问多个相关的服务。快速入门首先引入Jwt依赖<!-- JWT --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4&

2022-01-15 16:14:04 1896 4

原创 RabbitMQ实现数据库与ElasticSearch的数据同步

生产者消费者导入MQ的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>添加配置spring:rabbitmq:host: localhostport: 5672username: adminpasswo

2021-12-29 20:02:16 3714

原创 SpringCloud搭建ElasticSearch多条件查询

导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency>添加配置文件spring: elasticsearch: rest:

2021-12-29 19:25:45 1468

原创 基于阿里云的OSS文件上传和下载

OSS概述OSS是基于阿里云的一个云平台文件保存的系统,我们可以将服务器的文件上传至云端从而减轻服务器的压力。初体验首先创建一个bucket (给你的云储存器配置名字等基本信息)生成AssessKey (创建密钥等信息)导入依赖文件 <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId>

2021-12-20 19:20:56 4985 3

原创 SpringCloud Alibaba - Nacos

前言随着SpringCloud Netflix组件的停止更新,大多数国内的互联网公司把目光转向Spring Cloud Alibaba,so,果断入坑,下面把学习的过程记录一下。SpringCloud Alibaba的主要组件这些是Spring Cloud Alibaba的几个主要组件Nacos 服务注册和发现组件,类似Eureka,除此还包含配置中心的功能,类似ConfigSentinel 限流、熔断和降级组件,类似HystrixSeata 分布式事务

2021-12-20 19:04:48 225

原创 springcloud-config-配置中心

Config的简介Config的使用Config的手动更新Config的自动更新Config的简介是SpringCloud的配置中心组件,集中管理配置文件,是客户端和服务器端CS模式,配置文件基于Git的。Config的使用在git仓库中提交goods-service服务的配置文件 goods-service-dev.properties命名规则:服务名称-profile名称(dev/test/prod).properties或ymlspring.datasource.driver-c

2021-12-20 18:51:51 119

原创 带你快速了解SpringCloud之Ribbon&Histrix(负载均衡和熔断器)

学习目标Ribbon负载均衡Ribbon的使用Ribbon的负载均衡策略Ribbon的原理Hystrix服务的可用性Hystrix的配置Hystrix的工作机制负载均衡因为请求量特别大的情况下,必须有多台服务来进行处理,配置集群。集群中的机器可能出现忙闲不均的情况,就需要有一套机制,实现平均分配请求量到每台机器上——负载均衡负载均衡分类硬件负载均衡 —— F5软件负载均衡服务端负载均衡 如:Nginx客户端负载均衡 如:RibbonRibbon的使

2021-12-14 19:48:59 1423

原创 快速入门SpringCloud-Eureka

学习目标了解微服务学习服务的注册和发现机制Eureka微服务介绍互联网软件​ 淘宝、京东、抖音…​ 面向互联网用户,用户量特别大​ 带来的问题: 高并发、高可用、高性能企业应用​ OA、ERP、CRM、内部管理系统​ 面向企业内部用户​ 属于单体应用对比单体应用架构和微服务架构1. 单体应用架构相当于把一个整个项目打包部署到一个服务器上缺点:代码复杂性高,一个项目可能包含上百万代码技术更新难项目版本迭代频率低扩展性低,只能垂直扩展(提升硬件)可靠性低,一个bu

2021-12-14 19:10:54 485

原创 带你快速入门socket网络编程

学习目标网络的七层模型TCP和UDP的区别三次握手和四次挥手Tcp编程UDP编程网络的七层模型传输层:TCP和UDP应用层:HTTP协议TCP和UDP的区别对比维度TCPUDP可靠性可靠不可靠速度稍慢更快通信方式点对点点对点、一对多、多对多通信内容字节码数据报应用场景传输文件聊天、视频、语音连接面向连接无连接简单的来说Tcp是一个点对点的传输层协议,需要建立连接。而udp是点对多协议,不需要建立连接

2021-12-11 11:02:17 2314

原创 白话方式让你秒懂什么是消费者生产者模式什么是线程池

第一章 线程的等待和通知第01节 方法引入Object类中的方法wait() 让当前线程进入等待状态,直到被通知为止wait(long) 让当前线程进入等待状态,同时设置时间;直到被通知为止或时间结束notify() 随机通知一个等待线程notifyAll() 通知所有的等待线程注意:等待和通知方法必须是锁对象,否则会抛出IllegalMonitorStateException第02节 案例代码/** * 通过锁对象将线程等待,经过5秒通知该线程来执行

2021-12-09 20:39:18 506

原创 多线程的线程安全问题

第01章 快速入门第01节 线程的上下文切换多线程执行是cpu抢占时间片的方式执行。多线程创建并切换到另一个线程的过程,称之为线程的上下文切换。cup在多个线程的来回切换的过程中会造成性能的降低。第02节 线程的安全问题1. 首先要理解什么是线程安全问题?就是在多线程环境中 , 在某个线程的指令没有执行完毕,cup切换到另外的线程执行指令,导致某些重要的指令没有执行,导致了数据有误。出现线程安全问题的三个条件:多个线程同一个时间执行同一段指令或修改同一个变量2. 银行转账案例/**

2021-12-08 18:55:55 749 4

原创 多线程小练习案例

1. 设计两个线程,一个线程负责打印1100以内所有的偶数;然后,另外一个线程负责打印1100以内所有的奇数。测试时,分别设置线程的优先级,观察执行的顺序。package com.blb.thread.homework;class Thread01 extends Thread{ @Override public void run() { for (int i = 0; i < 100; i++) { if (i % 2 ==0){

2021-12-07 20:23:06 454

原创 多线程基础入门学习

第01章基本概念第01节 程序和进程的区别程序是一种静态概念,是保存在磁盘上的一系列文件进程是一种动态概念,是运行中的程序,一个程序包括一个或多个进程第02节 程和线程的区别进程是程序执行相关资源(CPU、内存、磁盘等)分配的最小单元进程之间是相互独立的,有自己的内存空间线程是CPU资源分配的最小单元进程包含一个或多个线程线程需要的资源更少,可以看做是一种轻量级的进程线程会共享进程中的内存,线程也有独立的空间(栈、程序计数器)线程相互通信更加方便第03节 串行

2021-12-07 20:14:58 400

原创 Vue-Router的基本使用

1.基本概念Vue-Cli构建的是一个单页应用,页面由多个组件(Component)组成,要实现组件的跳转,传统的a标签已经不合适了,所以Vue-Router就出现了。Vue-Router是Vue的路由框架,能实现组件之间的跳转、参数传递等功能。2.Vue-Router的配置2.1 安装 npm install router --save // 安装2.2 配置在main.js中引入router2.使用路由打开我们的vue-cli项目,在router文件夹下的index.js文

2021-11-29 19:54:00 257

原创 使用Vue-Cli整合SpringSecurity搭建前后端分离环境

一、前端部分1.创建一个Vue-Cli项目2.安装axios、qs、element-ui依赖 npm install qs // 安装qs npm install axios // 安装axios npm i element-ui -S // 安装elementUI3. 配置main.js文件tips:设置了原型后,在我们后面的代码编写中,可以直接通过this.的方式来调用我们安装的axios和qs。import Vue from 'vue'import App from

2021-11-29 19:07:48 527

原创 VueCli入门学习

概述Vue-cli是Vue的脚手架,类似Java中的SpringBoot框架,用于搭建一个标准的项目。Vue-cli大大降低了webpack的使用难度,支持热部署,有webpack-dev-server的支持,相当于启动了一个请求服务器作为测试环境,我们只关注开发就可以了。1.安装Vue-Cli1.安装NodeJS需要安装Node.js官网:https://nodejs.org/zh-cn/安装后配置环境变量:在Path中添加NodeJS的全局安装路径2.npm工具NodeJS的包管理工

2021-11-29 18:53:55 625

原创 如何生产简易的验证码

controller层代码实现此demo是使用javaWeb的Servlet方式写的,后期可以改写用于springBoot的controller层。代码演示package com.blb.petshop.controller;import javax.imageio.ImageIO;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http

2021-11-23 20:13:19 372

原创 06-SpringMVC和Ajax交互案例

目前后台和前端进行通信主要的数据格式是:JSON1.1 JSON简介JSON是JavaScript的对象,代码简洁,可读性很高格式有两种:单个对象{“name”:“张三”,“age”:“20”}对象数组[{“name”:“张三”,“age”:“20”},{“name”:“李四”,“age”:“20”}]Java后台和前端Ajax通信时,经常需要接受JSON参数,也可能需要返回JSON给Ajax1.2 相关的注解SpringMVC和Ajax通信的相关注解@RequestB

2021-10-26 18:51:53 198

原创 05-AOP中的代理模式详细剖析

学习目标1、AOP的实现原理2、代理模式3、静态代理4、动态代理1、AOP的实现原理1.1 问题在前面AOP的案例中,为什么将一个对象加入到IOC容器后,取出该对象后,发现它的方法多了一些功能?1.2 AOP的实现原理打印对象的getClass方法,发现原类名的后面多了些东西:原因是:如果该类被AOP切中,从IOC容器取出的对象,不是该类的对象,而是该类代理类的对象。AOP的实现流程:当调用容器的getBean方法后,Spring查找对象后会判断该对象的方法是否被某个切面切

2021-10-25 20:31:21 372

原创 04-SpringMVC_基础

学习目标1、SpringMVC概述2、SpringMVC入门案例3、SpringMVC的执行流程4、处理参数5、返回数据1、SpringMVC概述1.1 回顾MVC设计模式1.1.1 MVC的概念一种Web和桌面应用主流的设计模式M(Model模型)负责数据访问、业务逻辑(dao、service、entity)V(View视图)负责和用户交互、展示数据(页面)C(Controller控制器)负责调用模型、更新视图(servlet-->Controller)作用:解耦,

2021-10-25 20:25:59 109

原创 03-Spring_AOP入门

学习目标1、AOP简介2、AOP在Spring中的实现3、AOP的注解配置4、AOP日志跟踪案例1、AOP简介1.1 AOP基本概念AOP(Aspect Oriented Programming)面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容。1.2 AOP的作用AOP的核心作用是:在程序运行期间,不修改代码的同时为程序增强功能。将必不可少的公共功能做成切面,随着程序运行切

2021-10-21 18:55:18 79

原创 02-Spring中ioc实现原理

6、 IOC的实现原理6.1 思考思考问题1上面案例中,配置了@Component注解后,Spring是怎么知道这个类上有这个注解的?思考问题2没有使用new关键字,Spring是如何创建对象的?思考问题3Spring是如何将创建的对象注入到对应的属性中的?6.2 IOC实现原理问题的答案是:通过反射机制+工厂模式实现工厂模式是GOF23设计模式之一,主要封装JavaBean的创建过程自定义注解基本使用@Target(ElementType.值) //Target元注解 目标

2021-10-21 18:47:53 66

原创 01-Spring_快速入门

学习目标1、Spring框架简介2、IOC概念3、IOC容器4、IOC的XML配置案例5、IOC的注解配置案例6、IOC的实现原理1、Spring框架简介1.1 Spring基本概念Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

2021-10-20 22:03:36 116

原创 JDBC连接池

课程笔记 连接池 Spring工具类第一章 连接池第01节 基础理论1、什么是连接池池的概念概念描述: 提前创建好的一堆对象,保存到内存当中,需要使用的时候,拿出来,用完之后,就归还回去。(可借可还) 举例说明,生活实例: 定浩他是餐馆的老板,洪湖定浩小蒸龙虾。 情况一: 1. 有顾客上门就餐,定浩要亲自服务 2. 为什么需要亲自服务啊? 因为没有服务员,只有老板一人 情况二: 1. 定浩现在先需要招聘一个兼职(郭龙兼职服务员) 2. 有顾客上

2021-08-22 14:18:19 124

原创 JDBC基础入门

课程笔记Day29JDBC快速入门JDBC相关APISQL注入问题JDBC工具类第一章 JDBC快速入门第01节 基础理论1、JDBC介绍2、JDBC步骤操作步骤1. 导入jar包2. 找到驱动 Driver3. 获取连接 Connection4. 获取操作 Statement5. 查询结果 ResultSet6. 释放资源第02节 案例代码1、准备数据-- 1. 创建数据库DROP DATABASE IF EXISTS mydb08;

2021-08-19 21:16:30 162

原创 04_Mysql_事务&隔离级别

课程笔记数据库范式数据库事务数据库视图备份和还原第一章 数据库范式第01节 基础理论什么是数据库范式?我们在设计一张表的时候,需要遵循的一些数据库设计的规范。为什么需要使用范式呢?为了减少数据库的当中数据冗余。(减少重复同一个表当中,出现数据重复的情况)数据范式的分类(1) 第一范式 1NF (2) 第二范式 2NF (3) 第三范式 3NF (4) 巴斯科德范式 BCNF (5) 第四范式 4NF (6) 第五范式 5NF

2021-08-19 00:19:10 99

原创 03_Mysql_约束与多表关系

课程笔记Day27约束多表关系第一章 约束第01节 基础理论1、约束概述什么是约束呢?约束有什么作用呢?生活当中的约束: 法律的约束、道德的约束 前面学习过的约束: XML当中 DTD约束、Schema约束 约束: 可以保证数据的完整性、正确性。例如: 1、身份证号码,不能重复。我们会使用到 不能重复的约束,就是 唯一约束 2、姓名,不能为null。我们会使用到 不能为空的约束,就是 非空约束 3、表和表之间建立的关系,可以使用到 主键和外键等约束2、约束分类

2021-08-17 20:31:29 94

原创 02_Mysql_查询数据

课程笔记单表查询多表查询多表练习第一章 单表查询第01节 分组查询1、语法格式基础语法-- 简化写法SELECT 分组字段,聚合函数 FROM 表名称 GROUP BY 分组字段;-- 完整写法SELECT 分组字段,聚合函数 FROM 表名称 WHERE 分组前条件 GROUP BY 分组字段 HAVING 分组后条件;理解:分组的效果1、分组之后,查询的结果只能是两个内容:要么是 分组的字段,要么是聚合函数2、分组的效果,相当于是 字段当中,对相同的内容,进行去重合

2021-08-17 20:27:00 357

原创 01_Mysql_基础入门

课程笔记Day01DDL语句DML语句DQL语句第一章 DDL语句第01节 操作数据库1、创建数据库简单的创建语法-- 语法格式:CREATE DATABASE 数据库的名称;-- 案例代码: 创建了一个数据库,数据库的名称叫做 mydb02CREATE DATABASE mydb02;完整的创建语法-- 语法格式CREATE DATABASE IF NOT EXISTS 数据库的名称 CHARACTER SET 数据库使用的字符集; -- 案例代码:创建一个数据库

2021-08-17 20:20:59 382

原创 21-Java-XML&正则表达式

学习目标1、了解XML的发展跟历史2、了解XML跟HTML的区别3、熟练XML的语法规则3、了解XML的约束4、熟练XML的解析5、熟练正则的解析第1章 XML1.1 概述XML(EXtensible Markup Language)可扩展的标记语言。主要用于数据交换。在HTML发展过程中,由于游览器厂商的恶性竞争,都在兼容不规范的写法,以用来吸引开发者。这与W3C的初衷相违背。于是W3C制定了XML标准,想以此替代HTML进行数据展示。但此并不能吸引开发者,XML最终以失败告终。XML

2021-08-09 21:53:37 520 2

原创 20-Java-对象操作流与深浅克隆与属性集

课程笔记Day20对象操作流属性集Properties第一章 对象操作流第01节 ObjectOutputStream快速入门//目标:学习对象操作流的快速入门(对象序列化操作)public class Test01 { public static void main(String[] args) throws IOException { String path = "JavaSEDay20\\dir\\文件01.txt"; //1.创建对象

2021-08-06 21:34:14 116

原创 关于IO流与集合综合应用的一个小案例

需求第01题 对象存储问题存在这样的学生数据:(Student类)姓名:张三,年龄: 23,性别:女姓名:李四,年龄 24,性别:男姓名:王五,年龄 25,性别:女1、将这些数据存储到集合当中(内存存储)2、将集合数据存储到文件当中(硬盘存储) studentinfo.txt存储的格式如下:张三@23@女李四@24@男王五@25@女第02题 对象读取问题将上一题当中的数据。文本文件 studentinfo.txt 的数据,读取到集合当中。集合固定为 ArrayList

2021-08-05 22:37:32 223 2

原创 19-Java-异常与IO

课程笔记Day19字符文件流转换流字符缓冲流第一章 字符文件流第01节 基础理论为什么需要使用字符流呢?因为字节流操作文本文件的时候,容易出现 中文乱码问题。这种情况下,我们需要使用字符流。例如: 将文本文件的数据,读取到控制台当中,展示结果(采用字节流)编码表介绍公式char = byte + 编码表;字符 = 字节(0和1) + 编码表;//字符流的由来就是 字节流和编码表的组合。第02节 FileWriter字符文件输出流 FileWriter构造方法

2021-08-05 22:23:51 66

原创 18-Java-异常与IO

学习目标1、了解异常和错误的区别2、了解异常的分类3、掌握异常的捕获跟处理3、掌握自定义异常4、掌握IO流的分类跟功能5、掌握使用字节流跟字符流读写数据6、掌握缓冲流、对象流、Properties的使用第1章 异常1.1 概述​ 正常情况下,小王从家里去上班,路上大概需要1个小时。但是,偶尔总会有各种情况发生,比如堵车、撞车等。这就是上班过程中的异常行为。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tnQUwo0d-1628173011828)

2021-08-05 22:20:49 166

原创 17-Java-JDK8实践类与异常

课程笔记Day17JDK8的时间类异常类第一章 JDK8的时间类第01节 基础理论常用类1. LocalDateTime 操作日期和时间的。日期(年月日星期)时间(时分秒毫秒)2. LocalDate 操作日期(年月日星期)3. LocalTime 操作时间(时分秒毫秒)备注:JDK8的时间类是 线程安全的第02节 常用API创建对象格式1. 获取当前时间 LocalDateTime ldt = LocalDateTime.now(); 2. 设置

2021-08-05 22:16:25 205

原创 16-Java-JDK8新特性

课程笔记Day16第一章 Lambda表达式 第01节 基础理论 第02节 系统函数式接口 第03节 省略策略 第04节 Lambda和匿名内部类第二章 方法引用 第01节 体验一下 第02节 成员方法引用 第03节 静态方法引用 第04节 构造方法引用第三章 Stream流 第01节 基础理论 第02节 常用API课程笔记Day16Lambda 表达式方法引用Stream流JDK8的时间类第一章 Lam

2021-08-03 15:05:55 125

原创 14-Java-集合01

课程笔记Day14Collection 集合List 集合Set 集合第一章 Collection集合第01节 基础理论集合的由来数组有什么特点?1. 可以存储任意数据类型(基本数据类型或者引用数据类型)2. 数组的长度是固定的,不可以改变的上面特点当中,我们知道数组的长度固定,无法满足变化的需求,有时候,长度需要不断的变化,这种情况下,怎么办?就需要采用集合类去完成。集合的特点:1. 可以存储引用数据类型。(不能存放基本数据类型)2. 长度是可变的集合是一种容器,比方

2021-07-30 00:54:59 93

空空如也

空空如也

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

TA关注的人

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