threadlocal 20230615 java lang

基于Java+selenium+Chrome,实现截取html页面内容并保存为图片

## 1、需求 实现Java程序发送邮件,并将输入的多个页面转为pdf类型附件一同发送出去。而页面如何转为pdf呢?其中的一个方案就是先将html页面转为图片,再将图片合并为pdf。此文记录的是html=>png过程。 ## 2、开发 ### 主要依赖 ```xml org.seleniumhq.s ......
selenium 页面 内容 Chrome 图片

Java封装xml格式参数请求第三方接口

# Java封装xml格式参数请求第三方接口 ## 1、引用包 ```java import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import javax.xml.tr ......
第三方 接口 参数 格式 Java

java递归,数组

递归 在Java中,递归是一种方法或函数调用自身的技术。使用递归可以解决那些可以被分解成相同问题的子问题的情况。以下是有关使用递归的一些基本信息: 递归的基本原理: 找到问题的基本情况(递归终止条件)。 找到问题的规模减少的方式,将其转化为更小的子问题。 通过调用自身来解决子问题。 编写递归函数的要 ......
数组 java

Java基础-Day03

# Java基础-Day03 ## Scanner - Scanner是需要进行导包操作 ```java import java.util.Scanner; class ScannerTest{ public static void main(String[] args){ Scanner scan ......
基础 Java Day 03

Java 面向对象基础

# Java 面向对象基础 # 1.类与对象的基本概念 ## 类即 Java 中的数据类型(用户自定义),可以理解成在现实中即一个物品的种类,而具体实现这一种类即为对象。 # 2.如何创建对象 ## 创建对象即实例化一个类,通过new关键字来创建一个对象。 ## 例如创建一个猫类的对象: ## 先声 ......
对象 基础 Java

java~CompactStrings字符压缩技术

# 概念 在 Java 中,`char` 和 `byte` 类型占用的存储空间是不同的。 1. `char` 类型:`char` 是 16 位无符号的 Unicode 字符类型,用于表示单个字符。在 Java 中,`char` 类型占用 2 个字节(16 位)的存储空间。 2. `byte` 类型: ......
CompactStrings 字符 技术 java

【转】【Java】二维码生成及图片合成

转自:https://blog.csdn.net/Alian_1223/article/details/117332164 在 pom.xml 引入 maven 配置: <dependency> <groupId>com.google.zxing</groupId> <artifactId>core ......
图片 Java

JAVA实现发送邮件功能

话不多说,直接上代码!!!/* 新建传输对象类*/import lombok.*;import java.util.List;import java.util.Map;@Getter@Setter@AllArgsConstructor@NoArgsConstructor@ToString@Build ......
邮件 功能 JAVA

Java项目的程序里为什么老用注解?注解有哪些作用

注解和类,接口等属于同一层并列的东西 来源于 Java项目的程序里为什么老用注解?注解有哪些作用 https://blog.csdn.net/m0_71777195/article/details/127818321 注解的英文名叫“Annotation”,是 Java 中给类、方法以及成员变量等元 ......
注解 作用 程序 项目 Java

JAVA将List转化为逗号分隔的字符串

list为integer类型时 StringUtils.join(list.toArray(),","); //org.apache.commons.lang.StringUtils list为String类型时 String.join(",",list); ......
逗号 字符串 字符 JAVA List

java方法

# java方法 Java方法是语句的集合,它们在一起执行一个功能。 - 方法是解决一类问题的步骤的有序组合 - 方法包含于类或对象中 - 方法在程序中被创建,在其他地方被引用 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的集合。我们设计方法的时候,最好保持方法的原子性,就是**一个 ......
方法 java

java使用AES算法的CBC模式加密

https://blog.csdn.net/qq_25816185/article/details/81626499?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECT ......
算法 模式 java AES CBC

Nodepad ++ 运行JAVA代码

前提: 环境已经配置完毕 (具体步骤可自行在必应,百度等平台搜索) jdk版本: jdk1.8.0_202 notepad++ 已安装 ##方法: >notepad不添加插件,使用CMD终端命令运行 ###1. 使用notepad++,新建文本输入以下代码,并另存为HelloWorld.java > ......
Nodepad 代码 JAVA

Java学习笔记(十七)

1、手写一个懒汉式的单例模式&解决其线程安全问题,并且说明为什么这样子去解决 class Mythread extends Thread{ private static Mythread mythread; private Mythread() { } public static Mythread ......
笔记 Java

java 8新特性 list转map

List<Object> 转Map<String,List<String>> Map<String, List<String>> skillAndList = list.stream().collect(Collectors.groupingBy(Employee::getSkillId, Coll ......
特性 java list map

java陷阱之数据库主从

现象 客户遇到工单缺少描述,查询日志写入描述报错,但那是工单又正常生产 原因 先写入工单再查询工单实时性要求比较高的不能走从库, 还有就是service层方法命名不规范,不点进去看根本不知道走从库,如果要走从库应该带上Slave后缀,查询缓存也一样带上cache findProviderIdByTi ......
主从 陷阱 数据库 数据 java

java实际开发中接口文档是自己写还是架构师写?

软件工程的两种方法下,由后端决定接口都是不对的。 第一种软件工程的方法:瀑布模型,自顶而下,逐步细化。 接口会变,但是接口要提前设计。接口不是后端开发完成之后才“自然”产生的,那不是自然,而是无序。 **前后端分离的开发,应该是面向“API”的开发。API的设计并不能由前端或后端一方决定或主导,而是 ......
架构 接口 实际 文档 还是

java反射之-InvocationHandler使用

InvocationHandler 是 Java 中的一个接口,是 Java 反射 API 的一部分。与 Proxy 类一起使用,用于动态创建接口的代理实例。 在 Java 中使用 Proxy 类创建代理对象时,需要提供一个 InvocationHandler 实现来定义代理对象的行为。Invoca ......
InvocationHandler java

[转]Java如何对一个对象进行深拷贝

介绍 在Java语言里,当我们需要拷贝一个对象时,有两种类型的拷贝:浅拷贝与深拷贝。浅拷贝只是拷贝了源对象的地址,所以源对象的值发生变化时,拷贝对象的值也会发生变化。而深拷贝则是拷贝了源对象的所有值,所以即使源对象的值发生变化时,拷贝对象的值也不会改变。如下图描述: 了解了浅拷贝和深拷贝的区别之后, ......
拷贝 对象 Java

Java学习笔记(十六)

1.什么是线程? 线程是指操作系统中的一种执行单元,它是进程中的一部分,可以看作是轻量级的进程。与进程不同的是,线程共享同一进程的地址空间和系统资源,如打开文件和信号处理等,但每个线程都有自己的程序计数器(PC)和栈,用于执行代码和存储局部变量等数据。 2。线程和进程有什么区别? 线程和进程都是操作 ......
笔记 Java

JAVA方法

java方法 原子性 ​​public static int max(int num1,int num2){ int result = 0;//初始化 if(num1==num2){ System.out.println("num1==num2"); return 0;//终止方法 } if(num ......
方法 JAVA

6月25日java学习日记

端午节小休息了几天,断开连接了几天,希望快速状态回到吧,今天了解了部分java异常类,Exceptions类为异常类,学习了throw关键字,以及了解了try catch的用法(基本与C#相同),同时使用HasgMap以及List.of方法实现了斗地主案例。 ......
日记 java

学习Java前的一些介绍

1.java开发环境搭建 卸载: 删除Java的安装目录 删除JAVA_HOME 删除path下关于java的目录 java -version 验证 安装: 创建jdk和jre两个目录(还可以创建一个code目录存放代码) 百度搜索jdk(建议安装jdk8) 同意协议,找到对应版本并且下载 双击安装 ......
Java

Java 二维数组

# Java 二维数组 # 1.二维数组的定义 ## 二维数组即数组里面又存放了一个一维数组;Java 中一维数组的个数可以变化。 ## 动态定义: ## int\[]\[] arr = new int\[数组个数]\[]; ## int arr\[]\[] = new int\[数组个数]\[]; ......
数组 Java

Java基础-Day02

## Java基础-Day02 ## 运算符 - 算法运算符 ![](https://img2023.cnblogs.com/blog/2779111/202306/2779111-20230625172550208-2015687834.png) ​ - 赋值运算符 ![](https://img ......
基础 Java Day 02

【后端面经-Java】HashMap详解

[TOC](【后端面经-Java】HashMap详解) ## 1. HashMap的家族定位 接口`java.util.Map`有四个常用的实现类,如图是它们之间的类继承关系。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/ba13b32ddabc47bd9666 ......
端面 HashMap Java

IDEA中修改Java版本

> 1. pom文件 ![](https://img2023.cnblogs.com/blog/2051703/202306/2051703-20230625183130643-20262118.png) > 2. File Project Structure ![](https://img2023 ......
版本 IDEA Java

【问题记录】A child container failed during start module java.rmi does not "opens sun.rmi.transport" to unnamed module @1e236278

``` 子容器启动失败,spring容器没启动,tomcat也不能启动 不是servlet-api的scope问题 Dubbo的@Service注解注释掉就可以启动,怀疑是Dubbo版本问题(但不是) 百度module java.rmi does not "opens sun.rmi.transpo ......
module quot container rmi transport

Java 反序列化之 XStream 反序列化

XStream 是一个简单的基于 Java 库,Java 对象序列化到 XML,反之亦然(即:可以轻易的将 Java 对象和 XML 文档相互转换)。如何使用 XStream 进行序列化和反序列化操作? ......
序列 XStream Java

Java多线程-Lesson02

一.Lamda表达式 λ是希腊字母表的第十一位字母,英文名是Lambda Lamda表达式的出现主要是为了避免匿名内部类过多的原因,它属于函数式编程的范畴 为什么要使用Lamda表达式? 避免匿名内部类定义过多 可以让你的代码看起来很简洁 去掉了没有意义的代码,只留下一堆核心逻辑 主要使用在创建的类 ......
线程 Lesson Java 02