Java
java协程线程之虚拟线程
前言 众所周知,java 是没有协程线程的,在我们如此熟知的jdk 1.8时代,大佬们想出来的办法就是异步io,甚至用并行的stream流来实现,高并发也好,缩短事件处理时间也好;大家都在想着自己认为更好的实现方式; 在来说说吧,我为什么会在今天研究这个破b玩意儿呢, 这事情还的从一个月前的版本维护说起, 目前公司游戏运营的算中规中矩吧,日新增和日活跃用户基本保持在1w,2.5w样子; 大概1-2
JQuery ComboBox 如何让数据重新加载并清空选项
1、场景 有两个下拉框,1个是 产品类型 下拉框,1个是 项目代码 下拉框 项目类型下拉框的值需要根据产品类型下拉框,进行调整。 这个时候,每次选中产品类型下拉框,项目代码下拉框的值,都要重新进行加载 2、如何进行重新加载 $('#abc').combobox('loadData',intelProjCodeComboxData); 3、如何清空下拉框
【技术积累】Java中的常用类【一】
Math类 Math类是Java中的一个数学工具类,提供了一系列常用的数学方法。下面是Math类的常用方法及其案例: abs() 返回一个数的绝对值。 int num = -10; int absNum = Math.abs(num); System.out.println(absNum); // 输出:10 解释:abs()方法返回num的绝对值,即10。 ceil() 返回大于或等于一个数的最
Mybatis中传递多个参数的4种方法
前言 现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate。使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数。面对各种复杂的业务场景,传递参数也是一种学问。 下面给大家总结了以下几种多参数传递的方法。 方法1:顺序传参法(不推荐) #{}里面的数字代表你传入参数的顺序。 这种方法不建议使用,sql层表达不直观,且一旦顺序调整容易出错。 方法2
java parallelStream 线程堵塞问题笔记
定义: Stream(流)是JDK8中引入的一种类似与迭代器(Iterator)的单向迭代访问数据的工具。ParallelStream则是并行的流,它通过Fork/Join 框架(JSR166y)来拆分任务,加速流的处理过程。最开始接触parallelStream很容易把其当做一个普通的线程池使用,因此也出现了上面提到的开始的时候打标,结束的时候去掉标的动作。 ForkJoinPool又是什么
JAVA-- 在Java8 Parallel Stream中如何自定义线程池?
使用Parallel Stream时,在适当的环境中,通过适当地使用并行度级别,可以在某些情况下获得性能提升。 如果程序创建一个自定义ThreadPool,必须记住调用它的shutdown()方法来避免内存泄漏。 Parallel Stream默认使用的线程池 如下代码示例,Parallel Stream并行处理使用的线程池是ForkJoinPool.commonPool(),这个线程池是由整
关于RedisTemplate之opsForValue的使用说明
Redis中opsForValue()方法的使用 1、set(K key, V value) 新增一个字符串类型的值,key是键,value是值。 2、get(Object key) 获取key键对应的值。 3、append(K key, String value) 在原有的值基础上新增字符串到末尾。 4、get(K key, long start, long end) 截取key键对应值得
如何在 Java 8 中将 List 转换为可变参数对象
我有一个函数 ( findByNames) 接受传播参数,如下例所示: 作为参数,我有一个列表: 所以我想将names列表转换为传播对象以使用findByNames函数,这可以使用 Java 8 吗?我试过这个解决方案: 但它不起作用! 谢谢你的时间。 Nam*_*man 6 将 转换List<String>为数组String[]: 如果将列表
二、集成MyBatis
1. 创建新模块 添加依赖 1.1. pom.xml文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sch
Zabbix企业级监控方案
常见监控软件介绍 Cacti Cacti 是一套基于 PHP、MySQL、SNMP 及 RRD Tool 开发的监测图形分析工具,Cacti 是使用轮询的方式由主服务器向设备发送数据请求来获取设备上状态数据信息的,如果设备不断增多,这个轮询的过程就非常的耗时,轮询的结果就不能即时的反应设备的状态了。Cacti 监控关注的是对数据的展示,却不关注数据异常后的反馈。如果凌晨 3 点的时候设备的某个数据
通过iptables做本地端口分流实现高性能服务
根据以往经验,在高配置服务器上部署Java服务,建议部署多个JVM实例,以提升JVM示例内存回收效率; 此时面临负载分发问题,常规想法是通过Nginx或者Apache做负载分流。然而在高并发情况下无论外置负载还是本机负载,都需要处理TCP端口占用问题,处理起来并不简单。 近期在做一个高性能测试时候,一位同学提供了不一样的思路,通过iptables为本机端口做负载分流,效果箱单不错。 iptable
leetcode 546. 移除盒子
1. 题目 读题 链接:https://www.nowcoder.com/questionTerminal/a5390d76441647fbb182f34bee6a1ca7来源:牛客网一维消消乐 小v在vivo手机的应用商店中下载了一款名为“一维消消乐”的游戏,介绍如下: 1、给出一些不同颜色的豆子,豆子的颜色用数字(0-9)表示,即不同的数字表示不同的颜色; 2
[Typescript] Queue
Using Linked list to implement a Queue. In javascript, if you want to push a item in front of an Array, it need to shift the rest of items, not good for performance. Using Linked List is O(1) oepratio
leetcode练习
分类 题单:code 难度:简单 中等 困难 类型:数组 链表 字符串 二叉树 排序 解法:递归和迭代 滑动窗口 Map Stack 堆 双指针 前缀和 动态规划 解答:解答 code [1. 两数之和](#1. 两数之和) [2. 两数相加](#2. 两数相加) [3. 无重复字符的最长子串](#3. 无重复字符的最长子串) [5. 最长回文子串](#
EAS_添加监听事件
1.文本控件监听(KDTextField) 例如有文本控件: 对于文本监听器,不像其他控件可以直接 txtBillPackageNo.addxxxx来添加监听,我们可以通过不同的方法来实现,有以下几种 第一种:通过监听鼠标的操作来实现监听,再对应的方法中添加自己想要处理的事件 第二种:通过DocumentListener()监听器,addDocumentList
C/C++数据结构课程设计题目[2023-07-19]
C/C++数据结构课程设计题目[2023-07-19] 数据结构课程设计题目 基本要求: 1、每人1题,如果系统具有界面以及功能复杂,可以2人合作一题。 2、可以自拟题目,难度不低于给定题目,且自拟的题目需要经过老师审核通过。 3、要求实现一个界面美观、功能完整、具有实用性的系统。 4、不限制编程语言,可以使用C,C++,C#,JAVA等。 5、每个题目给定的是基本要求,鼓励进行功能扩展。 6、针
小结_第一个Java程序
总结: 1. Java程序的编写与执行: 步骤1: 编写. 在后缀名为.java的文件中编写Java代码,该文件称为源文件 步骤2: 编译. 针对后缀名为.java源文件进行编译,生成字节码文件. 格式: javac 源文件名.java 步骤3: 运行. 针对于编译后生成的字节码文件,进行解释运行. 格式: java 字节码文件名 2. 针对步骤1的编写的说明 其中, ① class:关键字
一个面试题:计算时间偏移量,怎么设计你的程序?
计算时间偏移量,例如,计算当前时间向前偏移 30 秒的时间,我们利用java.util.Calendar很容易实现。 我在进行面试的时候,关于程序设计,有问过应聘者这样的问题。 那么,我们怎么封装这么一个工具类呢?这个工具类提供哪些工具方法呢?每个方法又当怎么实现呢? 下面这段优秀的代码节选自hutool-DateUtil(hutool-all-4.5.18.jar ,mav
SonarQube 10.1 (macOS, Linux, Windows) - 清洁代码 (Clean Code)
SonarQube 10.1 (macOS, Linux, Windows) - 清洁代码 (Clean Code) SonarQube Data Center Edition (Java App for macOS, Linux, Windows) 请访问原文链接:https://sysin.org/blog/sonarqube-10/,查看最新版。原创作品,转载请保留出处。 作者主页:sysi
SpringBoot系列---【如何配置优雅停机?】
如何配置优雅停机? 1.优雅停机是什么 优雅停机就是在关闭应用程序之前,允许仍在进行中的请求操作完成,并设置超时时间,在此超时时间范围内,将不接收新请求。 2.Springboot服务怎么配置优雅停机 Spring Boot 2.3.0之后引入了Graceful Shutdown的功能。其中所有四个嵌入式Web服务器(Tomcat,Undertow,Netty和Jetty)都为响应式和基于S
Spring 容器介绍
Spring IoC 容器 Spring IoC 容器是 Spring 框架的核心组件之一。IoC(Inverse of Control,控制反转)的含义是: 将对象的创建交给 Spring 容器,而不是由程序自己直接 new 实例。这样可以实现解耦。 Spring 容器会在程序启动时,根据对象的配置元信息(XML或注解),生成相应的对象实例并注入到需要使用的地方。 Spring IoC 容器
Whistle(基于Node实现的跨平台转包调试工具)的使用
可抓包,可显示vconsolet调试 一、安装 npm i -g whistle 二、启动 手机和电脑处于同一网络 w2 start --init 浏览器打开地址:http://127.0.0.1:8899/ 三、配置 Rules:https://testh.app.coc.10086.cn whistle.inspect://vConsoleconsole 安装插件: &nb
gradle命令与maven命令对照
Gradle和Maven都是流行的构建工具,用于管理和构建Java项目。下面是Gradle命令和对应的Maven命令对照: 1. 构建项目: - Gradle: `./gradlew build` - Maven: `mvn clean install` 2. 清除生成的构建文件: - Gradle: `./gradlew clean` - Maven: `mvn clean` 3. 运行项目:
Java自带的jvisualVM简单介绍
首先来介绍下visualVM的工作原理: VisualVM 是一款 Java 虚拟机监控和分析工具,它可以帮助开发人员实时监控Java应用程序的性能和内存使用情况。VisualVM 的工作原理是基于jJava 虚拟机提供的Java Management Extensions (JMX)技术。 JMX 是一种Java 平台的管理和监控技术,它提供了一组 API,用于管理和监控Java应用程序
在线CAD如何配合three.js绘制带线宽的线段
前言 1.在线CAD的产品经常会被集成到很多用户的网页系统内,前端开发人员只要会Java Script,就可以对在线CAD进行集成和二次开发,今天这篇文章我们讲一下梦想CAD控件云图(H5方式)如何配合three.js绘制带线宽的线段。 2.在这之前,如果还没有安装梦想CAD控件的朋友,可以查看快速入门,链接如下:http://help.mxdraw.com/?pid=32 函数配置 首先mxdr
Android编译报错Caused by: java.lang.RuntimeException: Manifest merger failed with multiple
Android编译报错Caused by: java.lang.RuntimeException: Manifest merger failed with multiple这种异常一般是引用了aar ,如果项目中的manifest application配置和aar中不一样就会报错,比如 android:icon 和aar中不一致,则添加 tools:replace="android:icon"