自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JSP技术概述

1、page,他只在当前页面有效,也就是用户请求的页面有效,当当前页面关闭或转到其他页面时,page对象将在响应回馈给客户端后释放2、request,他在当前请求中有效,request可以通过方法实现页面中的信息传递,也可以通过forward()方法进行页面间的跳转,需要注意的是request是转发不是重定向,转发相对于浏览器来说是透明的,也就是无论页面如何跳转,地址栏上显示的依旧是最初的地址3、session,他在当前回话中有效。............

2023-05-17 16:26:36 376

原创 MQ(Message Queue)消息队列与死信队列

Message Queue)消息队列,是基础数据结构中“先进先出”的一种数据结构。指把要传输的数据(消息)放在队列中,用队列机制来实现消息传递——生产者产生消息并把消息放入队列,然后由消费者去处理。消费者可以到指定队列拉取消息,或者订阅相应的队列,由MQ服务端给其推送消息。在MQ中,我们把应用程序交由MQ传输的数据定义为消息,我们可以定义消息的内容并对消息进行广义的理解,比如:用户的各种类型的数据文件,某个应用向其它应用发出的处理请求等都可以作为消息。...

2022-08-12 15:00:00 2762 1

原创 RDB与AOF持久化【Redis】及缓存雪崩、击穿、穿透

Redis 是一款基于内存的非关系型数据库,它会将数据全部存储在内存中。但是如果 Redis 服务器出现某些意外情况,比如宕机或者断电等,那么内存中的数据就会全部丢失。因此必须有一种机制能够保证 Redis 储存的数据不会因故障而丢失,这就是 Redis 的数据持久化机制。数据的持久化存储是 Redis 的重要特性之一,它能够将内存中的数据保存到本地磁盘中,实现对数据的持久存储。这样即使在服务器发生故障之后,也能通过本地磁盘对数据进行恢复。...

2022-08-10 12:45:00 305

原创 select、poll和epoll区别

select,poll,epoll都是IO多路复用机制,即可以监视多个描述符,一旦某个描述符就绪(读或写就绪),能够通知程序进行相应读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用户空间。select,poll实现需要自己不断轮询所有fd集合,直到设备就绪,期间可能要睡眠和唤醒多次交替。...

2022-08-09 21:25:36 828

原创 数据库分库分表<====>分布式事务

分库分表方案是对关系型数据库数据存储和访问机制的一种补充。分库:将一个库的数据拆分到多个相同的库中,访问的时候访问一个库分表:把一个表的数据放到多个表中,操作对应的某个表就行分库分表。............

2022-08-09 13:15:00 924

原创 学习servlet【续】

直接实现Servlet接口,需要实现5个方法为了简化开发,所以Sun提供了一个通用抽象父类。针对大部分方法提供了默认的空实现,只需要Servlet提供service方法的实现即可,一般用于非通用协议开发中。采用的是适配器模式为了进一步简化开发,提供针对http协议的支持,Sun提供了一个的子类,这个父类专门用于http协议的应用开发中,是模板模式默认的doGet方法实现对应的是Servlet的配置参数信息,由服务器提供对应的具体实现。具体实现是在服务器调用。...............

2022-08-08 20:54:08 89

原创 web开发概述——Servelt技术

WEB,它用于表示Internet主机上(服务器)供外界访问的资源 Web应用程序是一种可以通过Web访问的应用程序。Web应用程序的一个最大好处是用户很容易访问应用程序。用户只需要有浏览器即可,不需要再安装其他软件。 浏览器/服务器架构Browser/Server简称B/S能够很好地应用在广域网上,成为越来越多的企业的选择。 浏览器/服务器架构相对于其他几种应用程序体系结构的优点: 1、这种架构采用Internet上标准的通信协议(通常是TCP/IP协议)作为客户机同服务器通信的协议。 这

2022-08-08 14:30:00 208

原创 微服务——springgateway及Hystrix——服务降级与熔断

SpringCloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。

2022-08-07 18:45:00 2602

原创 数据库——集群与读写分离 <--->设计优化【补】

在一些大型网站业务场景中,单台数据库服务器所能提供的并发量已经无法满足业务需求,为了满足这种情况,一般而言是通过主从同步的方式来同步数据,在此基础上,通过读写分离来提升数据库的并发和负载能力。一般可以采用横向扩展和库表切分的方法实现数据库处理能力的提升,因为单机的硬件处理能力一定是有上限。由此而生的相关技术有:读写分离和负载均衡。需要实现集群多台机器共同对外提供服务,需要考虑的是如何实现读操作和写操作的工作划分。首先就需要部署主从复制,只有实现了主从复制,才能在此基础上实现读写分离。基于的复制,......

2022-08-06 21:45:00 165

原创 数据库——事务

数据库重要的功能就是实现数据共享,对于同时运行的多个事务,当多个事务同时访问数据库中相同的数据时,如果没有采取必要的隔离机制,则会导致出现各种并发问题。可以保证多次从一个字段中读取相同的数据,可以认为事务开启时会自动对现有数据进行快照,其它事务修改不管是否提交,当前事务读取的时快照数据,多版本并发控制引入快照机制,每个事务都有自己的数据快照,即使其它事务提交数据,也不影响当前事务相关行的数据快照。解决脏读问题的方法就是只允许读取别的事务已经提交的数据,其它事务未提交数据当前事务不能读取。......

2022-08-06 10:00:00 214

原创 数据库——索引

2022-05-03是存储引擎用于快速查找记录的一种数据结构,需要额外开辟空间和数据维护工作按照物理存储方式:聚簇和非聚簇MyISAM:frm元数据文件、myd数据、myi索引数据,MyISAM都是非聚簇索引,数据和索引分别存放InnoDB:frm元数据文件、ibd数据和索引,innodb存储引擎支持聚簇索引按照数据结构:B+树、hash等按照逻辑:主键索引、普通索引、唯一索引、空间索引(针对空间类型的数据)和全文索引B树是一种自平衡的多叉查找树,在一个。............

2022-08-05 23:30:00 203

原创 数据库——表间关系、多表查询及三大范式

应用范式可以减少数据冗余,但是范式级别越高,则创建表的数量越多,查询效率则越低。设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不。宿舍楼号部分依赖主键,不是依赖整。:表中可以唯一确定一个元组的某个属性(或者属性组),如果这样的码有不止一个,那么叫候。表示满足内层子查询中的任意一个条件,就返回一个结果作为外层查询的条件。:一个属性(或属性组),它不是码,但是它别的表的码,它就是外码。后面的参数可以是任何一个子查询,这个子查询不产生任何数据,只返回。.........

2022-08-05 09:00:00 294

原创 数据库——SQL语句与数据库设计

数据库设计是指对于一个给定的应用环境,构建最优的数据库模型,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的信息要求和处理要求。语句,所以支持事务,支持撤销回滚操作,但是大量的删除数据时需要记录日志,所以执行效率很低。:全面了解设计的存储需求,保证数据的安全性和完整性。:设计数据的逻辑存储结构,根据数据实体之间的逻辑关系解决数据冗余和数据维护。数据操纵语言,用于对数据库表中的记录进行更新操作,插入。数据查询语言,用于对数据库表中的记录进行查询操作,表的截断操作,可以删除表中的所有数据,属于。.

2022-08-04 20:44:54 1018

原创 Web微服务

微服务:一种软件开发技术- 面向服务的体系结构(SOA)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API)。每个服务都围绕着具体业务进行构建,并且能够独立地部署到生产环境、类生产环境等。另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据上下文,选择合适的语言、工具对其进行构建。.........

2022-08-03 20:39:07 662

原创 Nginx与Redis的基础认知

Nginx基础认识Redis的五大数据类型的基础知识

2022-07-29 21:05:24 685

原创 Java——MyBatis

MyBatis是一款一流的支持自定义SQL、存储过程和高级映射的持久化框架。MyBatis几乎消除了所有的JDBC代码,也基本不需要手工去设置参数和获取检索结果。MyBatis能够使用简单的XML格式或者注解进行来配置,能够映射基本数据元素、Map接口和POJOs(普通java对象)到数据库中的记录。...

2022-07-24 20:55:44 778

原创 Spring中的IOC与DI

在传统的Java应用中,一个类想要调用另一个类中的属性或方法,通常会先在其代码中通过newObject()的方式将后者的对象创建出来,然后才能实现属性或方法的调用。IoC是InversionofControl的简写,译为“控制反转”,它不是一门技术,而是一种设计思想,是一个重要的面向对象编程法则,能够指导我们如何设计出松耦合、更优良的程序。基于类型自动注入值,根据实现的接口来判断并自动注入值,如果实现此接口的实现类太多,它会在很多实现此接口的实现类中选择名字相同的实现类进行注入。............

2022-07-19 13:56:42 272

原创 数据库学习

从今天开始,学习将进入新的阶段——数据库,这是对于一个从事IT行业工作者来说是十分重要的,所以需要我们认真地去学习应用。同时将之前所学的知识点不能落下,要做好巩固复习与总结,相信我们一起能够进步,提高我们的技术与知识!!!数据库是指长期存储在计算机内有组织可共享的数据集合。数据库中的数据以及数据之间的关系按照一 定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并在一定的范围内可以被多个用户共享。 关系型数据库,存储的格式可以直观地反映实体间的关系。关系型数据库和常见

2022-07-01 11:30:00 255

原创 Java反射机制

Java反射机制的核心就是在程序运行时动态加载类并获取类的详细信息,从而实现操作类或者对象的属性和方法。本质上就是JVM得到Class对象,再通过Class对象进行反编译,从而获取对象的各种信息。 java的反射Reflection就是一种自省机制,可以实现在运行时动态的获取类的信息以及动态的调用对象的方法。通过反射允许程序在运行时通过反射API获取任何一个已知名称的class的内部信息,包括修饰词【publicstatic】、父类、实现的接口、属性和方法。反射机制可以在运行时改变任意属性的内容,也可以调用

2022-06-30 00:39:05 135

原创 Java网络编程

大家好久不见了,前面把多线程的一些知识点做了总结学习,从今天开始我们学习Java网络编程的相关知识。加油哦!TCP/IP协议栈是一系列网络协议的总和,是构成网络通信的核心骨架。TCP/IP协议栈的分层模型常见的有2个,分别是TCP/IP参考模型和ISO组织提出的OSI参考模型。OSI参考模型是一个开放的通信系统互联参考模型。TCP/IP协议采用4层架构,从上向下分为应用层、传输层、网络层和链路层,每一层都可以使用其下一层的协议完成自己的需求,不允许下层访问上层。当通过http协议发起一个请求时,从上往下依次

2022-06-24 01:29:51 87

原创 锁的分类与线程相关编程模型

锁的分类与实现

2022-06-14 09:45:00 73

原创 Java并发编程

Java并发编程相关知识点

2022-06-12 22:04:21 53

原创 Stream流(2)

聚合操作将流中的数据进行汇聚为一个值,一般都是终止操作min和max用于获取最小值和最大值,注意Comparator接口,count用于统计元素个数List<Integer> list = new ArrayList<>(); list.add(10); list.add(39); list.add(10); list.add(78); list.add(39); Integer maxValue = list.stream().max(Integer::com

2022-05-25 13:45:00 263

原创 Stream流(1)

2022-05-24 00:38:39 105

原创 Java泛型

Java 泛型的参数只可以代表类,不能代表个别对象。由于Java泛型的类型参数之实际类型在编译时会被消除,所以无法在运行时得知其类型参数的类型,而且无法直接使用基本值类型作为泛型类型参数。Java编译程序在编译泛型时会自动加入类型转换的编码,故运行速度不会因为使用泛型而加快。Java允许对个别泛型的类型参数进行约束,包括以下两种形式(假设T是泛型的类型参数,C是一般类、泛类,或是泛型的类型参数)泛型是 JDK1.5 引入的一种类型机制,就是将数据类型参数化,作为一种类型安全机制而产生的。 泛型机制就.

2022-05-21 10:15:00 205

原创 lambda表达式

Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。使用 Lambda 表达式可以使代码变的更加简洁紧凑。允许将函数作为一个方法的参数(将一个方法传递到另外的方法中执行),本质上可以理解为是一种语法糖。语法格式:(参数列表)->表达式,例如(k1,k2)-> k1+k2 (参数列表)->{代码块;},例如(k1,k2)->{return k1+k2;}可.

2022-05-20 08:00:00 217

原创 Java集合-----Map接口

昨天写了Java集合中的Collection接口,今天继续写Map接口,记得要对之前的知识点做好巩固与复习的哦!!!Map接口Map接口储存一组成对的键-值对象,提供key(键)到value(值)的映射,Map中的key不要求有序,不允许重复。value同样不要求有序,但可以重复。最常见的Map实现类是HashMap,他的储存方式是哈希表,优点是查询指定元素效率高。Map接口提供了将键映射到集合的对象,一个映射不能包含重复的键.每个键最多只能映射到一个值.Map接口中同样提供了集合的常用

2022-05-19 00:49:11 236

原创 Java集合----Collection接口

之前已经学过了一些Java的基础知识点,今天开始总结学习Java集合的相关知识吧,如果有遗漏不足之处,还请斧正,也可以去其他网站进行更加详细的学习!!!Java 集合类存放于 java.util 包中,是一个用于存放对象的容器 集合中只能存放对象,如果存入一个简单类型,实际上进行了自动转换【装箱】 集合中存放的是多个对象的引用,对象本身还是存放在堆内存 集合中可以存放不同类型、不限数量的数Iterator 和 Iterable 接口Collection 接口作为集合框架的..

2022-05-18 00:42:49 262

原创 数据结构与算法

今天我们在Java的基础只是中穿插一点数据结构与算法的知识,学过计算机专业的同学抖音该知晓数据结构与算法的重要性。在这里我只总结一些较为常用的数据结构与算法,其余的可以找一些资料另做学习了解!数据结构(data structure)是带有结构特性的数据元素的集合,它研究的是数据的逻辑结构和数据的物理结构以及它们之间的相互关系,并对这种结构定义相适应的运算,设计出相应的算法,并确保经过这些运算以后所得到的新结构仍保持原来的结构类型。简而言之,数据结构是相互之间存在一种或多种特定关系的数据元素的集合,即带

2022-05-11 08:30:00 167

原创 synchronized概述

2022-05-09 23:59:59 189

原创 线程状态分析

今天的课程我会接着上一次的知识点总结学习的,主要总结线程状态的知识点和线程调度机制、线程优先级以及线程同步问题的相关知识。线程状态线程从创建并启动到消亡共经历了 5 种状态:新建、就绪、运行、阻塞和死亡。新建状态(New):用new语句创建的线程处于新建状态,此时它和其他Java对象一样,仅仅在堆区中被分配了内存。就绪状态(Runnable):当一个线程对象创建后,其他线程调用它的start()方法,该线程就进入就绪状态,Java虚拟机会为它创建方法调用栈和程序计数器。处于这个状态的线.

2022-04-27 15:15:00 159

原创 Java内存模型JMM

Java内存模型(Java Memory Model简称JMM)是一种抽象的概念,并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。Java内存模型中规定所有变量都存储在主内存,主内存是共享内存区域,所有线程都可以访问,但线程对变量的操作(读取赋值等)必须在工作内存中进行,首先要将变量从主内存拷贝的自己的工作内存空间,然后对变量进行操作,操作完成后再将变量写回主内存,不能直接操作主内存中的变量,工作内存中存储着主内存中的.

2022-04-25 12:15:00 65

原创 多线程编程细节

Thread类Thread类实现了Runnable接口,所以Thread类对象也是Runnable对象,同时Thread类也是线程类Runnable r=new Thread(); 构造器:Thread() //一般用于在Thread类中覆盖定义run方法,可以使用匿名内部类的方式进行定义 Thread(Runnable) //使用最多的情形,run方法是通过Runnable对象提供的 Thread(String) //创建线程对象的同时设置线程名称 Thread(Runnable,St

2022-04-24 06:45:00 208

原创 线程的四种创建方法

2022-04-22 00:50:47 621

原创 多线程应用编程

2022-04-20 23:42:23 117

原创 NIO、AIO概述总结

经过前几天的学习,将BIO的基础知识总结完成,接下来今天我将总结学习NIO和AIO的知识点,在理解学习的基础上,去使用相关知识点进行编程学习。这次我将先总结NIO的知识点,再学习AIO的相关概念。NIONIO主要有三大核心部分:Channel(通道),Buffer(缓冲区), Selector。传统IO基于字节流和字符流进行操作,而NIO基于Channel和Buffer(缓冲区)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。Selector(选择区)用于监听多个通...

2022-04-16 13:45:00 1795

原创 序列化与对象克隆

2022-04-13 22:29:01 266

原创 BIO知识总结补充

今天我们接着上一篇的知识点继续总结学习,上面讲到了文件流,我们接下来来总结一下过滤流和其他的相关知识点吧!过滤流过滤流:缓存作用,用于装配文件磁盘、网络设备、终端等读写开销大的节点流,提高读写性能。过滤流的作用就是在节点流的基础上提供额外功能。(装饰器模式)抽象父类FilterReader/FilterWriter、FilterInputStreram/FilterOutputStream---抽象装饰角色过滤处理//就是装饰器模式中的抽象装饰角色public abstrac

2022-03-25 15:00:00 319

原创 关于流的知识点总结

之前把流的知识点只做了一个大概的总结,对一些知识点还没有总结到位,今天把之前的做一些补充以及对新的知识点总结梳理!File知识补充其中用于封装文件或哦这目录,提供了一些获取相关属性的方法。例:mkdirs()用于创建文件夹File file=new File("out");if(!file.exists()){ file.mkdirs();}流模型流是用于隐藏数据传输细节的操作模型,是数据传输的抽象表达,java程序可以通过流来完成输入输出操作。1.根据操作方式的区

2022-03-23 23:40:14 562

原创 流的知识概述

之前写了一些有关Java知识点的基础知识,这一次开始总结一些新的知识点,有关Java中的流知识点。虽然学习很累,但是让人心里踏实。我始终坚信只有学习脚踏实地、才能够走的远!不积小流无以致千里,不积跬步无以至千里!流的定义首先我们来了解一下什么叫做流?流是一个相对抽象的概念,所谓流就是一个传输数据的通道,这个通道可以传输相应类型的数据。进而完成数据的传输。这个通道被实现为一个具体的对象在Java程序中,对于数据的输入输出操作以流Stream方...

2022-02-24 13:00:00 447

空空如也

空空如也

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

TA关注的人

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