JAVA
文章平均质量分 70
软件科学研究院
专注JAVA系统优化、系统结构调整、系统问题排查医治、系统升级、架构设计、SQL语句优化、小程序、APP、企业应用软件开发
展开
-
SpringAI通过Ollama连接大语言模型通义千问
随着大语言模型发展越来越成熟,Apache开源组织也出了自己的SpringAI开源工程Spring AI项目旨在简化包含人工智能功能的应用程序的开发,避免不必要的复杂性。该项目从著名的 Python 项目(例如 LangChain 和 LlamaIndex)中汲取灵感,但 Spring AI 并不是这些项目的直接移植。支持所有主要模型,例如 OpenAI、Ollama、Azure OpenAI、Amazon Bedrock、Huggingface、Google VertextAI、Mistral A原创 2024-05-16 23:10:14 · 2087 阅读 · 1 评论 -
差分隐私 JAVA版实现
差分隐私,一种新的隐私定义,用于数据脱敏场景原创 2023-01-10 10:39:16 · 839 阅读 · 0 评论 -
Nacos集群环境搭建
软件下载nacos-server-1.4.1.tar.gz说明:nacos的版本与springboot、seata的版本有兼容性问题,所以在选择nacos时,这点得注意,我们选择的是1.4.1版本,对应springboot、seata版本,下面把相关的maven版本列出来,以便大家在选择版本可以避免很多坑下载地址:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0原创 2021-08-03 11:09:23 · 587 阅读 · 1 评论 -
分布式事务终极解决方案
随着springcloud使用的越来越普遍,微服务也趋向于成熟,既然都分成微服务了,势必也会是分库的设方式,既然分库了,肯定会遇到分布式事务的问题,这是任何一个微服务架构设计当中逃不掉的拦路虎。关于分布式事务,网上有很多讨论,也有很多解决方案,但他们都有一个共同的缺点,就是侵入式开发,而且使用起来,也过于复杂,和业务不解偶。 本方案使用起来简单易懂,和业务解耦(本方案已经生产系统当中大规模使用,如有不懂之处,可以v:hekf520)1、先来看两张图,(1)在发起事务阶...原创 2021-02-27 21:36:03 · 359 阅读 · 1 评论 -
Mysql导出表字段说明
package com.db;import java.awt.Color;import java.io.FileOutputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import jav...原创 2020-02-26 15:59:46 · 536 阅读 · 0 评论 -
人脸识别图形比较(特征值比较)
在业务中,经常会用到,两次进行拍照,通过比较两个相片,看是不是同一个人,所以这里就用到人脸识别比较:本例子中,我们用到的开源库为虹软公司的,官网地址为:https://www.arcsoft.com.cn/,在使用此例子前,需要到上面的官网申请appId和sdkKey对应的代码和jar包地址为:https://blog.csdn.net/hekf2010/article/details...原创 2020-02-24 16:45:50 · 3694 阅读 · 0 评论 -
常用正则表达式
一、校验数字的表达式1. 数字:^[0-9]*$2. n位的数字:^\d{n}$3. 至少n位的数字:^\d{n,}$4. m-n位的数字:^\d{m,n}$5. 零和非零开头的数字:^(0|[1-9][0-9]*)$6. 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7. 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,...原创 2019-11-09 20:37:01 · 145 阅读 · 0 评论 -
Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore
1)CountDownLatch和CyclicBarrier都能够实现线程之间的等待,只不过它们侧重点不同:CountDownLatch一般用于某个线程A等待若干个其他线程执行完任务之后,它才执行;1而CyclicBarrier一般用于一组线程互相等待至某个状态,然后这一组线程再同时执行;另外,CountDownLatch是不能够重用的,而CyclicBarrier是可以重用的。2...原创 2019-02-18 09:41:42 · 120 阅读 · 0 评论 -
AB压测试实实践
CentOS7压力测试 ab 命令安装与使用yum install apr-utilyum install yum-utilscd /optmkdir abtmpcd abtmpyum install yum-utils.noarchyumdownloader httpd-tools*rpm2cpio httpd-*.rpm | cpio -idmv cp /opt/abtmp...原创 2019-01-30 17:09:47 · 177 阅读 · 0 评论 -
多线程Semaphore共享资源实例
public class TestTask{ private final ExecutorService exec; private final Semaphore semaphore; public TestTask(int nThread){ exec = Executors.newFixedThreadPool(nThread); s...原创 2019-01-22 10:21:21 · 348 阅读 · 0 评论 -
多线程并行执行,然后汇总结果
代码下载地址:https://download.csdn.net/download/hekf2010/10926623很多时间,需要多线程并行处理,然后汇总处理结果,例如,因为请参数数据量非常大,所以只能分批查询,然后将分批查询的结果汇总到一个数组中。一、多线程类import java.util.ArrayList;import java.util.List;import jav...原创 2019-01-18 20:57:37 · 10509 阅读 · 8 评论 -
修改war外相关配置办法
修改相关配置参数过程1、将 mq-cloud.war放在linux一个目录下如/home/temp2、解压:unzip -oq mq-cloud.war3、删除:rm -rf mq-cloud.war4、修改:WEB-INF/classes路径下的application-local.yml、application-online.yml里面连库地址,application.yml里面的服务端...原创 2018-11-27 10:33:47 · 495 阅读 · 0 评论 -
Springcloud 多数库 多数据源整合,查询动态切换数据库
随着SAAS平台越来越盛行,很多情况下,希望应用程序搭建一套,为每个用户建立一个私有的数据库,所有程序使用一套.开动吧:一、 首先继承AbstractRoutingDataSource,从名称上看为抽象路由数据源,就是spring为提供动态数据库而设定的。在这个类中,需要重写determineCurrentLookupKey这个方法,这个方法就是动态从private Map<Ob...原创 2018-07-22 17:01:26 · 17241 阅读 · 10 评论 -
keycloak单机安装
下载keycloak-3.4.3.Final.tar.gz包,并且解压cd keycloak-3.4.3.Final/keycloak启动数据库 mysql创建数据库 create database keycloak;bin/add-user-keycloak.sh -r master -u admin -p admin在standalone/configuration/standalone.xm...原创 2018-03-05 14:52:08 · 3882 阅读 · 0 评论 -
MS笔记
1、Hadoop文件格式:面向行:SequenceFile,MapFile,Avro 面向列:Parquet , RCFile,ORCFile原创 2018-03-07 11:07:02 · 155 阅读 · 0 评论 -
面试笔记
1、写两个线程,一个线程打印数字,一个线程打印字母,且交替打印,打结果为:A12B34C56D78E910F1112G1314H1516I1718J1920K2122L2324M2526N2728O2930P3132Q3334R3536S3738T3940U4142V4344W4546X4748Y4950Z5152代码如下:锁控制实体类Suo:public class Suo {p原创 2015-04-09 14:15:26 · 292 阅读 · 0 评论 -
面试笔记2
1、线程继承Thread和实现Runable区别继承Thread类的方式有它固有的弊端,因为Java中继承的单一性,继承了Thread类就不能继承其他类了;同时也不符合继承的语义,Dog跟Thread没有直接的父子关系,继承Thread只是为了能拥有一些功能特性。而实现Runnable接口,①避免了单一继承的局限性,②同时更符合面向对象的编程方式,即将线程对象进行单独的封装,③而且实现原创 2015-04-23 22:09:22 · 229 阅读 · 0 评论