自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何开发、使用 Starter

第一步:创建starter工程hello-spring-boot-starter并配置pom.xml文件</</</</</</</</</</</</</</</</第二步:创建配置属性类HelloProperties第三步:创建服务类HelloService第四步:创建自动配置类HelloServiceAutoConfiguration第五步:在resources目录下创建META-INF/spring.factories。

2024-06-24 21:14:40 178

原创 VO 和 DO

数据对象(Data Object,简称 DO) 是一种对象,用于表示数据库中的数据。DO 通常对应数据库中的一张表,包含了表中的字段和数据。特点可变:表示数据库中的数据,通常是可变的。有唯一标识:每个 DO 对象都有一个唯一标识符(如主键)。数据持久化:主要用于数据持久化层,例如 ORM 框架中。VO(Value Object):用于在不同层次之间传递数据,通常是不可变的,没有唯一标识符。DO(Data Object):用于表示数据库中的数据,通常是可变的,有唯一标识符。

2024-06-17 16:52:49 1433

原创 MyBatis

(1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。(2)MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。

2024-05-08 00:27:09 424

原创 Git同步代码

在某个分支下,我最常用的操作如下。

2024-05-07 20:37:20 284

原创 JVM的GC垃圾回收算法

有哪些基本的垃圾回收算法?标记 - 清除将存活的对象进行标记,然后清理掉未被标记的对象。不足:标记和清除过程效率都不高;会产生大量不连续的内存碎片,导致无法给大对象分配内存。标记 - 整理让所有存活的对象都向一端移动,然后直接清理掉端边界以外的内存。复制将内存划分为大小相等的两块,每次只使用其中一块,当这一块内存用完了就将还存活的对象复制到另一块上面,然后再把使用过的内存空间进行一次清理。主要不足是只使用了内存的一半。现在的商业虚拟机都采用这种收集算法来回收新生代,但是并

2024-05-02 17:27:13 180

原创 泛型之广泛的类型

泛型中类型擦除 Java泛型这个特性是从JDK 1.5才开始加入的,因此为了兼容之前的版本,Java泛型的实现采取了“伪泛型”的策略,即Java在语法上支持泛型,但是在编译阶段会进行所谓的“类型擦除”(Type Erasure),将所有的泛型表示(尖括号中的内容)都替换为具体的类型(其对应的原生态类型),就像完全没有泛型一样。如果没有泛型,要实现不同类型的加法,每种类型都需要重载一个add方法;泛型中的类型在使用时指定,不需要强制类型转换(类型安全,编译器会检查类型)

2024-05-02 17:14:52 112

原创 MySQL_DB索引&B+树&SQL优化

数据库的索引就像一本书的目录,查数据快人一步,快速定位,精准打击!什么是数据库的索引?

2024-04-22 17:37:52 288

原创 RabbitMQ

。。

2024-04-22 02:45:29 118

原创 Nginx

同样的Web服务,它占用的存储空间及资源会更少Web服务器一般指的是“网站服务器”,是某种驻留在因特网上的计算机程序,可以向请求终端提供服务,主要功能时存储、处理和传递网页给“客户”,传递内容一般是HTML文档、图像、样式表或脚本等,也可以放置网站文件以供浏览或下载。WEB服务器也称为WWW(Word Wide Web)服务器,核心功能就是提供网页信息浏览服务,严格来说Web服务器只负责处理Http协议请求,发送静态页面的内容。

2024-04-18 23:02:13 373

原创 分布式锁Redisson

分布式锁,即分布式系统中的锁。在单体应用中我们通过锁解决的是控制共享资源访问的问题,而分布式锁,就是解决了分布式系统中控制共享资源访问的问题。与单体应用不同的是,分布式系统中竞争共享资源的最小粒度从线程升级成了进程。

2024-04-18 18:54:20 296

原创 Java的反射机制

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

2024-04-17 00:57:44 319

原创 AOP 权限校验模块

Component@Aspect@Resource@Resource@Autowired@Resource/*** 定义切点*//*** 增强方法 进行权限判断* 1.超级管理员 直接放行* 2.遍历用户权限集合 存在权限则放行* 3.不存在权限 返回无权限信息* * 判断有权限 放行前重置token的时效* l* @return*///统一jp.proceed返回结果try {//api相对地址//权限名称//api描述/**

2024-04-16 00:29:03 289

原创 Spring创建的对象是单例的还是多例的?还是原型的?

单例(Singleton)是一种设计模式,它确保一个类只有一个实例,并提供一个全局访问点来访问该实例。在单例模式中,类会限制实例化过程,通常通过私有化构造函数,然后提供一个静态方法来访问实例。单例模式通常用于需要全局访问点且仅需要一个实例的情况,比如数据库连接、日志记录器、线程池等。通过使用单例模式,可以确保系统中只有一个实例存在,避免了不必要的资源消耗和实例化的多个副本带来的不一致性。多例(Multiton)是一种类似于单例模式的设计模式,但允许类有多个实例,每个实例都有一个关联的标识符。

2024-04-15 16:35:49 1599

原创 Spring、SpringBoot

(1)IOC就是控制反转,是指创建对象的控制权的转移。以前创建对象的主动权和时机是由自己把控的,而现在这种权力转移到Spring容器中,并由容器根据配置文件去创建实例和管理各个实例之间的依赖关系。对象与对象之间松散耦合,也利于功能的复用。DI依赖注入,和控制反转是同一个概念的不同角度的描述,即 应用程序在运行时依赖IoC容器来动态注入对象需要的外部资源。

2024-04-08 21:18:41 206

原创 Java I/O

通过IO可以完成硬盘文件的读和写。

2024-03-26 16:31:11 497

原创 长者说事务很重要

【代码】长者说事务很重要。

2024-03-22 17:54:40 295

原创 Java之全体集合

容器主要包括和两种,Collection 存储着对象的集合,而 Map 存储着键值对(两个对象)的映射表。

2024-03-17 23:55:09 373

原创 Java基础之打地基

String 为啥是不可变的?String 被声明为final,因此它不可被继承。内部使用 char 数组存储数据,该数组被声明为 final,这意味着 value 数组初始化之后就不能再引用其它数组。并且 String 内部没有改变 value 数组的方法,因此可以保证 String 不可变。public final class String implements java.io.Serializable, Comparable<String>, CharSequence {

2024-03-17 17:44:44 151

原创 面向对象之拥抱对象

面向过程是一种编程思想。为实现某一功能,通过一定顺序配合函数来实现这个功能。

2024-03-16 20:15:14 583

原创 Docker之大鲸鱼

什么是Docker?

2024-03-15 16:16:52 163

原创 悲观锁和乐观锁

使用synchronized关键字。在Java中,可以使用synchronized关键字对代码块或方法进行加锁,以确保同一时刻只有一个线程可以访问该资源。使用ReentrantLock类。通过调用ReentrantLock类的lock方法来获得锁,并在finally块中调用unlock方法来释放锁。使用ReadWriteLock类。ReadWriteLock是一种读写分离的锁机制,通过使用读锁和写锁来实现对共享资源的悲观锁控制。读锁允许多个线程同时读取共享资源,而写锁则只能有一个线程进行写操作。

2024-03-14 22:37:20 569

原创 SpringCloud春云

微服务是一种架构风格。它提倡将单一应用划分为一组小的服务,每个服务运行在自己独立的进程中。避免统一的,集中式的管理。

2024-03-12 14:42:23 327

原创 Kafka不只是一位作家的名字

什么是Kafka?

2024-03-11 03:45:50 96

原创 并发&多线程

多线程(multithreading)是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个的线程,进而提升整体处理性能。线程安全是指在多线程环境下,程序的行为与在单线程环境下的行为一致,即多线程对同一共享资源的并发访问不会导致数据的不一致或错误。

2024-03-08 12:44:35 133

原创 Redis的缓存和JVM的缓存相比谁更快?

什么是缓存?缓存就是数据交换的缓冲区(又称作Cache),当某一硬件要读取数据时,会首先从缓存中查找需要的数据,找到了则直接执行,找不到的话则从内存中查找。由于缓存的运行速度比内存快得多,故缓存的作用就是帮助硬件更快地运行。因为缓存往往使用的是RAM(断电即掉的非永久性储存),所以在用完后还是会把文件送到硬盘等存储器里永久存储。电脑里最大的缓存就是内存条了,最快的是CPU上镶的L1和L2缓存,显卡的显存是给显卡运算芯片用的缓存,硬盘上也有16M或者32M的缓存。Redis,JVM,MySQL也具有缓存

2024-03-08 12:28:17 270 1

原创 What_Is_Redis?

提前“使用互斥锁(Mutex Key):在value内部设置一个比缓存(Redis)过期时间短的过期时间标识,当异步线程发现该值快过期时,马上延长内置的这个时间,并重新从数据库加载数据,设置到缓存中去.使用后台程序定时更新数据:热点数据可以考虑不失效,后台异步更新缓存(就是后台定时的检测缓存是否失效而淘汰和更新缓存数据,也可以业务线程通知后台的方式让后台更新缓存),适用于不严格要求缓存一致性的场景。均匀设置过期时间:就是将key的过期时间后面加上一个随机数(比如随机1-5分钟),让key均匀的失效。

2024-03-06 18:32:33 121 1

原创 JavaMailSender发送邮件好帮手

JavaMail是由Sun定义的一套收发电子邮件的API,不同的厂商可以提供自己的实现类。但它并没有包含在JDK中,而是作为JavaEE的一部分。而JavaMailSender底层也是基于JavaMailjar包的。

2024-03-06 18:24:29 207 1

原创 忘记密码功能模块的实现

忘记密码涉及到的是用户密码的更改。就是password的update。

2024-02-29 22:24:51 942

原创 面试错题本之Redis的数据类型

二面了东莞的一个oppo外包的后台开发,面试官问到了我set和zset的区别?我忘了,只知道是set是一种数据结构。

2024-02-29 18:04:16 321

原创 SQL优化之十万个为什么

不要使用 select *什么是select星?select是SQL中选择的意思,星代表所有,select星代表着选取所有元素。为什么select星会影响性能?因为元素所有元素意味着你要把所有元素都选择出来,形象的可以比喻为把一颗萝卜连根拔起,这些根须把泥土啥的都带起来了。而每次读取数据的过程都是磁盘的IO操作,一下子选择所有元素,对磁盘的读写操作负荷增大,对数据库的性能会有影响。

2024-02-28 05:10:21 108 1

原创 ES学习笔记

Elasticsearch简介一个分布式的、Restful风格的搜索引擎。支持对各种类型的数据的检索。搜索速度快、可以提供实时的搜索服务。便于水平扩展,每秒可以处理PB级别的海量数据。术语索引、类型、文档、字段集群、节点、分片、副本

2024-01-15 01:31:41 363 1

原创 Redis学习笔记

基本类型StringHashListSetSortedSet特殊类型GEOBitMapHyperLog。

2023-11-09 20:03:10 31 1

原创 IDEA DEBUG调试技巧0

重定向:可以实现低耦合的跳转。浏览器向服务器请求删除方法,但是删除方法没有啥好返回的,就返回了一个302,让浏览器重新请求服务器的查询方法。500,服务器接收到了你的请求但是发生了问题,不知如何处理。设置日志级别,并将日志输出到不同的终端。200,表示请求成功。服务端的断点调试技巧。

2023-11-09 16:24:04 27 1

原创 记录学习生活0

她的脸上多了明显的悲怆神情,她好像在尽力的掩饰了。我为了让她心情好点给她带了巧克力,甜的听说会改善心情。我和cxl和xl去参加了学校的招聘会,在路上走着,下午四五点的温暖的阳光洒在校道上,洋洋洒洒的映衬着来来往往的大学生,多么青春和充满希望的画面…招聘会人小多,来的公司不多,没找到Java岗位,还有一些招聘主播的岗位。投篮还不错,但是持球太少了,还是偏蓝领打法,都是在篮底,抢篮板,篮下终结。这周我还是在做毕设项目,想把首页弄漂亮点,像Spring官网的动画特效就挺有意思,想把它实现在我的毕设上。

2023-11-04 02:29:58 43 3

原创 数据库学习笔记

任务陈述、确定任务目标、确定范围和边界、确定用户视图。

2023-08-28 00:34:55 122 1

原创 Bootstrap学习笔记

Bootstrap是美国Twitter公司的设计师Mark Otto和Jacob Thornton合作基于HTML、CSS、JavaScript 开发的简洁、直观、强悍的前端开发框架,使得 Web 开发更加快捷。

2023-07-05 15:20:00 39 1

原创 HTML笔记

HTML:超文本标记语言,是一套标记,不是编程语言,一般配套CSS以及JS进行网页的开发。HTML的组成是HTML元素,HTML网页的后缀名是 .html 或者 .htm<标签名 标签属性=“属性值”>…</标签名><标签名 标签属性=“属性值”> :只有空标签,也就是标签中没有内容的这种标签,可以缩写。

2023-07-04 15:05:59 18

原创 JQuery

替代 window.onload, 当页面所有内容加载后再执行代码,例如:$(function() { …jQuery对象设置非交互组件的方法 jQuery对象.html(需要设置的内容);JQuery可以使用CSS选择器进行DOM对象的选择,并且封装为JQuery对象。jQuery对象设置交互组件的方法 jQuery对象.val(需要设置的内容);jQuery对象获取非交互组件的方法 jQuery对象.html();jQuery对象获取交互组件的方法 jQuery对象.val();(“#id选择器”);

2023-07-04 09:09:20 37

原创 Java_多线程

使用多线程下载三张网图:

2023-05-16 16:25:30 38

原创 Java泛型

【代码】Java泛型。

2023-05-05 17:58:32 37

空空如也

空空如也

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

TA关注的人

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