20230408日记system java
JAVA反射
动态语言 动态语言,是指程序在运行时可以改变其结构:新的函数可以引进,已有的函数可以被删除等结构上的变化。 比如常见的JavaScript就是动态语言,除此之位Ruby,Python等也属于动态语言,而C、C++则不属于动态语言。 从反射角度说JAVA属于半动态语言。 反射机制概念(运行状态中知道类 ......
使用Java语言 利用OpenCV,对两种图片相似度对比
package com.wzc.bms;import org.opencv.core.*;import org.opencv.imgcodecs.Imgcodecs;import org.opencv.imgproc.Imgproc;import java.io.*;import java.net. ......
docker 容器内java进程使用超出容器限制
# 背景 当您的业务是使用Java开发,且设置的JVM堆空间过小时,程序会出现系统内存不足OOM(Out of Memory)的问题。特别是在容器环境下,不合理的JVM堆参数设置会导致各种异常现象产生,例如应用堆大小还未到达设置阈值或规格限制,就因为OOM导致重启等。 ## 通过-XX:MaxRAM ......
遇到了一个需要java生成二维码,支持扫码枪扫描的需求
1,需求是生产二维码,加入到正文和表单中 2,首先能生成二维码,其次就是把二维码插入到表单和正文了,插入到表单设计到一些前端知识暂不分享 3,把二维码插入正文,正文是用的word文档,后续分享如何操作 生成二维码的样式应该是pdf417这种码,而不是qrcode普通的二维码 # 需要引入依赖jar包 ......
Java 实现 WebSocket 集群转发:使用 Redis 发布订阅
场景 浏览器客户端 client1 连接到了服务端 A 的 websocket 节点。 浏览器客户端通过弹性负载均衡,把请求分配到了服务端 B,服务端 B 上没有 client1 的连接。 需求 服务端 B 把消息转发到服务端 A 上,找到 客户端 client1 的连接,发送出去。 画示意图 ![ ......
java~SNAPSHOT版本号的作用
在 Maven 中,`-SNAPSHOT` 后缀是用于标识项目版本为快照(Snapshot)版本的约定。快照版本是处于开发和演进中的版本,通常用于开发人员在`构建和测试过程中进行频繁的版本迭代`;反之,如果不是Snapshot后缀的包,例如v1.1.0,这说明它是一个相对稳定的版本了,这个版本一经发 ......
常用语言的线程模型(Java、go、C++、python3)
了解一下线程模型还是很有必要的,如果不清楚语言层面上的线程在操作系统层面怎么映射使用,在使用过程中就会不清不楚,可能会踩一些坑 ......
2023最新IDEA版本Java零基础教程,赵姗姗老师带你7天入门Java架构师!
【【马士兵教育】2023最新IDEA版本Java零基础教程,赵姗姗老师带你7天入门Java架构师!】https://www.bilibili.com/video/BV1v24y1H74t?vd_source=d4c8a130bd8760e7e8cdd48d80abd00c # XML讲解 # JDB ......
Java扩展Nginx之七:共享内存
### 欢迎访问我的GitHub > 这里分类和汇总了欣宸的全部原创(含配套源码):[https://github.com/zq2599/blog_demos](https://github.com/zq2599/blog_demos) ### 本篇概览 - 作为《Java扩展Nginx》系列的第七 ......
Java8新特性之Optional类的妙用
该新特性也是翻java八股翻到的,感觉有点小用,所以记录一下 通常我们在调用方法获取参数时,常常会出现要避免空指针,从而进行一系列判断非空的代码,这部分十分冗长且啰嗦还重复,故可以使用一下今天的主角: **Java.util.Optional**类 1. 创建方式 共有三种方式供您选择 * 直接创建 ......
使用Java线程同步工具类CountDownLatch
`java.util.concurrent.CountDownLatch`是Java并发并发编程中的线程同步工具类,基于AQS(java.util.concurrent.locks.AbstractQueuedSynchronizer)实现。 `CountDownLatch`工具类主要应用在如下场景 ......
使用Java线程同步工具类CyclicBarrier
## 如何使用 `java.util.concurrent.CyclicBarrier`是Java并发并发编程中的线程同步工具类,基于`java.util.concurrent.locks.ReentrantLock`实现。 `CyclicBarrier`工具类主要应用在如下场景:让一组线程同时到达 ......
Java变量集
变量 变量是什么:就是可以变化的量! Java是一种强类型语言,每个变量都必须声明其类型。 Java变量是程序中最基本的存储单位,其要素包括变量名,变量类型和作用域。 type varName [=value] [{,varName[=value]}];//数据类型 变量名 = 值:可以使用逗号隔开 ......
Java数组
# Java数组 ## 数组的定义 - **数组是相同类型数据的有序集合。** - **数组描述的相同类型的若干个数据,按照一定的先后次序排列组合而成。** - **其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们。** ## 数组声明创建 - **首先必须声明数组变量,才能 ......
6.5840: Distributed Systems
# 相关信息 课程链接: https://pdos.csail.mit.edu/6.824/schedule.html Next Step: - 7.18 LEC 2 - 7.17 MapReduce paper, LEC 2 Preparation - 7.16 MapReduce video # ......
Java架构师之路:从Java码农到年薪八十万,最牛Java架构师进阶路线
Java架构师之路:从Java码农到年薪八十万,最牛Java架构师进阶路线 摘要:本文将为Java开发工程师提供一条从Java码农到年薪八十万的进阶之路,探讨如何成为一名顶尖的Java架构师。我们将介绍Java架构师的职责和要求,并提供一系列实用的学习和成长建议,帮助读者掌握所需的技能和知识。 一、 ......
Java开发大型互联网-架构师必须掌握的分布式技术
Java开发大型互联网-架构师必须掌握的分布式技术 摘要:在当今互联网行业,随着用户量和业务的不断增长,大型互联网系统的设计和开发已经成为了一项头等重要的任务。作为架构师,要能够应对这样的挑战,就必须掌握一些关键的分布式技术。本文将介绍Java开发大型互联网系统时,架构师必须要掌握的分布式技术。 一 ......
Java项目12306售票系统
Java项目12306售票系统 目录(一) 系统功能概述 3(二) 系统功能模块结构 31.前端功能 32.WEB 服务端 43.数据库端 4(三) 系统界面设计 51.登陆界面 52.注册界面 53.操作成功界面提示 64.操作失败界面提示 65.导航页 76.购票页 87.购买后打印电子车票页 ......
高级java高并发,高性能,分布式,高可用,负载均衡,系统架构实战
提到锁,大家肯定想到的是sychronized关键字。是用它可以解决一切并发问题,但是,对于系统吞吐量要求更高的话,我们这提供几个小技巧。帮助大家减小锁颗粒度,提高并发能力。 初级技巧-乐观锁乐观锁使用的场景是,读不会冲突,写会冲突。同时读的频率远大于写。 悲观锁的实现: 悲观的认为所有代码执行都会 ......
Java语言的特性
面向对象:Java 是一种纯面向对象的编程语言,这意味着 Java 中所有的代码都是以对象为基础的。在 Java 中,你可以通过定义类来创建对象,这些对象可以具有状态(属性)和行为(方法)。Java 支持继承、多态和封装等面向对象的概念,使代码更加清晰、易于扩展和维护。 平台无关性:Java 的平台 ......
Java python C++
Java 和 Python 的区别 编程范式:Java 是一种面向对象的编程语言,而 Python 支持多种编程范式,包括面向对象、函数式和命令式等。这意味着 Python 在某些情况下可以比 Java 更简洁、易于理解和编写。 代码可读性:Python 是一种非常易于阅读和编写的编程语言,其语法和 ......
每日汇报 第四周第一天 JAVA中的I/O流
今日所学: 明确输入、输出的方向;明确字节流和字符流在操作流的数据单元方面上的异同;掌握Inputstream 类、Reader类、OutputStream 类和 Writer类的常用方法;熟练掌握使用 File类的3种构造方法创建文件对象 明日计划: 继续进行I/O流的学习,考科三 遇到困难:练车 ......
Java中的集合类
一. 介绍 在Java中,集合是一种用于存储和操作多个元素的容器。它更方便地操作和管理一组对象,集合类提供了比传统的数组更强大和灵活的功能,可以动态地添加、删除和查找元素,以及进行排序、过滤等操作。集合类有一个共同特点,就是它们只容纳对象,如果想在集合中使用基本类型数据,可以使用其对应的包装类。 集 ......
Java方法
### 0x01 认识方法 #### 1、什么是方法 方法是一种语法结构,它可以把一段代码封装成一个功能 #### 2、为什么要用方法 以方便重复调用。方法提高了代码的复用性,让程序的逻辑更清晰。 ### 0x02 方法的使用 #### 1、方法的定义及其调用 ```java 修饰符 返回值类型 方 ......
Java流程控制
# Java流程控制 ## 用户交互Scanner 通过Scanner类来获取用户的输入 基本语法: ```java Scanner s = new Scanner(System.in); ``` 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用 ......
学习java第4天
HelloWorld 随便新建一个文件夹,存放代码 新建一个java文件 - 文件后缀名为.java - Hello.java - [注意点]系统可能没有显示文件后缀名,我们需要手动打开 编写代码 public class Hello{ public static void main (String ......
Docker部署Java应用[转]
练习要求: 在CentOS Linux release 7.7.1908 (Core)中,先拉一个Centos镜像,然后在光秃秃的centos镜像基础上把项目环境搭建好,然后再提交到自己的docker仓库里。 操作环境: 虚拟机中安装好的CentOS Linux release 7.7.1908 ( ......
Java-多线程-八股文
线程安全的理解? ``` 线程安全说的是,当多个线程并发访问互斥资源时,读写互斥资源的代码逻辑能正常处理,获得正确结果,不会互相干扰的情况。 ``` 守护线程的理解? ``` 守护线程是与普通线程相区分的概念,用户一般使用的就是普通线程,普通线程有自身独立的生命周期,而守护线程的生命周期取决于普通线 ......