随笔分类 - JAVA
摘要:1、在RabbitMQ的管理后台新建交换机(exchange); 名称(Name): **ParkingExchange** 类型(Type): **fanout** 持久化(Durability): **Durable** 2、在RabbitMQ的管理后台新建队列(queue); 名称(Name)
阅读全文
摘要:接上篇:Spring AI(大模型工具Ollama介绍) 1、Ollama大模型代码验证 pom.xml引入jar <!-- spring-ai-ollama 的starter依赖,启动依赖 --> <dependency> <groupId>org.springframework.ai</grou
阅读全文
摘要:接上篇:Spring AI(多模态) 1、大模型工具Ollama介绍 本地搭建一套ollama大模型,不需要 open ai api key了,就可以进行功能上的开发; 官网:https://ollama.com/ 2、大模型工具Ollama下载 官网下载地址:https://ollama.com/
阅读全文
摘要:接上篇:Spring AI(音频转文本、文本转音频) 1、多模态(可以发一段文字和一张图片) 示例代码如下: /** * 多模态 * @author ithailin */ @RestController @RequestMapping("/ai") public class MultiModelC
阅读全文
摘要:接上篇:Spring AI(绘图) 1、音频转文本 application.yml新增配置 # 语音转文本 audio: transcription: options: # 模型版本 model: whisper-1 完整配置如下: spring: application: name: spring
阅读全文
摘要:接上篇:Spring AI(聊天程序) application.yml新增配置 image模型版本、数量、高度等相关参数配置,若当前代码中和application配置文件中同时声明,则代码中的配置会覆盖application配置文件中的 # ai绘图设置 image: options: # 模型版本
阅读全文
摘要:接上篇:Spring AI(基础开发准备) 1、聊天程序(调用一次接口) /** * 聊天程序 * @author ithailin */ @RestController @RequestMapping("/ai") public class ChatController { private sta
阅读全文
摘要:接上篇:Sping AI(初步了解) 1、开发环境准备 Spring Boot版本:3.2.4(当前使用) JDK17:https://www.oracle.com/cn/java/technologies/downloads/#jdk17-windows idea版本2020不支持JDK17需要使
阅读全文
摘要:一、什么是Spring AI 二、Spring AI的主要特点 Spring AI提供的API支持跨人工智能提供商的聊天、文本到图像、嵌入模型等,同时支持同步喝流API选项; 1、Chat Models (聊天模型) OpenAI Azure Open AI Amazon Bedrock Coher
阅读全文
摘要:将多个Long类型用逗号拼接的字符串转换成List<Long> String orderDetailIds = "1593507066795622400,1593507066795622401,1593507066795622402"; List<Long> orderDetailIdList =
阅读全文
摘要:Collections 为 List、Set、Map 等集合类定义了相应的空集合常量 // 空 List Collections.emptyList(); // 空 Set Collections.emptySet(); // 空 Map Collections.emptyMap(); 一个元素的集
阅读全文
摘要:为什么日期有Date了,还在JDK8中推出了LocalDateTime、LocalDate呢? 非线程安全的方法 Date类的大部分方法都不是线程安全的,比如setYear()、setMonth()、setDate()、setHours()、setMinutes()、setSeconds()等方法。
阅读全文
摘要:1、接口中默认方法修饰为普通方法2、lambda表达式3、函数式接口4、方法与构造函数引用 语法结构: 类名称::方法名称 (lambda表达式更加简洁的写法)5、Stream流接口6、Optonal类 接口中默认方法修饰为普通方法 在jdk8之前,interface之中可以定义变量和放法,变量必须
阅读全文
摘要:== 和 equals的区别 ==:比较的是对象地址; equals的分析: Integer:会先判断当前传入的Object类型的对象是否是Integer类型, 如果不是则返回 false,如果是则将其强转成Integer类型、并判断两个Integer值是否相同、并返回; String:先判断传入的
阅读全文
摘要:基本概念: 两个或两个以上的类相互引用、互相依赖; Java使用构造器不能解决循环依赖问题; Java可以使用setter解决循环依赖问题; Spring中: 内部通过三级缓存来解决循环依赖问题(DefaultSingletonBeanRegistry) 只有单例的 bean 会通过三级缓存提前暴露
阅读全文
摘要:AQS:抽象的队列同步器 是用来构建锁或者其它同步器组件的重量级基础框架及整个UC体系的基石,通过内置的FO队列来完成资源获取线程的排队工作,并通过一个int类型变量表示持有锁的状态; AQS为什么是JUC内容中最重要的基石? 在juc下countDownLatch、Semaphore、Cyclic
阅读全文
摘要:java.util.concurrent.locks.LockSuport 用于创建锁和其他同步类的基本线程阻塞原语。 这个类与每个使用它的线程相关联,一个许可证(在Semaphore类的意义上)。 如果许可证可用,则呼叫park将park返回,在此过程中消耗它; 否则可能会阻止。 致电unpark
阅读全文
摘要:1、java.lang.StackOverflowError 2、java.lang.OutOfMemoryError:java heap space 3、java.lang.OutOfMemoryError:GC overhead limit exceeded 4、java.lang.OutOfM
阅读全文
摘要:GC的作用域 GC分类: 次数上频繁收集的Young区(新生代):Minor GC 次数上较少收集Old区(老年代):Full GC 基本不动Perm区(永久代),在java8后更改为Metaspace(元空间) 1、垃圾回收四大算法 1.1、引用计数法:有对象被引用了,则GC不进行垃圾回收; 1.
阅读全文
摘要:Java8以后的JVM 1、JVM调优和参数配置,查看JVM系统默认值; 1.1、JVM参数类型: 标配参数 -version -help -showversion X参数(了解) -Xint 解释执行 -Xcomp 第一次使用就编译成本地代码 -Xmixed 混合模式(先编译再执行) XX参数 b
阅读全文