自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL知识点汇总

攻击者通过用户输入的字符串内容中加入SQL语句,与程序中的原语句进行拼接,形成恶意查询,非法命令等攻击方式;避免SQL注入的方法:过滤输入内容和使用参数化传值(?占位符);MVCC是行级锁的一个变种但是它在很多情况下避免了加锁操作,因此开销更低。大多数的MVCC都实现了非阻塞的读操作,写操作也之锁定必要的行。

2023-10-17 19:28:38 50

原创 MessageQueue 消息队列

MQ消息队列是一个按照先进先出(FIFO)队列设计的容器,用于对系统中产生的消息进行存储和消费。使用消息队列主要是为了通过 异步处理 提高系统性能 ,削峰 和 降低系统耦合度 等目的。目前使用较多的消息队列有 ActiveMQ ,RabbitMQ,RocketMQ,KafkaMQ。

2023-10-13 17:11:14 60

原创 计算机网络热点面试题

流量控制是为了控制发送方发送速率,保证接收方来得及接收。TCP连接的每一方都有固定大小的缓冲空间,TCP的接收端只允许发送端发送接收端缓冲区能接纳的数据。当接收方来不及处理发送方的数据,能提示发送方降低发送的速率,防止包丢失,从而实现流量控制。TCP使用的流量控制是 利用滑动窗口实现。接收方发送的确认报文中的窗口字段可以用来控制发送方窗口大小,从而影响发送方的发送速率。将窗口字段设置为0,则发送方不能发送数据。滑动窗口:发送端窗口 和 接收端窗口发送端窗口:发送窗口 和 可用窗口。

2023-09-22 23:14:53 67 1

原创 CopyOnWriteArrayList核心源码

【代码】CopyOnWriteArrayList核心源码。

2023-09-11 17:14:14 46

原创 shiro深入了解,使用

RBAC(Role Based Access Control) :某个用户拥有什么角色,被允许做什么事情(权限用户登录—>分配角色---->(权限关联映射)---->鉴权(拥有什么什么权限)

2023-08-20 13:38:31 41 1

原创 shiro初始

Apache Shiro 是一个强大易用的 Java 安全框架,提供了认证、授权、加密和session会话管理等功能,对于任何一个应用程序,Shiro 都可以提供全面的安全管理服务。并且相对于其他安全框架spring security,Shiro 要简单的多。基本上涉及到用户参与的系统都要进行权限管理,权限管理属于系统安全的范畴,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。权限管理包括用户身份认证和授权两部分,简称认证授权。

2023-08-20 13:28:11 62 1

原创 Redis升级版

官方推荐两个都启用,如果对数据不敏感,可以选单独用RDB,不建议单独用 AOF,因为可能会出现 Bug如果只是做纯内存缓存,可以都不用。

2023-08-14 13:02:53 141

原创 Redis初级版

概念:Redis (REmote DIctionary Server) 是用 C 语言开发的一个开源的高性能键值对(key-value)数 据库特征:1. 数据间没有必然的关联关系2. 内部采用单线程机制进行工作3. 高性能,官方提供测试数据,50个并发执行100000 个请求,读的速度是110000 次/s,写的速度是 81000次/s。4. 多数据类型支持 字符串类型 string 列表类型 list 散列类型 hash 集合类型 set 有序集合类型 sorted_set5. 持久化支持。

2023-08-14 10:23:33 32

原创 Spring框架两大核心-----IoC和DI

Spring框架是一款轻量级的开发框架,核心思想是IoC(控制反转)和AOP(面向切面编程),为Java应用程序开发提供组件服务,用于组件之间的解耦,以及简化第三方JavaEE中间件技术的使用,是一个基础架构性的开发框架。Spring框架有7大模块,其中有5个常用模块Core(核心模块),Testing(测试模块), Data Access(数据访问模块),Web Servlet(基于Servlet的Web应用开发),Integration(企业及系统集成模块)IoC控制反转。

2023-08-02 23:30:16 160 2

原创 ReentrantLock与synchronized的区别

​ 6. Lock是一个接口,而synchronized是java中的关键字,synchronized是内置的语言实现。​ 2. ReentrantLock可响应中断,可轮回,synchronized是不可以响应中断的。1. ReentrantLock显示地获得,释放锁,synchronized隐式获得释放锁。​ 3. ReentrantLock是API级别的,synchronized是JVM级别的。​ 4. ReentrantLock可以实现公平锁。,同一线程可以多次获得同一个锁。

2023-07-18 19:06:52 62 1

原创 线程池的执行流程

线程池其实就是一种多线程处理形式,处理过程中可以将任务添加到队列中,然后在创建线程后自动启动这些任务。

2023-07-17 23:34:28 99 1

原创 线程的实现方式

线程的实现方式总共有4种,第一种是继承Thread抽象类;第二种是实现Rannable接口;第三种是实现Callable接口;第四种是通过线程池创建线程。

2023-07-17 19:10:31 35 1

原创 AES算法的CBC和ECB两种工作模式

在CBC模式下,需要一个随机生成的16字节IV参数,必须使用SecureRandom生成。因此多了一个IvParameterSpec实例,因此初始化方法需要调用Cipher的一个重载方法并传入IvParameterSpec。CBC加密模式需要一个随机数作为IV参数,这样同一份密文每次加密的结果都不同。ECB模式是是最简单的AES加密模式,它需要一个固定长度的密钥,固定的明文会生成固定的密文。AES加密算法:P(明文),K(密钥),D(加密函数),C(密文)4.传入明文或密文,获取密文或明文。

2023-07-17 18:47:22 136 1

原创 什么是Java反射呢?

Java反射机制是在运行状态中,对于任意一类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用方法的功能成为Java语言的反射机制。

2023-07-15 01:27:59 221 1

原创 带你了解哈希函数

Hash函数就是把任意长度的输入位变成固定长度的输出字符串的函数。你强任你强,清风拂山岗;你短任你短,明月照大江。但凡经我之手,都将一视同仁,变成固定长度的输出字符串。长斩短凑,皇权特许,这就是Hash函数。大家懂了吗?而输出的字符串有以下特点:特点1.相同的输入一定得到相同的输出;特点2.不同的输入大概率得到不同的输出。所以,哈希函数的目的:为了验证原始数据是否被篡改。

2023-07-10 21:51:03 338 1

原创 基于FTP协议的文件上传

【代码】基于FTP协议的文件上传。

2023-07-09 21:45:39 52 1

原创 运用JavaMail发送一封邮件吧!!!

我们还要构造一个Message对象,然后调用Transport.send(Message)就可以发送文件了。然后点击 授权密码管理 区的 "新增授权密码" ,创建出一个新设备之后保存好专属密码。在生活中,再发送邮件时可能会带一些附件。那如何将附件和邮件正文一同发送出去呢。如果我们想将图片放在正文中发送给对方可以按照下方操作进行。构造出这样一个工具类,方便我们后期实例化对象。首先将POP3/SMTP服务调节为开启状态。导入一个javax.mail的jar包。实例化工具类的一个对象。

2023-07-08 22:08:03 48

空空如也

空空如也

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

TA关注的人

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