- 博客(114)
- 收藏
- 关注
原创 Spring Boot Starter 与自动装配(Boot 3.0版本)
Spring Boot Starter的核心原理就是自动配置,这也是整个Spring Boot框架的核心,开发者只需要按约定提供些许配置参数就能完成各种技术复杂组件的自动组装配置,这正是Spring Boot框架能迅速上手使用的原因。Spring Boot官方所有的自动配置类都是由spring-boot-autoconfigure这个模块提供的,只要引入了对应组件的依赖,Spring Boot扫描到相关类时才会自动配置,没有引入是不会启用自动配置的。
2024-03-11 12:19:11
1182
原创 重学设计模式-Iterator(迭代器模式)
通过以上两个实例,在每个实例中,都出现了相对重要的接口和实现类,这四个关键角色,分别是Iterator(迭代器)、ConcreteIterator(具体的迭代器)、Aggregate(聚合对象)和ConcreteAggregate(具体的聚合对象)。Iterator(迭代器)Iterator是一个接口,它定义了在集合对象上进行迭代的方法hasNext()用于检查是否还有下一个元素next()用于获取下一个元素。ConcreteIterator(具体的迭代器)
2023-12-21 11:48:26
1246
原创 提示工程-Prompt Engineering
通过自然语言(英语、汉语等)来给AI下达指示,从而让AI完成你指定给他的工作的过程都可以称之为提示工程。(面向自然语言编程):想要模型执行的特定任务或指令:包含外部信息或额外的上下文信息,引导语言模型更好地响应:用户输入的内容或问题:指定输出的类型或格式零样本提示(Zero-Shot Prompting)角色扮演提示(Role Prompting)少样本提示(Few-Shot Prompting)参数设置思维链提示(Chain of Thought Prompting)
2023-11-26 11:02:16
2065
1
原创 Kafka-Topic&Partition
topic & partition,是Kafka两个核心的概念,也是Kafka的基本组织单元。主题作为消息的归类,可以再细分为一个或多个分区,分区也可以看作对消息的二次归类。分区的划分为kafka提供了可伸缩性、水平扩展性、容错性等优势。分区可以有一个至多个副本,每个副本对应一个日志文件,每个日志文件对应一至多个日志分段(LogSegment),每个日志分段还可以细分为索引文件、日志存储文件和快照文件等。
2023-11-26 11:00:48
1854
原创 Spring Boot接口设计规范
这种参数接收方式是比较常见的,由于是GET请求方式,所以在传参时直接在路径后拼接参数和参数值即可。在开发过程中会出现部分接口设计时采用将参数拼入路径中的方式,当只需要一个参数时,可以考虑路径参数接收这种接口设计方式。这种请求方式与普通参数接收方式没有很大的区别,个人习惯。。。:像根据订单号查询,这个时候可以将接口设计成/product/1024,在接口方法的参数列表中使用@PathVariable注解对订单号进行接收。
2023-11-19 11:54:27
1117
原创 MongoDB-入门
Date 类型是一个 64 位的对象,其中存放了从 Unix 纪元(1970.1.1)开始到现在经历的毫秒数,Date 类型是有符号的,负值则表示 1970.1.1 之前的时间。在一个 MongoDB 实例中,时间戳是唯一的,而且主要在 MongoDB 内部使用,在应用开发中,您可以使用 Date 类型来定义时间日期。在MongoDB中使用use命令来创建数据库,如果该数据库不存在,则会创建一个新的数据库,如果该数据库已经存在,则将切换到该数据库。collection_name: 需要删除集合的名称。
2023-10-27 18:10:16
877
原创 Redis-05Redis应用场景
当用户发完微博后,都通过lpush将它存放在一个 key 为LATEST_WEIBO的list中,之后便可以通过lrange取出当前最新的微博。Redis作为key-value形式的内存数据库,最先想到的应用场景就是作为数据缓存。zrevrangebyscore:获得以分数倒序排列的序列。通过Set的交集、并集、差集操作来实现查找两个人共同的好友。的特性,可以避免分布式部署之后的数据污染问题。zrank:获取成员在该排行榜的位置。便可以成为一个公用的时间轴。String或者Hash。
2023-10-09 18:38:52
310
原创 Redis-04独立功能的实现
介绍:常用命令:订阅频道SUBSCRIBE当一个客户端执行SUBSCRIBE命令订阅某个或某些频道的时候,这个客户端与被订阅频道之间就建立起了一种订阅关系退订频道UNSUBSCRIBE当一个客户端退订某个或某些频道的时候,服务器将从pubsub_channels中解除客户端与被退订频道之间的关联订阅模式退订模式发送消息PUBLISH 查看订阅信息PUBSUBPUBSUB CHANNELS [pattern]PUBSUB NUMSUB PUBSUB NUMPAT订阅频道有A、B、C三个客户端都执行了命令:【
2023-10-09 18:38:02
373
原创 Redis-03持久化
Redis是一个键值对数据库服务器,服务器中通常包含着任意个非空数据库,而每个非空数据库中又可以包含任意个键值对,通常情况下将服务器中的以及它们的键值对统称为Redis是,它将自己的,如果不想办法将存储在内存中的数据库状态保存到磁盘中,那么。为了解决持久化相关的问题,Redis提供了功能,这个功能可以。
2023-10-09 18:37:24
740
原创 Redis-02单机数据库的实现
Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结构的db数组中,db数组的每个项都是一个redis.h/redisDb结构,每个结构代表一个数据库;在初始化服务器时,程序会根据服务器状态的属性来决定应该创建多少个数据库;dbnum属性的值由服务器配置的databash选项决定,默认情况下,该选项的值为16,所以Redis服务器默认会创建16个数据库。
2023-10-09 18:36:42
239
1
原创 Redis-01基本数据结构
List 列表是简单的字符串列表,按照插入顺序排序,可以从头部或尾部向 List 列表添加元素。列表的最大长度为2^32 - 1,也即每个列表支持超过40 亿个元素高效的节点重排能力【按照插入顺序排序,头插、尾插】顺序访问节点通过增删节点灵活调整链表长度Hash 是一个键值对(key - value)集合,其中 value 的形式如:Hash 特别适合用于存储对象一个键(key)可以和一个值(value)进行关联每个键独一无二。
2023-10-09 18:34:27
612
原创 Spring Boot对接Oracle数据库
最近学习了Oracle数据库,那么如何使用Spring Boot和MyBatis Plus对接Oracle数据库呢?这就有了这篇随记,具体流程如下。
2023-08-11 15:57:29
12601
1
原创 SpringBoot解决跨域的几种方式
跨域资源共享(CORS):通过修改Http协议header的方式,实现跨域。说的简单点就是,通过设置HTTP的响应头信息,告知浏览器哪些情况在不符合同源策略的条件下也可以跨域访问,浏览器通过解析Http协议中的Header执行具体判断。具体的Header如下:CORS跨域常用headerAccess-Control-Allow-Origin: 允许哪些ip或域名可以跨域访问Access-Control-Max-Age: 表示在多少秒之内不需要重复校验该请求的跨域访问权限。
2023-08-08 00:21:21
261
原创 SpringBoot对接OpenAI
OpenAI是一家人工智能研究实验室,致力于构建人类水平通用人工智能。他们的GPT-3.5模型是目前最先进的自然语言处理模型之一,能够理解和生成自然语言文本。通过与OpenAI对接,你可以将这一强大的模型嵌入到你的应用中,实现自动化文本生成、智能问答、机器翻译等功能。Spring Boot是一个用于构建独立的、基于生产级别的Java应用程序的框架。它简化了Spring应用的开发过程,提供了一系列的工具和插件,帮助开发者快速搭建稳健的应用。
2023-08-08 00:18:43
2826
3
原创 Vue-自定义icon实现
在项目中引入了element-ui之后,发现其内置的icon有限,无法满足项目的需求,因此需自定义icon来实现需求。
2023-06-02 09:19:28
877
1
原创 如何搭建属于自己的服务器(Linux7.6版)
最近小伙伴推荐的华为云活动,购买服务器相当的划算,本人也是耗费巨资购买了一台2核4G HECS云服务器。话不多说,在这里给华为云打一个广子,活动力度还是很不错的。活动详情见链接:https://kuy8.com/xcGtU。
2023-03-10 16:04:35
1712
原创 Spring设计模式——代理模式[手写实现JDK动态代理]
代理模式(Proxy Pattern):是指为其他对象提供一种代理,以控制对这个对象的访问。代理对象在客户端和目标对象之间起到中介作用,代理模式属于结构型设计模式。
2023-03-09 14:56:44
467
原创 Spring设计模式——原型模式
原型模式(Prototype Pattern),是指原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。
2023-03-09 09:12:10
352
原创 SpringBoot3.0 + SpringSecurity6.0+JWT
SpringBoot3.0 + SpringSecurity6.0+JWTSpring Security 是 Spring 家族中的一个安全管理框架。一般Web应用的需要进行认证和授权。认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户授权:经过认证后判断当前用户是否有权限进行某个操作搭建一个SpringBoot工程① 设置父工程 添加依赖配置文件application.yml② 创建启动类③ 创建Controller启动项目,查看接口文档地址:http://localhost:4
2023-03-03 17:28:02
27472
17
原创 《OnJava》——11内部类
利用内部类,可以将逻辑上存在关联的类组织在一起,而且可以控制一个类在另一个类中的可见性。内部类和组合不同,内部类是一种代码隐藏机制:将代码放在其他类的内部。创建内部类的方式就是把类定义放在一个包围它的类之中。返回一个指向内部类的引用11.2 到外部类的链接内部类看上去像是一种名称隐藏和代码组织机制。当创建一个内部类时,这个内部类的对象中会隐含一个链接,指向用于创建该对象的外围对象。通过这个链接,无须任何特殊条件,内部类对象就可以访问外围对象的成员。内部类拥有对外围对象所有元素的访问权。11.3 使
2022-06-23 15:54:53
502
原创 软考上午科目__第一章__安全性、可靠性与系统评测基础知识
计算机安全概述计算机安全是指计算机资源安全,是要保证这些计算机资源不受自然和人为的有害因素的威胁和危害。计算机资源由系统资源和信息资源两大部分组成。系统资源包括硬件、软件、配套设备设施、有关文件资料,还可以包括有管的服务系统和业务工作人员。信息资源包括计算机系统中存储、处理和传输的大量各种各样的信息。信息安全的基本要素:机密性:确保信息不暴露给未授权的实体或进程。完整性:只有得到允许才能修改数据,并能够判别出数据是否已被篡改。可用性:得到授权的实体在需要是可访问数据可控性:可
2022-05-04 14:42:09
429
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人