自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小牧的博客

趁年初埋头苦干,免来日仰慕他人

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

原创 Shiro

ShiroApache旗下的一款安全权限框架shiro可以完成:认证,加密,授权,会话管理,以及web集成,什么是shiroShiro是apache旗下一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框架。Apache Shiro 特性Apache Shiro是一个全面的、蕴含丰富功能的安全框架什么是权限管理基本上涉及到用户参与的系统都要进行权限管理,权限管理属于系统安全的范畴,权限管理实现`对用户访问系统的

2021-08-03 09:53:50 652

原创 SpringCloud-alibaba(Sentinel+分布式事务+分布式锁)

七、Sentinel官网地址:https://github.com/alibaba/Sentinel/wiki/%E4%BB%8B%E7%BB%8D7.1.服务保护的基本概念7.1.1.服务接口保护有哪些方案?黑名单和白名单、对IP实现限流/熔断机制、服务降级、服务隔离机制服务熔断:熔断机制是应对雪崩效应的一种微服务链路保护机制。假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调

2021-08-03 09:27:53 2599

原创 SpringCloud-alibaba(Ribbon+OpenFeign客户端+Gateway)

四、客户端负载均衡器Ribbon4.1.SpringCloud负载均衡器说明在SpringCloud第一代中使用Ribbon、SpringCloud第二代中直接采用自研发loadbalancer即可,默认使用的Ribbon。使用方式非常简单: @Bean @LoadBalanced public RestTemplate restTemplate() { return new RestTemplate(); }4.2.LoadBalancerClient负载均衡器@Requ

2021-07-13 12:34:52 785 1

原创 SpringCloud(微服务概述+Nacos 分布式注册 | 配置中心)

SpringCloud一、微服务概述1.什么是微服务?微服务(Microservice Architecture) 是近几年流行的一种架构思想通常而言,微服务架构是一种架构模式,或者说是一种架构风格,它将单一的应用程序划分成一组小的服务,每个服务运行在其独立的自己的进程内,服务之间互相协调,互相配置,为用户提供最终价值,服务之间采用轻量级的通信机制(HTTP)互相沟通,每个服务都围绕着具体的业务进行构建,并且能狗被独立的部署到生产环境中,另外,应尽量避免统一的,集中式的服务管理机制,对具体的一个服务

2021-07-13 12:30:56 736 2

原创 RocketMQ超详细笔记-附面试题

1. MQ介绍1.1 为什么要用MQ消息队列 Message Quequing 是一种“先进先出”的数据结构其应用场景主要包含以下3个方面异步解耦系统的耦合性越高,容错性就越低。以电商应用为例,用户创建订单后,如果耦合调用库存系统、物流系统、支付系统,任何一个子系统出了故障或者因为升级等原因暂时不可用,都会造成下单操作异常,影响用户使用体验。使用消息队列解耦合,系统的耦合性就会提高了。比如物流系统发生故障,需要几分钟才能来修复,在这段时间内,物流系统要处理的数据被缓存到消息队列中,用户的

2021-06-30 16:49:48 1550 1

原创 Elasticsearch-2-附面试题

一、ES1、分片(Shards)一个索引可以存储超出单个节点硬件限制的大量数据。比如,一个具有10亿文档数据的索引占据1TB的磁盘空间,而任一节点都可能没有这样大的磁盘空间。或者单个节点处理搜索请求,响应太慢。为了解决这个问题,Elasticsearch提供了将索引划分成多份的能力,每一份就称之为分片。当你创建一个索引的时候,你可以指定你想要的分片的数量。每个分片本身也是一个功能完善并且独立的“索引”,这个“索引”可以被放置到集群中的任何节点上。分片很重要,主要有两方面的原因:1)允许你水平分割 /

2021-06-28 10:35:20 1147 1

原创 ElasticSearch-入门

ELASTIC SEARCH一、ES入门1、简介mysql用作持久化存储,ES用作检索基本概念:index库>type表>document文档index索引动词:相当于mysql的insert名词:相当于mysql的dbType类型在index中,可以定义一个或多个类型类似于mysql的table,每一种类型的数据放在一起Document文档保存在某个index下,某种type的一个数据document,文档是json格式的,document就像是mysql中的某个

2021-06-28 08:29:12 541 1

原创 Redis-进阶

一、Redis配置文件简介includes (导入)network 网络配置日志文件数据库 16 个持久化redis密码限制 client最大客户端最大内存容量内存达到最大上限的策略二、缓存失效策略 淘汰策略内存达到上线的处理策略1.volatile-lru(least recently used):从设置了过期时间的键中选择空闲时间最长的键值对清除掉;2.volatile-lfu(least frequently used):从设置了过期时间的键中选择某段时间之内使用频次最

2021-06-18 18:08:31 132

原创 Redis-基础

Redis一、Redis概述官网:https://redis.io1.概念Redis是用C语言开发的一个开源的高性能基于内存运行的键值对NoSQL数据库关系型数据库:mysql、oracle...非关系型数据库(NOSQL):redis、hbase...2.特征(1) 支持数据的持久化,可以将数据保存在磁盘中,重启之后可以再次加载到内存中使用(2) 支持多种数据类型,除了KV类型的数据,还支持list、set、hash等数据结构(3) 支持master-slave模式的数据备份NOSQ

2021-06-16 18:47:08 94

原创 SpringBoot

SpringBoot一、概述1.Spring Boot是什么Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架采用“习惯优于配置”的方式开发,可以快速构建Spring应用。特性能够创建独立的Spring应用本身嵌入了Tomcat、Jetty容器提供可选的starter依赖库简化应用构建配置自动配置Spring以及第三方依赖提供生产级的特性,如度量、检查和外部化配置无代码生成并且不需要XML配置2.

2021-06-10 15:01:39 679 2

原创 ssm整合

ssm整合1.完整的依赖pom.xml <dependencies> <!-- 测试相关 --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version>

2021-05-25 21:57:41 94 1

原创 SpringMVC

SpringMVC一、概述1.MVC概述1)MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。2)模型(dao,service)、视图(jsp)、控制器(servlet)3)是将业务逻辑、数据、显示分离的方法来组织代码。4)MVC主要作用是降低了视图与业务逻辑间的双向偶合。5)MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。2.Spring MVC概述1)Spring 为展现层提供的基于 MVC 设计理念的优秀的

2021-05-25 21:39:43 346 1

原创 Mybatis

Mybatis一、概述1.Mybatis是什么?MyBatis 是一款优秀的持久层框架,一个半 ORM(对象关系映射)框架2.ORM是什么?ORM(Object Relational Mapping),对象关系映射是一种为了解决关系型数据库数据与简单Java对象(POJO)的映射关系的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系型数据库中。半自动ORM:在查询关联对象或关联集合对象时,需要手动编写sql来完成(Mybatis)全自

2021-05-24 17:35:44 1283 13

原创 Spring(IOC+AOP)

Spring一、概述1.什么是spring?是一个轻量级的IOC和AOP容器的开源框架。框架:完成一定功能的半成品轻量级:一般就是非侵入性的、所依赖的东西非常少、占用资源非常少2.Spring的核心IOC:控制反转,把创建对象过程交给Spring进行管理。AOP:面向切面编程,不修改源码进行功能增强。3.Spring的模块Web:spring对web的支持(SpringMVC)AOP:切面Aspects:配合AOP完成切面Insteumentation:拦截器里的一个东西C

2021-05-20 17:54:57 161 2

原创 JavaWeb

JavaWeb一、概述1.常见的体系结构:C/S 客户端/服务器 Client/Server优点:用户信息安全性较好;对网络带宽要求低。B/S 浏览器/服务器 Browser/Server优点:轻量级;安全性好2.WEB资源HTML:静态资源JSP/Servlet:动态资源URL:统一资源定位符URI:统一资源标识符协议名://域名:端口/路径二、TomcatWeb服务器1.接受客户端请求,给客户做出响应。   把项目放到web服务

2021-04-19 13:16:01 1390 12

原创 jQuery

jQuery1.jQuery 概述jQuery 是一个快速、简洁的 JavaScript 库。jQuery 出现的目的是加快前端人员的开发速度,我们可以非常方便的调用和使用它,从而提高开发效率。2.jQuery 的入口函数(1)$(document).ready(function(){ ... // 此处是页面DOM加载完成的入口 });(2)简写:$(function () { ... // 此处是页面 DOM 加载完成的入口 }) ;3.jQuery

2021-04-16 17:52:30 86

原创 JS-02

JS-02一、函数1.初识函数函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。函数也是一个对象,只不过这个函数对象里面封装的时一些可执行的代码2.创建函数function命令, 使用关键词 function来声明函数function 函数名(){}​ 注:关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。3.函数的调用函数会在什么情况下调用:1、当事件发生时(点击按钮,例如轮播图中的小圆点)2、当js代码调用时 cfb();4

2021-04-15 17:07:37 249

原创 JS-01

JavaScript一、JS基础1.概述1.1.JS是脚本语言.1.2.JS是弱类型(类型可变)JAVA是强类型(确定好的变量类型,类型不可变)2.嵌入JavaScript代码三种方式2.1、内部引入写在<script>标签中<script type=”text/javascript”>...........</script>2.2、以外部文档形式连接到HTML文档中<script type="text/javascript" src="o

2021-04-15 15:45:16 168

原创 CSS-02

css-02一、块级元素,行级元素,行级块元素1.块元素独占一行。block2.行元素的宽度是由内容决定的。inline   行元素不能手动设置宽高3.行级块 元素,可以设置宽高,也可以在一行显示。inline-block二、选择器1.全局选择器* { /*通配符*/ }2.群组选择器选择器1,选择器2,……{ 属性名:属性值 }3.层次选择器1、后代选择器 空格2、子代选择器 > 3、相邻兄弟 +

2021-04-14 11:48:10 163 7

原创 CSS-01

CSS-01CSS指层叠样式表 (Cascading Style Sheets)css样式 定义 如何显示 HTML 元素一、css引入方式1.内联样式​ 在相关的标签内使用样式(style)属性。Style 属性可以包含任何 CSS 属性2.内部样式表​ 使用 3.外部样式表​ 每个页面使用 标签链接到样式表。 标签在(文档的)头部<head> <link rel="stylesheet" type="text/css" href="mystyle.css" /&g

2021-04-13 13:53:52 138 2

原创 HTML

HTML1.什么是 HTML ?html 超文本标记语言 (HyperText Markup Language)超文本就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。2.HTML超文本标记语言超文本: 文本内容+非文本内容(图片、视频、音频)标记:<单词> 也叫标签语言:编程语言标记也叫作标签:单标签 <br /> 双标签<html></html>3、HTML初始化代码<!DOCTYPE html> <

2021-04-13 10:55:09 115 5

原创 JDBC

JDBCJAVA连接数据库JDBC接口规范解决了Java程序员与不同数据库用不同方法的难题原理:JAVA发送SQL需求给数据库–JAVA通过JDBC来连接数据库–各大厂商实现jdbc结构的jar包–数据库执行SQL使用 JDBC 使用到的包:java.sql 所有与 JDBC 访问数据库相关的接口和类JDBA核心API接口DriverManager(驱动) 依据数据库的不同,管理JDBC驱动。Connection(连接) 负责连接数据库并担任传送数据的任务。Statement(由C

2021-04-01 18:21:58 239

原创 视图、事务

视图View1.含义虚拟表,和普通表一样使用本身是一个虚拟表,它的数据来自于表,通过执行时动态生成。好处:1、简化sql语句2、提高了sql的重用性3、保护基表的数据,提高了安全性索引对数据库表中的值进行排序的一种结构。目的:加快检索表中数据索引的优点1.索引能大大的加快数据的检索速度;2.索引能减少磁盘的I/O;缺点:1.索引的创建和维护需要消耗大量时间;2.数据量越大,创建和维护时间越长;3.索引真实占用物理空间。事务1.概述:事务是工作的逻辑单元;事务:一条

2021-03-31 19:19:43 225

原创 查询 select

查询 select1.语法:select * from 表名; //查询全部select 列名,列名,... from 表名; 2.起别名语法:列名 AS 别名;3.条件查询select 列名 from 表名 where 条件 逻辑运算:AND 与;OR 或;NOT 非4.范围查询:BETWEEN ... AND ... 在两个值之间(包含边界)IN(set,set,...) 等于 值列表中的一个5.模糊查询:LIKE​

2021-03-30 14:03:24 4008 4

原创 MySQL

MySQL1.概述以二维表形式存储–>关系型数据库;MySQL是一种开源的关系型数据库。varchar 字符型localhost2.SQL分类DDL(数据定义语言):对数据库和数据库表的基本操作,数据库的创建、删除,表的创建,删除,truncate等DML(数据操作语言):主要包括对数据库的增删改操作DCL(数据控制语言):主要指的是数据库的备份和还原操作。DQL(数据查询语言):主要包括一些询操作TCL(事务控制语言):事务相关操作。3.DML语言1.新增 insert语

2021-03-29 15:57:06 313 3

原创 I/O流

一、I/O流1.File1.1File类概述​ 它是文件和目录路径名的抽象表示形式。​ 通过File类可以查看文件的基本信息。​1.2.实例化对象​ File f = new File(String pathname) pathname为给定的路径名​1.3.File类常用方法createNewFile() 当文件不存在时,创建一个该路径名的新空文件isDirectory() 测试路径名是否为目录exists() 测试路径名是否为文件 public

2021-03-25 14:04:51 283 3

原创 java基本语法

1.数据类型java分为基本数据类型和引用数据类型基本数据类型(四类八种)byte;short;int;long;float;double;char;boolean引用数据类型:class;string2.变量的命名规定: 1)由字母、数字、下划线(_)、$符号组成 2)不能以数字开头 3)不能使用java关键字 4)不能使用汉字规范: 1)变量名有意义 2)使用驼峰命名法3.JAVA内存:栈:先进后出堆:先进先出定义变量时,先在堆中开辟一片空间,栈中有一个标识符指向堆

2021-03-24 16:19:09 221

原创 方法

1.关键字break 终止整个循环 用于switch语句的作用是结束一个switch语句。 用于循环语句中的作用是结束当前所在的循环语句。continue 用在循环,跳过本次循环; 中止正在进行的本轮循环,跳过后面剩余的语句,进行下一次循环;return 可用在方法内,退出整个方法;2.方法2.1.JAVA方法是语句的集合,它们在一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法在程序中创建,在其他地方被引用2.2语法 修饰符 返回值类型 方法名(参

2021-03-24 16:05:57 88

原创 数组

数组1. 总结1)数组是存储同一种数据类型多个元素的集合。2)数组既可以存储基本数据类型,也可以存储引用数据类型。3)声明一个数组就是在内存空间划分出一串连续的相同类型的空间。2.语法:(1)先赋值再定义数据类型[ ] 数组名 = new 数据类型 [ 数组长度 ](2)定义和赋值在一起进行int[] a = {1,3,4,67,2,5};注意:数组长度一旦给定,就不能修改;数组使用下标来访问元素,下标从0开始。3.输出数组int[] arr = {57,25,135,121,11

2021-03-24 15:54:20 120

原创 面向对象oop

面向对象1.类和对象类是对象的类型,是抽象的,java就是由不同功能的类组成对象是类的实例;2.类的构成:类是由抽象出的属性和行为组成的对一种实物的描述属性 是类的成员变量,行为 是类的方法。3.成员变量和局部变量的区别3.1.成员变量:方法之外的变量成员变量具有默认值。数值型变量的默认值是0,布尔型变量的默认值是false,引用类型变量的默认值是null。3.2.局部变量:类的方法中的变量。局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。4.封装4.1.封

2021-03-24 15:45:15 84

原创 继承、抽象、构造器

一、继承1.继承可以使得子类具有父类的属性和方法,还可以在子类中重新定义,以及追加属性和方法2.继承的特性:2.1.子类拥有父类所有非private的属性、方法。2.2.子类可以拥有自己的属性和方法,即子类可以对父类进行扩展2.3.java继承是单继承,但是可以多代继承。即一个子类只能继承一个父类,一个类可以被多个子类继承3.extends 关键字格式:class 子类 extends 父类 { }4.方法重写 、重载方法重写 override子类继承父类以后,对父类中同名的方法

2021-03-24 15:19:42 174

原创 接口、多态、异常

一、接口1.概述接口用关键字interface修饰 ; 格式:interface 接口名 类实现接口用implements表示; 格式:类名 implements 接口名 2.总结:1.接口是对外的;2.接口,实际上可以看成一种规范3.接口不能实例化 ;4.接口没有构造方法 ,因为接口主要是扩展功能的,而没有具体存在5.接口里的变量都是全局静态常量;(public static final)6.接口里的方法没有方法体;都是全局抽象方法(public abstract)7.非抽

2021-03-24 15:00:28 329 4

原创 集合

一、集合概述:集合类存放的都是对象的引用,而非对象本身;集合类型:set(集)、list(列表)和map(映射);集合接口:Collection,Map,list,set;集合是一个动态的数组;集合里不能存放基本数据类型,可以存放包装类。1.collection接口表示一组对象;可重复,无序的List集合 元素可重复;有序的;每一个元素都存在索引; ArrayList 实现类 LinkedList 实现类1.1.ArrayList常用方法add( )

2021-03-24 14:44:18 83

原创 常用工具类 API

一、常用工具类 APIAPI 应用程序编程接口1.Object所有类的基类Object的常用方法:​ hashCode() 获取对象的hash值​ toString() 将对象信息变为字符串返回​ equals() 判断两个内存地址是否一样​ getClass()获取类名2.String2.1概述​ String类是一个final类,不可被继承​ String类可以看成一个char型的数组。​ 对字符串重新赋值是重新开辟了一块内存区域2.2.string常用方法 le

2021-03-24 14:35:12 2339 6

空空如也

空空如也

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

TA关注的人

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