Milo
发表于|更新于
|浏览量:
放纵必需的自由而求暂时的安全的人们,结果既失去自由,又得不到安全——富兰克林
分享一个OPC UA的Java实现
https://github.com/eclipse/milo

OPC UA Client SDK
1
2
3
4
5 <dependency>
<groupId>org.eclipse.milo</groupId>
<artifactId>sdk-client</artifactId>
<version>0.6.9</version>
</dependency>OPC UA Server SDK
1
2
3
4
5 <dependency>
<groupId>org.eclipse.milo</groupId>
<artifactId>sdk-server</artifactId>
<version>0.6.9</version>
</dependency>
相关推荐
2024-08-31
Disruptor
有教养的头脑的第一个标志就是善于提问。——普列汉诺夫 官方文档: LMAX Disruptor github: GitHub - LMAX-Exchange/disruptor: High Performance Inter-Thread Messaging Library Disruptor是由LMAX Exchange开发的一个高性能并发框架,专门用于处理需要低延迟和高吞吐量的场景。与传统的队列模型相比,Disruptor通过无锁的环形缓冲区实现了极高的性能,适合用在对性能要求苛刻的金融交易系统、日志处理系统等领域。 Disruptor的核心概念 Disruptor框架的核心组件包括: RingBuffer: 环形缓冲区,用于存储事件。它的大小是2的幂次方,以便利用位运算进行快速计算。 Event: 事件对象,代表要处理的数据单元。 Producer: 生产者,负责将事件发布到RingBuffer中。 Consumer: 消费者,从RingBuffer中获取事件并处理。 这些组件协同工作,形成一个高效的数据处理流水线。 引入依赖: 12345<depe...
2020-07-21
拦截器注入Service报空指针的坑
今天写了个拦截器,注入一个Service,结果没注入进去,报空指针 后来发现原来在拦截器配置处需要用@Bean的形式注入 并且在上面addInterceptor里面调用该函数 123456789@Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(visitInterceptor()) .addPathPatterns("/**"); } @Bean public VisitInterceptor visitInterceptor() { return new VisitInterceptor(); }
2024-01-26
webclient配置objectmapper
毋以其所不能疑,毋以其所能骄人。——佚名 代码如下,可以通过ExchangeStrategies指定序列化反序列化方式: 1234567891011121314151617181920212223242526272829303132333435import com.namaste.config.JacksonObjectMapper;import org.springframework.cloud.client.loadbalancer.LoadBalanced;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.http.codec.json.Jackson2JsonDecoder;import org.springframework.http.codec.json.Jackson2JsonEncoder;import org.springframewo...
2023-03-23
dataCompare
真正的好人,是那个和所有的大家认为坏的人在一起的人。——纪伯伦 分享一个项目:https://gitee.com/dromara/data-compare 介绍dataCompare 是一个大数据数据比对和数据探测平台 (1)支持hive表数据比对,mysql、Doris 数据比对,实现自动化配置进行数据比对,避免频繁写sql 进行处理 (2)支持少量配置即可实现数据探测 对比结果展示:
2021-03-12
gateway简单配置
生命不等于是呼吸,生命是活动。——卢梭 GAV 123456<!-- gateway 网关 --><dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> <version>2.2.0.RELEASE</version></dependency> 记得要注释掉我们之前引入的web 1234<!-- <dependency>--><!-- <groupId>org.springframework.boot</groupId>--><!-- <artifactId>spring-boot-starter-web</artifactId>...
2023-12-10
可变参数传入数组
通常是不想成名的人反而成名。——霍姆斯 今天遇到这样一个场景: 1234 @Overridepublic void deleteAllById(@Nonnull Iterable<? extends String> strings) { stringRedisTemplate.opsForHash().delete(SmCacheConst.STATE_MACHINE, );} 这里的org.springframework.data.redis.core.HashOperations#delete如下: 1 Long delete(H key, Object... hashKeys); 那这里我如果直接将Iterable转为数组,能正常运转吗? 也就是说,如果我是: 12Object[] array = StreamSupport.stream(strings.spliterator(), false).toArray(); stringRedisTemplate.opsForHash().delete(SmCac...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog