Java
文章平均质量分 66
墨城之左
形而上者谓之道,形而下者谓之器。
展开
-
OpenCV4.3 Java 编程入门:透明度与抠图
下面的代码,将原始图片从左到右,由完全透明到完全不透明,渐变!原创 2023-07-31 11:28:44 · 959 阅读 · 0 评论 -
Java Test 配置 logback.xml
在跑测试案例时,总希望输出的信息简洁明晰。测试案例中的日志信息,自己可以控制,但是依赖库中的日志信息,就由不得自己了。这时,就需要借助 logback.xml 来过滤掉一些不必要的日志信息。1. logback.xml 示例<?xml version="1.0" encoding="UTF-8" ?><configuration> <contextName>logback</contextName> <appender name.原创 2020-11-26 14:17:08 · 1175 阅读 · 0 评论 -
深入理解 Java 中的转义符: \u000a\u0022
Java 对 Unicode 转义字符不会进行任何特殊的处理,只是简单的将其替换称相应的字符!因此,在编写代码时,任何出现 Unicde 字符串的地方,都要额外注意,倍加小心,要知道 Java 词法是如何解析的?转移后的代码是否合法?逻辑上是否正确?Unicode 特殊字符含义\u000a换行符 \n\u007d{\u007b}\u0022"\u002b+示例一 :public void test(){ // 这是注释\u000a Sy.原创 2020-11-17 14:46:03 · 9178 阅读 · 0 评论 -
JDK 11 使用 jlink 生成定制化的 JRE
aaa原创 2020-07-31 11:07:34 · 4318 阅读 · 0 评论 -
深入理解 Java 泛型编程
JDK 5.0 引入了泛型,为什么要引入泛型,因为使用泛型可以编写泛型方法,可以让减少重复代码,让代码更简洁,更安全。1、避免在代码中对类型使用强制转换:不使用泛型List myIntList = new LinkedList(); // 1myIntList.add(new Integer(0)); // 2Integer x = (Integer) myIntList.iterato...原创 2020-07-25 20:27:31 · 250 阅读 · 0 评论 -
Java 编程中 immutable 集合的使用
JDK 9 之后,可以通过 List,Set,Map 类中的静态方法快速方便的创建 immutable 集合。所谓的 immutable 对象是指对象的状态不可变,不可修改,因此这样的对象天生就具有线程安全性。由于 immutable 集合在创建时,就确定了元素的所有信息,不需要考虑后续的扩展问题,因此实现上比 mutable 集合更节省空间。需要注意的是,如果 immutable 集合中包含...原创 2019-05-13 14:30:25 · 19719 阅读 · 0 评论 -
程序员必知必会:Java 高阶知识点
编程语言Java1、面向对象的四个基本特征:抽象,封装,继承,多态抽象:包括数据抽象与行为抽象;继承:类支持单继承,接口支持多继承封装:包括重载(overload)和重写(override),前者属于编译型多态,后者属于运行时多态。只能被 invokestatic 和 invokespecial 指令调用的方法,都可以在解析阶段中确定唯一的调用版本,符合这个条件的有静态方法、私有方法...原创 2019-05-12 11:06:52 · 570 阅读 · 0 评论 -
深入理解 JVM 中的 returnAddress
参考文档:jvms12数据类型在 JVM 中,数据分为两大类:primitive types (原生类型)和 reference types(引用类型)。引用类型,让 JVM 能更好的支持于面向对象语言的设计,引用类型的值用来指向内存中分配的类实例或者数组。JVM 规范中并没有详细规定引用类型的实现细节,比如引用应该通过何种方式去定位、访问堆中的对象,具体的对象访问方式取决于虚拟机的具体实现...原创 2019-05-05 13:07:25 · 15256 阅读 · 15 评论 -
Java 11 HTTP Client 的使用简介
http://openjdk.java.net/groups/net/httpclient/intro.htmlhttp://www.reactive-streams.org/Java 11 引入了新的 HTTP Client 模块,来发送 HTTP Request,支持 HTT/1.1, HTTP/2。重要接口:接口名称描述HttpClient.BuilderHtt...原创 2019-05-04 11:25:36 · 6418 阅读 · 0 评论 -
JVM Class 文件结构
文章目录基本概念Class 文件结构常量池字段表方法表属性表字节码指令基本概念1、JIT一般情况下,jvm 以解释的方式来执行 class 文件中的字节码,但当一段代码被频繁调用时,更好的做法是将其对应的字节码再次编译生成平台对应的机器码,这样就不需要每次都解释了,此之谓 JIT。虚拟机执行代码的两种方式:加载并执行 java 程序对应的 jvm 指令字节码;加载 jvm 指令字节码...原创 2019-04-26 18:20:36 · 556 阅读 · 0 评论 -
[转] Java 技术体系
文章目录一、构成架构师的技能体系二、阅读源码,分析源码知识点总汇三、分布式架构四、微服务架构技能总汇五、并发编程六、性能优化七、Java开发必知工具原文链接Java是现阶段中国互联网公司中,覆盖度最广的研发语言,掌握了Java技术体系,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能有立足之地。一、构成架构师的技能体系二、阅读源码,分析源码知识点总汇这张图详细介绍了源码中...转载 2019-06-15 22:22:00 · 258 阅读 · 0 评论 -
LockSupport 中的 park 与 unpark
当在代码中调用 LockSupport.park() 时,会阻塞当前线程的执行。 AtomicBoolean status = new AtomicBoolean(false); Thread waiter = new Thread(()->{ while (!status.get()) { LockSu...原创 2019-07-12 14:29:11 · 1014 阅读 · 0 评论 -
Spring Actuator 使用介绍
文章目录1 Spring Actuator2 Endpoints3 Jolokia4 Health5 Metric参考资料:Spring Boot1 Spring Actuator在生产环境中运行的程序,并不总是稳定、安静、正确的,往往会遇到各式各样的现场状况,这个时候,就需要获取该程序足够多的运行状态信息,然后分析并对其进行有效管理。Spring Boot Actuator 提供了多种...原创 2019-07-26 16:12:40 · 11753 阅读 · 0 评论 -
Java Math3 Descriptive Statistics (描述性统计分析)
1、术语英文中文arithmetic and geometric means算术和几何平均值variance and standard deviation方差与标准差sum, product, log sum, sum of squared values和、积、对数、平方值和minimum, maximum, median, and percentil...原创 2019-08-08 17:09:18 · 7713 阅读 · 0 评论 -
Java Math3 Data Generation (数据生成)
文章目录简介随机向量简介英文中文Uniform Distribution均匀分布bivariate normal distribution二元正态分布org.apache.commons.math3.random 包中包含以下工具类:生成随机数值数据生成随机向量生成随机字符串生成安全的随机序列生成随机样本或排列分析输入文件中值的分布情况,并生成...原创 2019-08-09 15:30:20 · 1875 阅读 · 0 评论 -
Java Math3 Linear Algebra (线性代数)
文章目录1、基础知识2、Real matrices:实矩阵3、Real vectors:实向量4、Solving linear systems:线性系统求解1、基础知识线性代数是数学的一个分支,它的研究对象是向量,向量空间(或称线性空间),线性变换和有限维的线性方程组。线性(linear)指量与量之间按比例、成直线的关系,在数学上可以理解为一阶导数为常数的函数。非线性(non-lin...原创 2019-08-10 10:02:09 · 3213 阅读 · 1 评论 -
Java Math3 Probability Distributions(概率分布)
术语英文中文probability density function概率密度函数probability mass function概率累积函数常见的概率分布类型公式正态分布正态分布,也称为高斯分布,若随机变量X服从一个数学期望为μ、方差为σ2σ^2σ2的正态分布,记为N(μ,σ2)N(μ,σ^2)N(μ,σ2)。其概率密度函数为正态分...原创 2019-08-10 19:02:53 · 6558 阅读 · 0 评论 -
Java 应用读取 jar 包中的文件
文章目录1、jar 包中的文件是资源2、使用 ClassLoader 来加载资源3、使用 Spring Resource 工具1、jar 包中的文件是资源jar 包是一个单独的文件而非文件夹,绝对不可能通过 “file:/e:/…/resource /res.txt” 这种形式的文件 URL 来定位 res.txt。即使是相对路径,也无法定位到 jar 文件内的 txt 文件。File f...原创 2019-04-12 18:01:32 · 7035 阅读 · 1 评论 -
JDBC,JPA 与 ORM
The technical objective of this work is to provide an object/relational mapping facility for the Java application developer using a Java domain model to manage a relational database.顾名思义,JPA 就是 Jav...原创 2019-03-28 16:39:24 · 1109 阅读 · 1 评论 -
Java 修改(配置)文本文件中特定行,正则表达式用法
使用 Java 程序来处理文本文件时,往往没有脚本语言方便,比如 Perl。开发时,碰到这样的需求: 更改配置文件中的某个主机的ip信息;这种情况下,需要读取该配置文件,并逐行匹配每一行的内容,当匹配到所要修改的字段时,修改这一样的内容。可以通过以下代码来完成: try { Pattern pattern = P原创 2016-06-14 13:29:27 · 3222 阅读 · 0 评论 -
编程规范——Java注释样式规范与模板
作为一个程序员,好的编程习惯是走向卓越的必要条件,好的注释,可以极大的增强代码的可读性,同时能让代码优雅美观,很多开源软件的代码风格均可借鉴。另外,java注释,可生成对应的doc文件,养成好的注释习惯,就能够生成规范的开发文档!1 类(接口)注释/*** 类的描述* @author Administrator* @Time 2012-11-2014:49:01**/public cla原创 2017-06-25 18:03:21 · 2360 阅读 · 0 评论 -
maven 配置 jdk 报“not a valid home” error
错误原因:通过 exe 安装 JDK 时,安装完 JDK 后,安装程序会自动跳出 jre 的安装页面,默认是安装在与 JDK 同级目录下,决不能安装在 JDK 目录内,否则就会报错!另外对于 java 加载并使用 dll 时,如果只有 32bit dll,那么有两种方式可以加载成功:重新在64位环境上编译 dll;使用 32位 jre 去加载 dll;原创 2018-03-07 17:41:39 · 3500 阅读 · 0 评论 -
VS code + Java 配置与使用
1 vs code也是刚刚接触 vs code,但是一见钟情。最近在试着使用 nim language,推荐用 vs code,就试用了一下,然后一发不可收拾。于是有了一个大胆的想法,干脆全部转到 vs code 上来吧,现在的情况是什么呢?前段用 webstorm/sublime,java 用 idea,python 用 PyCharm, ruby 用 RubyMine, c# 用 vs...原创 2018-05-13 12:36:55 · 207169 阅读 · 36 评论 -
【数据库】LDAP 的概念与 Spring LDAP 框架使用
1 ldap 是什么https://www.cnblogs.com/yjd_hycf_space/p/7994597.htmlldap: Lightweight Directory Access Protocol,也就是轻量目录访问协议。协议规范对应的 RFC 文档可以在 https://www.rfc-editor.org/ 或者 http://www.ldapman.org/ 中查找。...原创 2018-05-15 14:03:20 · 4435 阅读 · 5 评论 -
【Java 技术体系】Java 程序员需要熟知的、重要的 Java 技术规范
Web 技术Java Date与Time API ( JSR 310)Java Servlet 3.0 (JSR 315)Java API for RESTful Web Services (JAX-RS) 1.1 (JSR 311)Java API for XML-Based Web Services (JAX-WS) 2.2 (JSR 224)Java Architecture f...原创 2018-10-18 10:54:33 · 378 阅读 · 0 评论 -
Java 函数式编程的概念与实践
文章目录1. 命令式编程2. 声明式编程3. 函数式编程4. Built-in 函数接口参考https://developer.ibm.com/articles/j-java8idioms1/https://developer.ibm.com/articles/j-java8idioms7/1. 命令式编程大部分程序员更习惯命令式(imperative)的编程风格,既要告诉程序做什么,也...原创 2018-12-13 16:54:34 · 330 阅读 · 0 评论 -
Java 语言中的嵌入类,内部类,局部类,匿名类
文章目录1. 嵌入类,内部类 ,外部类2. 变量的可见性3. 局部类4. 匿名类5. 避免内部类的序列化在代码中使用嵌入类,能增强代码的封装性和可读性,让代码更简洁,有效。1. 嵌入类,内部类 ,外部类嵌入类在 Java 中,允许在一个类中定义另一个类,称之为嵌入类,其中 non-static 嵌入类又称为内部类(inner class)。外部类也可以成为包裹类。class Oute...原创 2018-12-12 11:10:33 · 884 阅读 · 0 评论 -
Java 数组初始化的多种方式
文章目录1 数组定义与初始化基本方式2 Array 工具类3 Stream 方式4 Arrays1 数组定义与初始化基本方式数组定义的两种基本方式:int[][] a1;int a2[][];与C、C++不同,Java在定义数组时并不为数组元素分配内存空间。内存空间在数组初始化时分配:int[][] a1 = new int[2][3];int a2[][] = new int[...原创 2019-01-11 12:08:39 · 1634 阅读 · 0 评论 -
Maven 配置使用及常用插件说明
assembly插件实现自定义打包http://maven.apache.org/plugins/maven-assembly-plugin/index.htmlhttps://blog.csdn.net/defonds/article/details/43233131pluginfunctionmaven-jar-pluginmaven 默认打包插件,用来创建 pro...原创 2019-01-07 17:26:37 · 683 阅读 · 0 评论 -
Maven 插件(plugin)开发示例
文章目录术语1 创建 Plugin 项目2 生成的 Mojo 类3 执行参考资料http://maven.apache.org/plugin-developers/index.html术语mojo:Maven plain Old Java Object,本质上就是一个可被 Maven 执行的 Java 对象,一个 Maven plugin 可包含一个或多个 mojos,一个 mojo 对应...原创 2019-01-18 18:01:54 · 995 阅读 · 0 评论 -
Java 8 使用 Stream,Collector,Collectors 编程
文章目录1、Stream2、CollectorReductionCollect3、Collectors自定义 Collector参考资料https://developer.ibm.com/articles/j-java-streams-2-brian-goetz/https://developer.ibm.com/articles/j-java-streams-1-brian-goetz/...原创 2019-01-14 17:22:20 · 1869 阅读 · 0 评论 -
JUnit5 + JMockit 知识整理
JUnit5https://junit.org/junit5/基本概念JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit VintageJUnit Platform: JUnit5 框架,复杂启动并加载运行 Test Cases;JUnit Jupiter: JUnit5 Test Case 开发模型与接口;JUnit Vintage:...原创 2019-01-22 15:15:47 · 3805 阅读 · 7 评论 -
Java 多种 List 循环方式的效率测试
文章目录1 Java 中列表循环的方式2 测试 size = 10 (w)2 测试 size = 1000 (w)1 Java 中列表循环的方式方式 1: forList&amp;lt;Integer&amp;gt; l = Arrays.asList(1,2,3,4,5,6,7);int sum = 0;for (int i : list) { sum += i;}方式 2: for i...原创 2019-02-28 11:11:58 · 558 阅读 · 0 评论 -
Spring 应用中的 Environment,Configuration 与 Resource 详解
概念1、软件系统与环境所谓的 环境,其本质上是一组信息,对于软件系统来说,这类信息 由外到内 单向传递,用来影响软件的行为模式。软件系统在生命周期的不同阶段(比如 开发调试、测试、生产等),应该有着不同的行为模式,软件系统从其运行环境中获取信息,来识别其所处的阶段,然后呈现不同的行为逻辑。EnviromentSpring 应用的运行环境由 Environment 对象来表示,在设计上,环...原创 2019-03-26 13:07:15 · 3494 阅读 · 0 评论 -
Spring RestTemplate 发送 HTTP 请求的性能测试
文章目录1、测试2、wireshark 数据流1、测试测试环境:win7 个人电脑;Server 是 SpringBoot web server;client 端代码(默认为长连接):RestTemplate rest = new RestTemplate();for (int i = 0; i < 1000;i++){ rest.postForObject("http:...原创 2019-04-01 19:45:35 · 4624 阅读 · 0 评论 -
vmware Vim25 在线程池中造成(ThreadLocal)内存泄露
公司软件系统升级 VMware vSphere Vim25 api 后出现严重的内存泄露。原创 2016-06-13 13:21:27 · 1745 阅读 · 0 评论