程序员 程序 日记java
java反序列化(五) JNDI注入
JNDI注入 前置知识 JNDI JNDI (Java Naming and Directory Interface) 是一个应用程序设计的 API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口。可以通过字符串来锁定一个对象 JNDI 支持的服务主要有以下几种: RMI (JAVA ......
Java中Runnable和Callable的区别 Runnable接口
Callable接口 从Java 1.0开始,它是java.lang包的一部分 从Java 1.5开始,它是java.util.concurrent包的一部分。 Runnable接口不能返回计算的结果。 Callable接口可以返回一个任务的并行处理的结果。 Runnable接口不能抛出一个有检查的 ......
Java中缓存区的基本使用
前言 缓存区是一种内存空间,在计算机程序中被广泛使用来优化I/O操作的效率。在文件I/O操作中,缓存区用于缓存将要写入磁盘或读取到内存中的数据。这样可减少对磁盘的访问次数,提高I/O操作的效率。本文将介绍缓存区的基本使用以及一些注意点,并提供一个实例来演示如何将一个jpg图片复制一份。 使用缓存区进 ......
Java中null和“”的区别
null和空字符串('')虽然都是没有任何内容,但是null却输出空指针异常,因为堆内存中根本就没有这个东西。 他们的区别可相当大,虽然都是没有信息,但是null代表堆内存中根本没有这个东西,这个对象不存在,怎么执行indexof操作?空字符串虽然没有信息,但是是有内存空间的,所以null与空字符串 ......
java开发环境、IDEA开发Hello World小程序
java开发环境、IDEA开发Hello World小程序: 1. java开发环境: 编译运行过程: 编译期:.java源文件,经过编译,生成.class字节码文件 运行期:JVM加载.class并运行.class(0和1) 特点:跨平台、一次编译到处使用 名词解释: JVM:java虚拟机 加载 ......
springboot mybatis 动态调用oracle存储过程,通过存储过程名称,就能动态调用存储过程、java动态调用oracle存储过程
由于在开发业务时,可能同时调用的存储过程不知道参数,但是参数从界面、或已经存储在数据库的获取,所以就不希望手动写存储过程的参数,通过简化的调用。 能不能写个动态的业务,只输入存储过程名称,自动获取存储过程参数,并且参数的数据从前台传递过来,这个就通用了。只写一个通用方法,就可以调用所有的存储过程。只 ......
C/C++服务端客户端通讯程序[2023-04-24]
C/C++服务端客户端通讯程序[2023-04-24] Socket通讯程序..服务器端).pptx 任务:Socket通讯程序开发 ·基本要求(80分)∶ 完成一对一的Socket客户端与服务器程序 ·进阶要求(90分)∶ 在完成基本要求基础上,将服务器端程序改为多线程程序 ·高级要求(100分) ......
java -- 注解
注解 注解概述 定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。 作用分类: 编写文档:通过代码里标识的注解生成文档 ......
Java
HashSet contains add Stack+ empty peek pop push(add) size HashMap valueOf(value) get(key), put(key, value), isEmpty() containsKey(key) containsValue(v ......
云原生周刊:2023 年 Java 开发人员可以学习的 25 大技术技能
文章推荐 2023 年 Java 开发人员可以学习的 25 大技术技能 这篇文章为 Java 开发人员提供了 2023 年需要学习的一些重要技能,这些技能涵盖了现代 Java 开发、大数据和人工智能、安全性、分布式系统和区块链、以及其他领域。Java 开发人员应该根据自己的需求和职业规划,选择适合自 ......
JAVA下载图片压缩zip
1. 支持多张图片下载/** * 下载附件zip */@PostMapping("downloadZip")public void downloadZip(@RequestBody ShipmentAnnexVo shipmentAnnexVo, HttpServletRequest request ......
关于Java:public函数公开其public / * package * /’参数类型
package nl.friesoft.solaredgenotifier; class SolarEdgeException extends Exception { public SolarEdgeException(String s) { super(s); } } package nl.fri ......
Java面试基础知识-MyBatis-Plus生成ID策略
MyBatisPlus默认实现5种主键生成策略,分别是: AUTO,配合数据库设置自增主键,可以实现主键的自动增长,类型为number; INPUT,由用户输入; NONE,不设置,等同于INPUT; ASSIGN_ID,只有当用户未输入时,采用雪花算法生成一个适用于分布式环境的全局唯一主键,类型可 ......
Windows操作系统下设置python程序开机自启动
Windows下设置python程序开机自启动 1、快捷键(win + r 输入shell:startup)访问到Windows自启项文件夹内 例如我的路径(C:\Users\xxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Star ......
java排序算法1(插入排序、希尔排序)
插入排序 稳定 | 平均时间复杂度 | 最好 | 最坏 | 空间复杂度| | | | | | | O(n²) | n |O(n²) |O(1) | //实现代码,不需要每次比都交换元素,减少交换次数 int[] arr = {1, 5, 7, 63, 4, 58, 45}; for (int i = ......
Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv_java320 in java.library.path
找到opencv的安装目录 然后将这个 opencv_java320.dll文件复制到java安装目录的bin目录下就可以了 D:\opencv3.20\opencv\build\java\x64 ......
java: -source 1.7 中不支持 lambada 表达式
编译时报 -source 1.7 中不支持 lambada 表达式 改为 8 即可 还有一种可能查看 pom.xml 文件 这两段应该设为 1.8 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncodi ......
STATA 程序更健壮 适应多种调用写法 更灵活
capture program drop ginid program ginid syntax varlist [if] [in] [,title(string)] //设定我们自己的命令格式 tempvar tinc tp m gini //设定 tinc tp m gini 四个变量为临时变量 ......
java: -source1.5中不支持diamond运算符终极解决办法
编译时 报 1.5不支持 diamond 运算符 1.常规办法 在File->Setting中设置如下: 然后检查:File->Project Structure里面的相关配置: 以上办法能解决问题的概率在90%,如果还不行,那么请按照以下方法,基本上100%可以解决。 2.非常规办法 在File- ......
程序员职业发展参考
工程师的五个级别 苏联物理学家朗道,给出了自认为物理学家的五个等级,并被称为朗道等级。朗道等级最核心的思想是:人和人的差距,能力和能力的差距,是数量级(通常是10的N次方)的差别,而不是通常人们想象的差一点点。 仿照朗道的方法,吴军老师给出了工程师的五个级别的划分: 第五级:能独立解决问题,完成工程 ......
STATA 程序参数的三种写法
capture program drop gini //如果 gini 命令已存在,则删除,否则跳过该步 program gini //定义命令名为 gini args inc hhs //规定命令 gini 后要带两个变量 inc 与 hhs egen tinc=sum(`inc') //计算 g ......
动力节点老杜Vue框架教程【一】Vue程序初体验
Vue.js是一个渐进式 MVVM 框架,目前被广泛使用,也成为前端中最火爆的框架 Vue可以按照实际需要逐步进阶使用更多特性,也是前端的必备技能 动力节点老杜的Vue2+3全家桶教程已经上线咯! 学习地址:https://www.bilibili.com/video/BV17h41137i4/ 视 ......
IDEA 将普通java工程转为maven
1、在idea打开工程,右击工程,选择 Add Framework Support 选择 maven 2、关闭工程3、打开工程根目录,将 .idea 文件夹删除 4、重新用 IDEA 打开工程 就会和直接构建的maven工程目录结构一致了。 5、此时再在工程上右击就会看到右键菜单多了一个【Maven ......
TOMCAT 热部署导致 Caused by: java.lang.outOfMemoryError: Metaspace
操作系统:Ubuntu 20.04.5 LTS JAVA版本:1.8.0_362 TOMCAT版本:Apache Tomcat 8.5 1.问题描述 tomcat 在热部署时很容易造成OOM 2.问题产生的原因: 当Java虚拟机(JVM)的元空间内存不足时,就会发生此错误。元空间是用于存储类元数据 ......
【Linux】yum安装Java环境,并配置环境变量
查看系统是否安装过java yum list installed | grep java 如果有旧版本的java,且你自己不需要,可以用如下方法卸载所有的java(后边的 * 符号是通配符) yum -y remove java-1.8.0-openjdk* 查看java软件包列表 yum list ......
第四章 存储器管理 4.2 程序的装入和链接
在多道程序环境下,程序要运行必须为之创建进程,而创建进程的第一件事情就是要把用户编写好的源程序和数据装入内存。如何将一个用户源程序变为一个可在内存中执行的程序,通常要经过下列几步: 1.编译 源程序模块是用高级语言或汇编语言写的一组程序语句。由编译程序对用户源程序进行编译,形成若干个目标模块(.o) ......
微信小程序 + App = ?
为了让开发者可以一次编码,就能够编译为 小程序、 Android、 iOS 应用,实现所谓的 多端开发,去年微信推出了 Donut(多纳) 开发平台(目前是 Beta 版),核心包括:1、开发者可将 小程序 构建成可 独立运行的移动应用;2、也可以将 小程序 构建成运行于 原生应用中的业务模块 从图 ......
老杜Vue实战教程完整版笔记(一)Vue程序初体验
Vue作为国内使用率最高,最火爆的前端框架 学习这门技术也越来越重要~ 动力节点老杜最新版Vue2+3教程已经上线! 还是原来的配方,还是熟悉的味道 学习地址:https://www.bilibili.com/video/BV17h41137i4/ 1 Vue程序初体验 我们可以先不去了解Vue框架 ......
Java-基础篇
1:Java背景知识 Java是美国 sun 公司(Stanford University Network)在1995年推出的一门计算机高级编程语言。 Java 早期称为Oak(橡树),后期改名为Java。 Java 之父:詹姆斯·高斯林(James Gosling)。 2009年 sun公司被Or ......