- 博客(110)
- 资源 (2)
- 收藏
- 关注
原创 mybatis
/</</</springboot中mybatis坐标</</</</</</</</</基础配置基础增删改查</</</</</注解方式开发如果有多个参数需要添加@Param如果接受的对象字段名和数据库中字段名不同,可以用Result注解进行指定动态查询Where标签会自动去除第一个and或or</</</</</</</</</</</Set会自动去除最后一个“,”</</</</</separator用,分割</</引用sql片段</</</</字段名不一致时的映射问题</</
2025-11-28 16:34:05
568
原创 easyexcel
EasyExcel是一个基于Java的简单、省内存的读写Excel的阿里开源项目,在尽可能节约内存的情况下支持读写百M的Excel.用于excel和cvs的导入和导出。
2025-11-27 10:27:51
481
原创 java集合
数组:可以存储引用数据类型,也可以存储基础数据类型集合:可以存储引用数据类型,基础数据类型必须转为对应的封装类单列集合collection:每次添加一个数据双列集合map:数据成对体现集合的基础操作ArrayList:适用于频繁查找操作的场景。LinkedList:适用于频繁插入和删除操作的场景。HashSet:适用于需要唯一元素且顺序不重要的场景。TreeSet:适用于需要排序的集合。HashMap:适用于需要快速访问键值对的场景。
2025-11-24 17:32:01
787
原创 java多线程
CompletableFuture 是 Java 8 引入的一个类,它实现了 Future 和 CompletionStage 接口。Future:表示一个异步计算的结果,可以通过 get() 方法获取结果,但会阻塞线程,直到结果完成。CompletionStage:表示一个异步计算的阶段,可以在这个阶段完成后执行其他操作,支持链式调用。异步执行任务。在任务完成后,链式调用其他方法(无需阻塞等待结果)。组合多个异步任务的结果。处理任务的成功或失败。
2025-11-24 17:07:10
745
原创 springcache缓存
本地缓存:一种将数据存储在应用程序本地内存中的技术,目的是减少对后端数据源(如数据库、远程服务)的访问次数,从而提高应用程序的性能和响应速度。本地缓存通常用于存储频繁访问且不经常变化的数据。本地缓存的优势本地缓存的局限性@EnableCaching:开启缓存注解功能,通常加在启动类上@Cacheable:在方法执行前先查询缓存中是否有数据,如果有数据,则直接返回缓存数据,如果没有缓存数据,调用方法将方法返回值放到缓存中@CachePut:将方法的返回值放到缓存。
2025-11-21 16:48:48
837
原创 redis
传统关系型数据库是结构化数据,每一张表都有严格的约束信息:字段名、字段数据类型、字段约束等等信息,插入的数据必须遵守这些约束:NoSQL常见结构:Redis是一个基于内存的key-value结构数据库redis的特点:字符串String哈希hash列表list集合set有序集合sorted set/zset坐标配置string操作哈希操作列表操作json形式存储对象
2025-11-21 16:48:25
317
原创 spring Security
/默认Url根路径跳转到/login,此url为spring security提供@Override//配置安全拦截机制@Overridehttp.and().formLogin() //允许表单登录.loginPage("/login‐view") //指定我们自己的登录页,spring security以重定向方式跳转到/login-view。
2025-11-20 16:29:29
543
原创 git的使用
git merge branchname:将指定分支的修改内容合并到masker中。git branch -d branchname:删除分支命令。git checkout branchname:切换分支命令。git branch branchname:创建分支命令。git clone [指定目录]:拷贝项目[指定目录]git init 路径:在指定路径下生成一个仓库。git branch:查看分支命令。git mv:移动或重命名命令。git commit:提交。git rm:删除命令。
2025-11-18 16:59:26
231
原创 PageHelper
PageHelper是Mybatis-Plus中的一个插件,主要用于实现数据库的分页查询功能。其核心原理是将传入的页码和条数赋值给一个Page对象,并保存到本地线程ThreadLocal中。接下来,PageHelper会进入Mybatis的拦截器环节,在拦截器中获取并处理刚才保存在ThreadLocal中的分页参数。这些分页参数会与原本的SQL语句和内部已经定义好的SQL进行拼接,从而完成带有分页处理的SQL语句的构建。</</</</常见配置分页查询。
2025-11-17 14:13:28
296
原创 RabbitMQ
同步调用存在的问题异步调用常见实现就是事件驱动模式当支付服务发布支付成功事件后会发送一个订单id给BrokerBroker通知服务端进行工作通知成功后Broker通知支付服务通知成功(不需要服务端完成工作)异步通信的缺点MQ(消息队列):存放消息的队列。
2025-10-13 17:25:36
1010
原创 微服务学习
Order(1) // 定义优先级,值越小优先级越高@Component/** ** 处理当前请求,有必要的话通过{@link GatewayFilterChain}将请求交给下一个过滤器处理* @param exchange 请求上下文,里面可以获取Request、Response等信息* @param chain 用来把请求委托给下一个过滤器* @return {@code Mono<Void>} 返回标示当前过滤器业务结束* */@Override// 1. 获取请求参数。
2025-10-13 17:25:19
383
原创 mysql数据库
数据库:存储数据的仓库数据库管理系统:操作和管理数据库的软件SQL:操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准。
2025-10-13 09:56:33
418
原创 苍穹外卖业务流实战学习
Entity:实体,通常和数据库中表对应DTO:数据传输对象,通常用于程序中各层之间传递数据VO:视图对象,为前端展示数据提供对象POJO:普通java对象,只有属性和对应的get和set方法。
2025-09-19 08:48:15
454
原创 spring boot
Entity:实体,通常和数据库中表对应DTO:数据传输对象,通常用于程序中各层之间传递数据VO:视图对象,为前端展示数据提供对象POJO:普通java对象,只有属性和对应的get和set方法。
2025-09-16 14:43:49
1040
1
原创 spring
创建一个bean接口实例化bean在resource下创建配置文件加载bean工厂的静态方法实例化方法需要创建工厂工厂实例方法实例化需要创建工厂依赖注入在编写程序时,通过反转控制,把对象的创建交给spring,但是代码中不可能出现没有依赖的情况。IOC解耦知识降低他们的依赖关系,但是不会消除将业务层和持久层的依赖关系,在使用spring之后,让spring来维护bean的依赖注入方法:模拟web层修改service层通过依赖注入的方法后,service可以直接使用bean对象,不需要单独
2025-09-06 14:30:54
691
原创 大模型学习笔记
Agent: 给定用户的输入,以及可使用的tools,自动规划执行步骤(比如每个步骤调用哪些tool),并最终完成用户指令。模型I/O封装:包括大预言模型,chat Model,Prompt Template,output parser等。Retrieval:包括文档的loader,embedding模型,Text Splitter,向量存储,检索等。即便模型规模小,资源有限,如果选择适当的训练方法,用足够多高质量的数据训练足够长的时间,也能得到一个较好的模型。记忆: 模型记忆里的管理。
2025-08-06 13:46:49
952
原创 强化学习理论
chapter 1:基本概念chapter2:贝尔曼公式状态值:从一个状态出发,沿着一个策略所得到奖励回报的平均值,状态值越高说明策略越好贝尔曼公式:描述了所有状态和状态值的关系,通过公式可以求解出给定策略的状态值,因此能够评价策略好不好(Policy evaluation策略评价)vπrπγPπvπchapter3:贝尔曼最优公式贝尔曼最优公式是贝尔曼公式的特殊情况强化学习的最终目标是求解最优策略最优策略:能够得到最大的状态值。
2025-07-22 20:16:11
856
原创 统计学习方法
贝叶斯定理的意义:当我们容易直接得出P(A|B),P(B|A)则很难求出,但我们更关心P(B|A),贝叶斯定理就是通过P(A|B)获得P(B|A)P(B|A)随着P(B)和P(A|B)的增长而增长,随着P(A)的增长而减少,即如果A独立于B时被观察到的可能性越大,那么B对A的支持度越小。P(B|A):P(A|B)表示假设B成立的前提下A的概率,机器学习中我们关心的是P(B|A),即给定A成立的同时B的概率,称为B的后验概率。P(A) :表示在没有训练数据前假设A拥有的初始概率,P(A)被称为A的先验概率。
2025-06-10 13:03:52
565
原创 目标检测学习
为了加快速度和参数量,相比于spp只使用一个4×4的盒子。spp将特征图划分为三张子图,三张子图大小分别为4。得到(16+4+1)*fc的特征图 fc。使用softmax替换svm做分类。分类使用N+1类,多出一个背景类。2,1,对每个小块进行全局池化。将候选区域的筛选融合到网络中。使用RoI pooling。
2025-05-30 10:46:39
399
原创 文件相关操作
程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放通过文件可以将数据持久化C++的文件操作需要包含头文件文件分类文本文件:文件以文本的ASCII码形式存储在计算机中二进制文件:文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂他们打开文件的方式ios::in 为读文件而打开文件ios::out 为写文件而打开文件ios::ate 初始位置:文件尾ios::app 追加方式写文件ios::trunc 如果文件存在先删除再创建。
2025-05-13 19:10:34
422
原创 类和对象的学习
成员变量和成员函数是分开存储的,每一个非静态成员函数只会有一个函数实例,也就是多个同类型的对象公用一块代码。C++通过this指针区分是哪个对象调用了这个函数。
2025-05-09 16:57:36
113
原创 程序的内存模型
全局区还包含了常量区,字符串常量和其他常量存在这里(局部常量除外 )堆区:由程序员分配和释放,若程序员不是放,程序结束时由操作系统回收。不同区域存放的数据,赋予不同的生命周期,给我们更大的灵活编程。栈区:由编码器自动分配释放,存放函数的参数值、局部变量等。代码区:存放函数体的二进制代码。由操作系统进行管理的。c++程序在执行时,将内存大方向划分为4个区域。全局区:存放全局变量和静态变量以及常量。该区域的数据在程序结束后由系统释放。程序运行前就已经存在代码区。存放全局变量和静态变量。通过new创建开辟内存。
2025-05-07 16:43:12
215
原创 c++面向对象
代码区:存放函数体的二进制代码,由操作系统管理全局区:存放全局变量、静态变量和常量栈区:由编译器自动分配释放,存放函数的参数和局部变量堆区:由程序员分配和释放,弱程序员不释放,程序结束时操作系统自动回收编译:程序编译后会生成exe可执行程序,未执行该程序前氛围两个区域代码区:存放cpu执行的机器指令代码区时共享的,同一个代码生成的多个exe文件内存中只有一份代码代码区是只读的,防止程序意外的被修改全局区:存放全局变量和静态变量和常量。
2024-12-04 08:56:08
275
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅