自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一、Oracle学习笔记

2.程序全局区(PGA):当用户访问数据库时,实例为用户进程启动一个服务器进程,并分配一段内存区,用来保护用户进程的私有信息和控制信息。物理读:服务器进程将数据从数据文件的数据块中读到数据库高速缓存中,然后在数据库高速缓存对数据进行访问,这次数据访问叫做:“未命中”1.实例中的这部分内存结构叫做系统全局区(SGA):存储数据库中的数据、存储数据字典的信息、重做日志、经过解析的SQL代码等。存放最近访问的数据字典的信息,在查询相关的数据字典时,可以直接在数据字典缓存中执行。(命令文本、解析结果、执行计划)

2023-12-13 08:00:00 1018

原创 十三、C#笔记

其中一个指定了TaskCreationOptions的值(TaskCreationOptions是枚举,它包含了枚举值的一个超集)//利用这个方法的重载版本,可以提供对于每个线程来说都是私有的局部数据,以便将状态信息传给循环的其他并发迭代。///23.3.3使用Task类实现并行处理(略)Task.WaitAll(task, task1);//等待task和task1都完成。//等待task或task1都完成。

2023-12-12 13:30:00 492

原创 十二、C#笔记

4.索引器声明中指定的index将用调用索引器时指定的索引值来填充。///16.1.3操作二进制数。* 1.索引器不是方法——没有一对包含参数的圆括号,但有一对指定了索引的方括号。索引指定要访问哪一个元素。//数组中的数据是‘T’类型。//反转bits变量索引6的二进制位。* 3.和属性一样,索引器也包含get和set这两个访问器。* 3.索引器不能作为ref或out参数使用,数组元素则能。public T Dequeue()//t作为返回址的类型。//16.5在windows应用程序中使用索引器。

2023-12-11 19:30:00 486

原创 十一、C#笔记

// 定义获取可选参数的构造器,并在创建对象时,通过指定参数名的方式为特定参数传递实参(具名参数)*不过,在属性的帮助下,可以获得两全其美的结果,即维护了封装性,又能使用字段风格的语法。* 2.访问器的访问修饰符所指定的可访问性在限制程度上必须大于属性的可访问性。//15.2什么是属性(属性包含两个代码块get\set)///15.2.2只读属性(把属性设为私有)///15.2.3只写属性(只包含set)///15.2.4属性的可访问性。///15.4.1用属性替代方法。///15.4.2生成自动属性。

2023-12-11 12:00:00 436

原创 八、C#笔记

3.用于实现接口的所有方法都必须具有public可访问性。* 虽然一个接口能从另一个接口继承,但不允许从结构\记录或类继承.///13.1.5显示实现接口(类里面实现的接口,用接口.方法名)* 不能为任何方法指定访问修饰符\接口所有方法都隐式为公共方法。* 不能在接口中嵌套任何类型(例如枚举\结构\类或其他接口)* 如果在写好接口、接口具体方法后,还想加入新的接口。* override(重写)方法是方法的另一个实现。* virtual(虚)方法是方法的第一个实现。* 则不应该为方法添加访问修饰符。

2023-12-10 17:45:00 385

原创 七、C#笔记

扩展方法在一个静态类中定义,被扩展类型必须是方法的第一个参数,而且必须附加this关键字。* params关键字对方法的影响是,调用该方法时,可传递任意数量的整数实参,而不必担心创建数组的问题。* 如果类A派生自类B,就能访问B的受保护的成员。也就是说,在派生类A中,B的受保护成员实际是公共的。也就是说,在A中,B的受保护成员实际的私有的。* 但是没有照顾到所有的情况,发生变化的不是参数类型而是参数的数量,重载就力不从心了。* 1.获取可选参数的方法仍然有固定参数列表,不能传递一组任意的实参,

2023-12-10 12:00:00 388

原创 六、C#笔记

/结构是值类型,不调用构造器也可以创建结构表变量,但是其中的字段并未初始化。* 实例字段在结构声明时不能被初始化。//赋值了才可以复制。///9.1.3选择枚举字面值(给第一个变量赋值)///9.1.4选择枚举的基础类型。///9.2.2理解结构和类的区别。///9.2.4理解结构的初始化。///9.2.5复制结构变量。///9.1.2使用枚举。///9.2.3声明结构变量。/// 9.1.1声明枚举。/// 9.2.1声明结构。/// 第九章:使用枚举和结构创建值类型。

2023-12-09 18:00:00 329

原创 五、C#笔记

方法结束后(不管正常返回还是抛出异常),为参数和局部变量分配的内存都自动归还给栈,并可在另一个方法调用时重新使用。* 内存管理方式(散步在房间里的一大堆房子):创建新对象时,“运行时”查找空箱子,把它分配给对象。* 如o真的引用了一个已装箱int,转型成功执行,编译器生成的代码会从装箱的int中提取出值。* 内存管理方式(堆的越来越高的箱子):调用方法时,它的每个参数都被放入一个箱子并放到栈顶。* 设计的目标:使用new关键字创建对象(类的实例)时,构造对象所需的内存总是从堆中获取。

2023-12-09 11:00:00 386

原创 四、C#笔记

/7.6.2使用const关键字创建静态字段,只有数值类型、字符串、枚举才可以声明。* 匿名类虽然好用,但内容存在着相当多的限制。匿名类只能包含公共字段,字段必须初始化,不能是静态,而且不能定义任何方法。* 静态方法不依赖类的实例,不能在其中访问类的任何实例字段或实例方法。* 静态类只能包含静态成员(使用该类创建的所有对象都共享这些成员的单一拷贝)* new操作符创建静态类的对象没有意义,编译器也会报错。* 2.控制对方法和数据的访问,也就是为了控制类的使用。* 静态类纯粹作为工具方法和字段的容器使用。

2023-12-08 18:00:00 424

原创 三、C#笔记

catch (Exception e) when (catchErrors == true)//筛选异常。catch (OverflowException oEx)//多个catch处理。catch (FormatException fEx)//捕捉异常。//5.1使用复合赋值操作符。//5.2编写while语句。//5.3编写for语句。/// 6.2使用checked和unchecked进行整数运算。//6.2.2编写checked表达式。//5.4编写do语句。//6.2.1编写checked语句。

2023-12-08 12:00:00 380

原创 二、C#笔记

* 在应用程式的多个位置写相同的代码,选定并右击输入的代码块,选择快速操作和重构,再单击提取方法*/// Console.WriteLine("num=3");//出错标签之间有额外的代码。//1和2都执行相同的代码。///提供具名参数,编译器会将参数名和方法声明中指定的参数名比较,并选择参数名称匹配的方法。///3.5.2传递具名参数。//4.2.1理解相等和关系操作符(==,!///3.5.3消除可选参数和具名参数的歧义。

2023-12-07 20:00:00 519

原创 九、C#笔记

2.检查是否有任何不可达对象包含一个需要运行的终结器.需要被终结的任何不可达对象都放在一个称为freachable的特殊队列中.* using语句声明的变量的类型必须实现IDisposable接口在System命名空间中,只包含一个名为Dispose的方法。* 4.非常健壮,using语句结束后,就不能使用using语句中声明的变量了,因为它已不在作用域。///14.1.1编写终结器(使用终结器,可在对象被垃圾回收时执行必要的清理)* 需理解的最后一个重点是,终结器只有在对象被垃圾回收时才运行.

2023-12-07 16:06:47 503

原创 一、C#笔记

Console.WriteLine($"--myInt 后myInt=11 输出的是{--myInt2}");Console.WriteLine($"myInt-- 后myInt=11 输出的是{myInt--}");//2.8声明隐式类型的局部变量(var 除非万不得已,否则不要使用隐式类型的变量。//2.6.4 使用结合性对表达式进行求值(操作数的求值方向(从左往右))//2.5.2显示基元数据类型的值(调试)//2.5.1未赋值的局部变量(会报错)//int/int=2会向下取整。

2023-12-07 15:30:56 679 3

原创 Vue学习:创建Vue

usr/local/bin/路径是你的程序命令执行路径,相当与Windows系统下的环境变量 PATH 路径,配置后可以在系统的任意位置执行你的命令。回到项目文件夹,会发现项目结构里,多了一个node_modules文件夹(该文件里的内容就是之前安装的依赖).基于node.js利用淘宝npm镜像安装相关依赖,由于国内使用npm会很慢,这里推荐使用淘宝NPM镜像。至此Node.js已经安装完成,可以先进行下简单的测试安装是否成功了,后面还要进行环境配置。我之前没试过这个方法,就报错了。(这种方式比较便捷)

2023-08-14 12:00:00 112

原创 第一章:计算机与编程导论

如果这些指令是正确的,而且是以计算机能够理解的格式编写的,就可以把这些指令作为一个程序输入并运行,在商品购进和售出时记录数据。当你执行保存命令,计算机会对正在处理的主存储器数据进行复制,并将副本存储在辅助存储器例,辅助存储器非易失的,这意味着当计算机断电时,数据不会丢失。当一个java程序的字节码运行时,字节码被计算机的字节解释器程序(java虚拟机,简称jvm)翻译成目标代码。像源代码一样,字节码是通用的,因此它可以在任何卫类型的计算机上运行。(9)应当注意你编写的程序或设计的系统所造成的社会后果;

2023-08-13 10:27:27 232

原创 Visual Basic学习(五)函数

二、方法的定义:可以相同名字,传入不同参数(方法重载)

2023-06-26 12:05:50 158

原创 Visual Basic学习(四)判断语句

条件运算符:Or、And、OrElse(前面那个判断成功不用继续)、AndAlso(前面那个判断失败不用继续)判断:=、>、=、

2023-06-25 12:51:27 316

原创 Visual Basic学习(三)数据类型

【代码】Visual Basic (三)数据类型。

2023-06-25 12:41:46 209

原创 Visual Basic学习(二)了解项目

(2)App.config程序运行的配置信息。(1)My Project记录程序相关信息。(3)Module1.vb代码主要填写块。

2023-06-25 12:36:06 115

原创 Visual Basic学习(一)安装、创建项目

visual Basic安装、创建

2023-06-21 11:57:40 674

原创 悲观锁、乐观锁以及分布式锁

当数据库执行select for update时会获取被select中的数据行的行锁,因此其他并发执行的select for update如果试图选中同一行则会发生排斥(需要等待行锁被释放),因此达到锁的效果。1.2.1乐观锁,也叫乐观并发控制,它假设多用户并发的事务在处理时不会彼此互相影响,各事务能够在不产生锁的情况下处理各自影响的那部分数据。冲突频率: 如果冲突频率非常高,建议采用悲观锁,保证成功率,如果冲突频率大,乐观锁会需要多次重试才能成功,代价比较大。悲观锁特点:先获取锁,再进行业务操作。

2023-02-11 12:00:00 2585 2

原创 微服务保护:一、初识Sentinel

​ Sentinel是阿里巴巴开源的一款微服务流量控制组件。官网地址:https://sentinelguard.io/zh-cn/index.html。

2023-02-10 12:00:00 423

原创 MySQL数据库

该参数支持在会话级别修改,方便应用在会话级别单独设置某些特殊操作的行锁等待超时时间,如下:set innodb_lock_wait_timeout=1000;MyISAM:只支持表级锁,用户在操作MyISAM表时,select,update,delete,insert语句都会给表自动加锁,如果加锁以后的表满足insert并发的情况下,可以在表的尾部插入新的数据。那么对应的解决死锁问题的关键就是:让不同的session加锁有次序。死锁的关键在于:两个(或以上)的Session加锁的顺序不一致。

2023-02-09 12:00:00 443

原创 数据库索引

这是因为,由于这些列的取值很少,例如人事表的性别列,在查询的结果中,结果集的数据行占了表中数据行的很大比例,即需要在表中搜索的数据行的比例很大。2.索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。索引是建立在数据库表中的某些列的上面。(5)在经常需要排序的列上创建索引,因为索引已经排序,这样查询可以利用索引的排序,加快排序查询时间;3.当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。

2023-02-08 12:00:00 428

原创 SpringCloud学习:二、SpringCloud简介

Spring Cloud Alibaba是Spring Cloud下的一个子项目,Spring Cloud Alibaba为分布式应用程序开发提供了一站式解决方案,它包含开发分布式应用程序所需的所有组件,使您可以轻松地使用Spring Cloud开发应用程序,使用Spring Cloud Alibaba,您只需要添加一些注解和少量配置即可将Spring Cloud应用程序连接到Alibaba的分布式解决方案,并使用Alibaba中间件构建分布式应用程序系统。没有严重的BUG问题,但是有未测出的BUG隐患。

2023-02-07 18:00:00 936

原创 SpringCloud入门:一、.微服务架构概述

微服务的流行,离不开Martin Fowler,这个老头也是一个奇人,特别擅长抽象归纳和制造概念. Martin Fowler 在他的博客(Microservices),对微服务进行的概括,如果英文不行,可以查看翻译版(微服务|YYGCui's blog).他对微服务的描述如下: 微服务就是一个单体架构的应用按照业务划分为一个一个的独立运行的程序即服务,它们之间通过Http协议进行通信(也可以采用消息队列来通信,比如RabbitMQ,kafaka等),可以采用不同的编程语言,使用不同的存储技术,

2023-02-06 18:00:00 417

原创 数据库优化

比如:根节点存储大于50和小于50两个范围,两个分支节点,大于50的分支节点存储50-60、60-70、大于100等区段,每个区段都有对应的叶子节点,比如大于100的区段下面的叶子节点存储100、101、102和对应的rowid等具体数据,100、101、102的值即为表中建立索引的列(比如:num)的值,当编写sql语句where num=101时,就会通过检索索引表,查询到叶子节点上存储的rowid,然后根据rowid查询对应的数据,避免了对数据表的全表扫描。它必须在编译时进行选择。

2023-02-05 18:00:00 403

原创 高并发/性能调优/架构

系统直接的接口调用通过dubbo,比如我们项目调用财务系统的支付接口,该接口就是由财务系统将地址发布到dubbo,然后我们写http客户端去调用dubbo,由dubbo将请求转发财务系统。,将查询多修改少的数据放入缓存(比如:产品列表啊),页面显示产品列表时直接从缓存中获取,无需通过数据查询,减少IO操作,大大提高的查询的速度,同时也减轻了对数据库的压力。,将用户请求分发到集群环境中的不同服务器,降低了单个服务器的压力,起到负载均衡的作用,增加系统的并发处理能力,可以处理更多的用户请求;

2023-02-04 18:00:00 560

原创 Gateway服务网关

需求:定义全局过滤器,拦截请求,判断请求头是否满足下面条件:请求头中是否有token,token参数值是否为admin如果同时满足则放行,否则拦截实现://1.获取请求头 HttpHeaders headers = exchange . getRequest() . getHeaders();//2.获取请求头的token值 List < String > token = headers . get("token");

2023-02-03 18:00:00 577

原创 Feign远程调用

类型作用说明修改日志级别包含四种不同的级别:NONE、BASIC、HEADERS、FULL响应结果的解析器http远程调用的结果做解析,例如解析json字符串为java对象请求参数编码将请求参数编码,便于通过http请求发送支持的注解格式默认是SpringMVC的注解失败重试机制请求失败的重试机制,默认是没有,不过会使用Ribbon的重试一般情况下,默认值就能满足我们使用第一种: 配置文件方式。

2023-02-02 18:00:00 400

原创 Nacos学习:二、配置中心

​ 微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务,由于每个服务都需要必要的配置信息才能运行, 当微服务部署的实例越来越多,达到数十、数百时,逐个修改微服务配置就会让人抓狂,而且很容易出错。​ 在系统架构中,配置中心是整个微服务基础架构体系中的一个组件,它的功能看上去并不起眼,无非就是配置的管理和存取,但它是整个微服务架构中不可或缺的一环。我们最终的目的,是修改nacos中的配置后,微服务中无需重启即可让配置生效,也就是。

2023-02-01 18:00:00 1652

原创 Nacos学习:一、Nacos注册中心

​ 国内公司一般都推崇阿里巴巴的技术,比如注册中心,SpringCloudAlibaba也推出了一个名为Nacos的注册中心。​ Nacos致力于帮助您发现、配置和管理微服务。Nacos提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。Nacos帮助您更敏捷和容易地构建、交付和管理微服务平台。Nacos是构建以“服务”为中心的现代应用架构的服务基础设施。目前市面上用的比较多的服务发现中心有:Nacos、Eureka、Consul和Zookeeper。

2023-01-31 17:03:58 756

原创 Redis:二、Redis常见命令

Redis是一个key-value的数据库,key一般是String类型,不过value的类型多种多样Redis为了方便我们学习,将操作不同数据类型的命令也做了分组,在官网( http://www.redis.cn/commands.html )可以查看到不同的命令:Redis没有类似MySQL中的Table的概念,我们该如何区分不同类型的key呢?例如,需要存储用户、商品信息到redis,有一个用户id是1,有一个商品id恰好也是1key的结构项目名:业务名:类型:id。

2023-01-03 12:00:00 604

原创 Redis:一、简介

Redis诞生于2009年全称是Remote Dictionary Server,远程词典服务器,是一个基于内存的键值NoSQL数据库。Redis从一开始只支持linux系统,只是后来开始支持window系统. Redis的官方网站: https://redis.io 、中文官方网站:http://www.redis.cn/键值(key-value)型,value支持多种不同数据结构,功能丰富单线程,每个命令具备原子性低延迟,速度快(基于内存、IO多路复用、良好的编码)。支持数据持久化。

2023-01-02 12:00:00 408

原创 安装redis

​ redis客户端是一个程序,通过网络连接redis服务器,从而实现与redis服务器的交互.redis客户端发送命令,同时显示redis服务器的处理结果.​ redis-cli(Redis Command line interface)是redis自带的基于命令行的redis客户端,用于与服务器交互.如果我们想远程连接redis服务器,这个时候,我们需要修改redis的配置文件: 我们修复redis安装目录下的redis.config文件。第四步: 编译redis,进入解压目录,执行make命令。

2023-01-01 15:05:06 1686

原创 Linux 之centos7:一、Linux安装

​ Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。​ Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。​ Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

2022-12-17 12:00:00 778

原创 SpringMVC学习:四、SpringMVC的高级开发(异常处理器、文件上传、 拦截器)

preHandle方法按顺序执行,postHandle和afterCompletion按拦截器配置的逆向顺序执行。

2022-12-16 14:27:30 467

原创 SpringMVC学习:二、SSM整合

SpringMVC是Spring框架的一个子模块,所以我们不需要进行任何整合,只需要把SpringMVC引入到项目即可。加载spring容器,配置springmvc前置控制器。​ 使用mapper的扫描器自动扫描mapper接口在spring中进行注册。​ mybatis和spring整合,通过spring管理mapper接口。​ 使用配置方式将service接口配置在spring配置文件中。​ 由于springmvc是spring的模块,不需要整合。​ 通过spring管理 service接口。

2022-12-14 12:00:00 453

原创 SpringMVC学习:三、SpringMVC的请求与响应

SpringMVC 默认已经提供了一些常用的类型转换器,例如客户端提交的字符串转换成int型进行参数设置。但是不是所有的数据类型都提供了转换器,没有提供的就需要自定义转换器,例如:日期类型的数据就需要自定义转换器。定义转换器类实现Converter接口在配置文件中声明转换器在中引用转换器​ 比如controller形参中pojo对象,如果属性中有日期类型,需要自定义参数绑定。因为前端传递的是String,所以需要把String转换为要转换的日期类型和pojo中日期属性的类型保持一致。

2022-12-13 17:28:06 900

原创 SpringMVC学习:一、概念、入门

​ Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web 框架,即使用了MVC架构模式的思想,将web 层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。

2022-12-13 11:05:32 296

空空如也

空空如也

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

TA关注的人

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