程序员 程序 日记java

【Java 并发编程】synchronized

synchronized 关键字 synchronized 是 Java 中的一个关键字,翻译成中文是同步的意思,主要解决的是多个线程之间访问资源的同步性,可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。 使用方法 修饰实例方法 给当前对象实例加锁,进入同步代码前要获得 当前对象实例的 ......
synchronized Java

java 命令解压war包

1. cmd 调出命令行工具 2. cd 定位到war包路径 3. jar -xvf yourfile.war 进行解压 "war"是一种文件格式,它是Java Web应用程序的打包格式。它是一种压缩文件,用于将Web应用程序的所有相关文件(包括HTML、CSS、JavaScript、JSP、Ser ......
命令 java war

java serverlets使用数据源连接oracle数据库,并执行查询操作代码

package chap03; import java.io.IOException;import java.io.PrintWriter;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultS ......
数据 数据源 serverlets 代码 数据库

Error:java: Compilation failed: internal java compiler error

Error:java: Compilation failed: internal java compiler error 出现这个错误的原因主要是因为 JDK 版本问题,有两个原因,一个是编译器版本不匹配,一个是当前项目 JDK 版本不支持。 File --> Project Structure - ......
java Compilation compiler internal failed

【Java 并发编程】LockSupport

目录简介方法介绍阻塞和唤醒示例示例1示例2示例3阻塞对象 blocker 的作用和显式锁、隐式锁等待唤醒的区别 简介 java.util.concurrent.locks.LockSupport 是一个工具类,提供了基本的线程阻塞和唤醒功能,它是创建锁和其他同步组件的基础工具,内部是基于 sun.m ......
LockSupport Java

C程序分别实现下列字符阵列的输出

C程序分别实现下列字符阵列的输出:(https://zhuanlan.zhihu.com/p/443989560 可以参考这个博主写的) 1,左下三角形(代码) 1 #include <stdio.h> 2 int main() 3 { 4 for(int i = 1; i <= 5; i++) / ......
阵列 字符 程序

win10 更新网卡驱动程序

前言 最近一段时间网络总是时不时信号弱,而且还会断开,其他同事的就正常。应该是驱动太老了。 1.确认驱动型号 电脑-右键-选中管理,找到如下: 2.去官网下载最新驱动 百度,上面的型号,找到网址:https://www.intel.cn/content/www/cn/zh/products/sku/ ......
驱动程序 网卡 程序 win 10

Java IO 与 NIO:高效的输入输出操作探究

引言 输入输出(IO)是任何编程语言中的核心概念,而在Java中,IO操作更是应用程序成功运行的基石。随着计算机系统变得越来越复杂,对IO的要求也日益增加。在本文中,我们将探讨Java IO和非阻塞IO(NIO)的重要性以及如何在Java中实现高效的输入输出操作。 传统IO(阻塞IO) 传统IO是大 ......
Java NIO IO

这篇记录一下C#和java中的http request的测试

1. 在c#中,测试http的,一般做一个mock的httpContext, 然后里面的request和response都使用mock的,这样设置好后,就可以测试controller 2. 在java中,因为是httpservelet这些,所以实例化测试创建mock的httprequest这些 ht ......
request java http

macOS 如何设置 Finder 打开某种类型的文件时候使用指定的默认 Application 程序 All In One

macOS 如何设置 Finder 打开某种类型的文件时候使用指定的默认 Application 程序 All In One ......
Application 类型 时候 文件 程序

java数组原理(对比c语言数组)

java数组原理(对比c语言数组) 数组名区别 存储结构 声明,创建和初始化区别 数组名区别 本着一切皆对象的原则,所以java中的数组也是对象.那么数组类是哪个,当然不是java.util.Arrays. 总之:java数组名是对象,而c++数组名是数据结构 存储结构 JAVA里数组的内存分配是在 ......
数组 原理 语言 java

java项目实践-请求转发以及重定向-day18

目录1. 中文乱码问题2. 请求的转发servlet3. 登录后的重定向4 总结 1. 中文乱码问题 创建一个工程secondweb 添加jar包依赖 new servlet web.xml添加servlet 构建配置修改 <?xml version="1.0" encoding="UTF-8"?> ......
项目 java day 18

java学习第一天-安装JDK,运行Hello.java

卸载JDK 删除java的安装目录 删除JAVA_HOME 删除path下关于java的目录 cmd下输入java -version 安装JDK 华为云JDK下载链接,首先下载JDK 下载对应版本 安装JDK 设置安装路径 配置环境变量 打开环境变量 新建系统变量-->JAVA_HOME 配置pat ......
java Hello JDK

Java 开发环境配置

转载:https://www.w3cschool.cn/java/java-environment-setup.html window系统安装java 下载JDK 配置环境变量 1.右击“我的电脑”→“属性”→“高级系统设置”→“高级”→“环境变量”; 在"系统变量"中设置3项属性,JAVA_HOM ......
环境 Java

企业微信群机器人发送消息(三)java端如何控制

1.先在群里添加机器人,然后获取机器人的webhook地址: 假设webhook是:https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa 2.有多种方式发送群消息,可以采用c ......
机器人 机器 消息 企业 java

Java String类

1.substring() 方法返回字符串的子字符串。 public String substring(int beginIndex) 或 public String substring(int beginIndex, int endIndex) 1 class Main { 2 public st ......
String Java

Java中 length 和 length()的区别

在Java中,str.length针对的是数组,而str.length()针对的是针对的字符串 数组(str.length) 的特点有:长度固定,类型固定。因此数组的长度就可以被视为是一种数组的属性 字符串(str.length()) : string 的内部机制是一个 char 数组,而 char ......
length Java

Java多线程编程的优点和缺点

优点: 加快响应用户的时间:多线程允许并发执行多个任务,可以充分利用多核处理器,从而提高程序的性能和响应速度。比如我们经常用的迅雷下载,都喜欢多开几个线程去下载,谁都不愿意用一个线程去下载,为什么呢?答案很简单,就是多个线程下载快啊。 简化程序结构、模块化、异步化:例如我们实现电商系统,下订单和给用 ......
线程 优点 缺点 Java

Java并发编程和多线程的区别

并发编程: 并发编程是一种编程范式,它关注的是编写能够正确和高效处理多个并发任务的程序。并发编程不仅包括多线程,还包括了处理多个独立任务的各种技术和模式,如进程、协程、分布式编程等。并发编程的目标是实现任务的并发执行,以提高系统的性能和资源利用率。 因此,多线程是并发编程的一部分。多线程是在单个程序 ......
线程 Java

java 获取月初的第一天

一、背景 点击查看代码 SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = new Date(); Date da = new Date(date.getYear(),date.getMont ......
java

在Java中,如何避免检查空值?

内容来自 DOC https://q.houxu6.top/?s=在Java中,如何避免检查空值? 我使用 x != null 来避免空指针异常。有没有其他的替代方法? if (x != null) { // ... } 在我看来,这是一个相对常见的问题,初级到中级的开发人员在某个时候都会遇到:他们 ......
Java

20231016-日记

距离CSP还有5天 上午 - 模拟赛总结 T1 - 魔力子串 考虑对于每个右端点找到它能匹配的状态,使用前缀和思想以方便统计. 这里我们定义"状态"为前缀的各个字母的数量, 减去最少得字母数量 , 经过化简,我们一定可以从前面相同的状态直接转移过来. 因此可以开一个巨大的map,里面存的结构体是52 ......
20231016 日记

cpu在执行 java时,java指令是保存在数据cache中还是指令cache中

Java代码在运行时,首先由JVM(Java Virtual Machine)编译器将Java字节码转换成本地机器代码,然后再由CPU执行。 在CPU中,指令缓存(Instruction Cache)和数据缓存(Data Cache)都是用于提高CPU处理效能的缓存结构,它们是处理器访问内存的缓存。 ......
指令 cache java 还是 数据

Java AbstractQueuedSynchronizer

目录前言CLH 锁AQS 框架AQS 核心思想AQS 的同步状态AQS 对资源的共享方式AQS 的重要方法AQS 的数据结构NodeConditionObjectConditionConditionObjectAQS 源码分析核心方法acquire 方法addWaiteracquireQueuere ......
AbstractQueuedSynchronizer Java

Linux保持程序后台运行

nohup命令 (no hang up) nohup {some program} & &:让程序在后台运行 nohup:在当前目录自动生成nohup.out,可以不挂断地运行命令 当前用户非正常退出或结束的时候,命令仍然可能自己结束。因此使用了nohup的情况下,退出终端的时候需要使用exit才能 ......
后台 程序 Linux

10.16日记

在src目录下创建路由文件目录,目录名为“router”,并在该目录下创建“index.js”文件,文件内容如下所示,代码中,创建了一个路由器,其中配置了两个路由“about”和“home”,分别对应组件“About”和“Home”。 // 该文件专门用于创建整个应用的路由器 import VueR ......
日记 10.16 10 16

2_脚本程序

一.脚本程序 1.脚本执行方式 执行1:bash file1 # !/bin/bash 脚本声明 echo "你好!" [root@kvm ~]# vim aaa.sh [root@kvm ~]# bash aaa.sh 你好! 执行2:sh file1 [root@kvm ~]# sh aaa.s ......
脚本 程序

java实现大文件多线程上传案例

当机器内存大小为4G,需要上传一个大小为50G的文件时,为了避免内存溢出,可以采用分片上传的方式,即将大文件切分成多个小片段进行并发上传。以下是一个详细的方案和代码实现示例: 方案说明: 将大文件切分成多个大小适当的片段(例如每个片段大小为100MB)。创建一个线程池来管理并发上传任务,控制同时进行 ......
线程 案例 文件 java

java批量执行atax同步MySQL表时出现卡住问题处理

中断问题和datax中自带的MySQL jar包版本有关,更换后即可。 背景:有个需求需要把服务器上的mysql业务库数据同步到另一台服务器上,我选择了datax来做批量同步操作。 现象:java批量执行的代码写好后,在自己电脑(win10)执行没问题,换了一台电脑(也是windows server ......
问题 MySQL java atax

详解Java HashMap

HashMap介绍 HashMap遍历方式 HashMap的遍历,大体上可分为4类,而每种类型下又有不同的实现方式,总共的遍历方式可分为7种: 迭代器遍历: 使用迭代器对EntrySet遍历; 使用迭代器对KeySet遍历; foreach遍历: 使用foreach对EntrySet遍历; 使用fo ......
HashMap Java