![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
文章平均质量分 50
小布2025
热爱未知,比如清晨和你
展开
-
EasyExcel3.0读(日期、数字或者自定义格式转换)
EasyExcel原创 2023-09-06 15:04:52 · 1551 阅读 · 0 评论 -
Junit单元测试不支持多线程测试
Junit单元测试不支持多线程测试原创 2022-07-13 11:32:21 · 302 阅读 · 0 评论 -
JMH基准测试
验证log使用占位符相对于String 字符串的拼接可以有效提升性能。测试代码package com.xiaobu.JMH;import org.openjdk.jmh.annotations.*;import org.openjdk.jmh.results.format.ResultFormatType;import org.openjdk.jmh.runner.Runner;import org.openjdk.jmh.runner.RunnerException;import org.原创 2021-09-22 17:29:40 · 221 阅读 · 0 评论 -
反射的使用
package com.xiaobu.test;import lombok.Data;import lombok.SneakyThrows;import java.io.Serializable;import java.lang.reflect.Field;/** * @author tanhongwei * @version JDK1.8.0_171 * @date on 2021/5/28 9:13 */public class ReflectTest2 { @Sn原创 2021-06-15 19:09:40 · 115 阅读 · 0 评论 -
记录一下把mapper.xml文件放在java的坑
把mapper.xml文件放入java文件中 e一、需要在pom文件指定resource<build> <resources> <resource> <!-- xml放在java目录下--> <directory>src/main/java</directory> <includes> <include>*原创 2021-06-11 17:19:56 · 2078 阅读 · 0 评论 -
JAVA乱码问题——URL中的+,空格,/,?,%,#,&,= 及转义处理
解决办法:将这些字符转化成服务器可以识别的字符,对应关系如下:下表中列出了一些URL特殊符号及编码+ URL 中+号表示空格 %2B 空格 URL中的空格可以用+号或者编码 %20 / 分隔目录和子目录 %2F ? 分隔实际的URL和参数 %3F % 指定特殊字符 %25 # 表示书签 %23...原创 2018-11-02 12:40:19 · 6645 阅读 · 0 评论 -
Maven-dependencyManagement的使用
父 pom <dependencyManagement> <dependencies> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47&l原创 2021-01-07 17:21:56 · 73 阅读 · 0 评论 -
记录ajax 发送json数据时引发的问题
提交方法 function doSave(){ var type= $("#type").val(); var qrcode= $("#qrcode").val(); var code= $("#code").val(); if(type==null||type===''){ alert("型号不能为空"); return ; } if(qrco原创 2021-01-05 17:23:07 · 2182 阅读 · 0 评论 -
JAVA多线程插入MYSQL数据库
package com.xiaobu.base.util;import com.google.common.util.concurrent.ThreadFactoryBuilder;import lombok.extern.slf4j.Slf4j;import java.sql.Connection;import java.sql.PreparedStatement;import java.util.concurrent.*;import java.util.concurrent.atomi原创 2020-12-11 11:10:18 · 1732 阅读 · 0 评论 -
JDBC多线程插入大量数据.md
package com.xiaobu.base.util;import com.google.common.util.concurrent.ThreadFactoryBuilder;import lombok.extern.slf4j.Slf4j;import java.sql.Connection;import java.sql.PreparedStatement;import java.util.concurrent.*;import java.util.concurrent.atomi原创 2020-12-08 11:25:18 · 687 阅读 · 0 评论 -
请求https跳过证书认证
package com.hans.common.util;import javax.net.ssl.*;import java.io.*;import java.net.HttpURLConnection;import java.net.URL;import java.security.cert.X509Certificate;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2020/12/3 17:17 * @des原创 2020-12-04 13:54:14 · 2081 阅读 · 0 评论 -
Java实体映射工具 MapStruct的简单应用
MapStruct(https://mapstruct.org/ )是一种代码生成器,它极大地简化了基于”约定优于配置”方法的Java bean类型之间映射的实现。生成的映射代码使用纯方法调用,因此快速、类型安全且易于理解。一、pom.xml的maven 依赖 <properties> <java.version>1.8</java.version> </properties><dependency> .原创 2020-09-29 11:02:11 · 320 阅读 · 0 评论 -
Lombok---@EqualsAndHashCode(callSuper = true)的使用
package com.xiaobu.entity;import lombok.Data;import java.io.Serializable;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2020/9/1 9:24 * @description */@Datapublic class Father implements Serializable { private static final long原创 2020-09-02 11:01:53 · 15028 阅读 · 0 评论 -
记录切换openjdk遇到的一个坑
卸载原先的oracle jdk 并配置open jdk的环境变量执行 java -version 命令时提示:Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'Error: could not find java.dllError: Could not find Java SE Runtime Environment.解决方法:Path系统环境变量中,把%JAVA_HOME%\bin调整到最前面参考原创 2020-08-18 17:24:36 · 666 阅读 · 1 评论 -
Java复制文件的4种方式
使用FileStreams复制private static void copyFileUsingFileStreams(File source, File dest) throws IOException { InputStream input = null; OutputStream output = null; try { input = new FileInputStream(source); .原创 2020-08-04 14:08:25 · 210 阅读 · 0 评论 -
Gennerate Unique 10 digit ID
package com.xiaobu.base.util;import lombok.extern.slf4j.Slf4j;import java.util.concurrent.atomic.AtomicReference;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2020/6/22 10:39 * @description V1.0 生成10位的唯一数字码 */@Slf4jpublic class Uni原创 2020-07-07 10:30:05 · 955 阅读 · 1 评论 -
求一个数的平方根
package com.xiaobu.leetcode;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2019/10/23 16:51 * @description 求一个数的平方根 */public class GetTheSqrtOfNumber { public static void main(String[] args) { int result= getMySqrt(99);原创 2020-05-13 10:29:54 · 378 阅读 · 0 评论 -
3的次幂
package com.xiaobu.leetcode;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2019/10/23 16:51 * @description 判断一个整数是否为3的次幂 还可以用循环、递归实现 */public class CheckPowerOfThree { public static boolean checkIsPowerOfThreeByEazyWay(int n) {原创 2020-05-13 10:28:47 · 743 阅读 · 0 评论 -
2的次幂
package com.xiaobu.leetcode;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2019/10/23 16:51 * @description 判断一个整数是否为2的次幂 */public class CheckPowerOfTwo { public static boolean isTwoPower(int n){ if(n<=0){ return原创 2020-05-13 10:27:59 · 253 阅读 · 0 评论 -
查找出一个字符串不重复字符的最大长度
package com.xiaobu.leetcode;import com.xiaobu.base.util.StringUtil;import java.util.HashMap;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2020/3/27 14:38 * @description 查找出一个字符串不重复字符的最大长度 * https://segmentfault.com/a/1190000016216003原创 2020-05-13 10:22:26 · 626 阅读 · 0 评论 -
list复制 浅拷贝和深拷贝
浅拷贝list A浅拷贝给list B,由于进行的是浅拷贝,所以直接将A的内容复制给了B,java中相同内容的数组指向同一地址,即进行浅拷贝后A与B指向同一地址。造成的后果就是,改变B的同时也会改变A,因为改变B就是改变B所指向地址的内容,由于A也指向同一地址,所以A与B一起改变。深拷贝深拷贝就是将A复制给B的同时,给B创建新的地址,再将地址A的内容传递到地址B。ListA与List...原创 2020-05-08 14:17:42 · 449 阅读 · 0 评论 -
常用的集合之间的转换
package com.xiaobu.demo;import java.util.*;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2019/4/23 9:34 * @description V1.0 */public class CollectionDemo { public static void ...原创 2020-05-08 14:14:15 · 899 阅读 · 0 评论 -
POI生成excel并设置过滤范围
package com.xiaobu.poi;import org.apache.poi.ss.usermodel.*;import org.apache.poi.ss.util.CellRangeAddress;import org.apache.poi.ss.util.CellReference;import org.apache.poi.xssf.streaming.SXSSFWo...原创 2020-04-23 14:40:55 · 1302 阅读 · 1 评论 -
文件下载
方法一@RequestMapping("download") public ResponseEntity<byte[]> download(String filePath, int id) throws IOException { client = dcf.createClient(WSDL_URL); FileDecryptVo fileDe...原创 2020-03-13 16:03:04 · 324 阅读 · 0 评论 -
FastJson中JSONPath的应用
JSONPath是FastJson的一个类 先解析JSON数据为JSONObject,然后就能直接使用JSONPath了。 (fastjson在1.2.0之后就支持jsonpath了)package com.xiaobu.note.json.fastjson;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSON...原创 2020-03-13 10:09:53 · 820 阅读 · 0 评论 -
轻松读懂WSDL文件
元素定义portTypeweb service 执行的操作messageweb service 使用的消息typesweb service 使用的数据类型bindingweb service 使用的通信协议portType 是最重要的 WSDL 元素。portType 元素它可描述一个 web service、可被执行的操作,以及相关的消息。...原创 2020-03-05 16:04:40 · 2575 阅读 · 0 评论 -
读写文件效率测试
写文件package com.xiaobu.note.daily.autoCloseAble;import lombok.SneakyThrows;import org.springframework.util.StopWatch;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileO...原创 2020-01-15 10:10:28 · 325 阅读 · 0 评论 -
基于JMH检验多种生成随机数方法的效率
maven依赖 <!-- jmh --> <dependency> <groupId>org.openjdk.jmh</groupId> <artifactId>jmh-core</artifactId> <version>1...原创 2020-01-07 15:52:03 · 348 阅读 · 0 评论 -
随机字符串
引入依赖<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> ...原创 2019-11-25 16:56:15 · 141 阅读 · 0 评论 -
SpringBoot | Mybatis通用mapper的分页查询
方式一 @Test public void findByPageHleper() { DogInfo dogInfo = new DogInfo(); dogInfo.setDogId("7"); Example example = new Example(DogInfo.class); Example.Criteria...原创 2019-07-10 17:58:59 · 2537 阅读 · 0 评论 -
类的加载过程
类加载过程加载验证准备准备阶段是正式为类变量分配内存并设置类变量初始值的阶段,这些内存都将在方法区中分配。解析解析阶段是虚拟机将常量池内的符号引用替换为直接引用的过程,也就是得到类或者字段、方法在内存中的指针或者偏移量。初始化真正执行类中定义的 Java 程序代码(字节码),初始化阶段是执行类构造器 ()方法的过程。示例:package com.xia...原创 2019-07-11 16:17:28 · 154 阅读 · 0 评论 -
Java SE 7 更好地管理资源:不仅仅是语法糖 try-with-resources
package com.xiaobu.test.daily.autoCloseAble;import java.io.DataOutputStream;import java.io.FileOutputStream;import java.io.IOException;/** * @author xiaobu * @version JDK1.8.0_171 * @date on ...原创 2019-08-01 10:12:20 · 170 阅读 · 0 评论 -
Spring计时器StopWatch的使用
spring提供的计时器StopWatch对于秒、毫秒为单位方便计时的程序,尤其是单线程、顺序执行程序的时间特性的统计输出支持比较好。也就是说假如我们手里面有几个在顺序上前后执行的几个任务,而且我们比较关心几个任务分别执行的时间占用状况,希望能够形成一个不太复杂的日志输出,StopWatch提供了这样的功能。而且Spring的StopWatch基本上也就是仅仅为了这样的功能而实现。packa...原创 2019-09-24 10:11:24 · 1700 阅读 · 0 评论 -
Spring的BeanUtils的copyProperties方法使用注意事项
package com.demo;import lombok.Data;import org.springframework.beans.BeanUtils;import java.util.Arrays;import java.util.List;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2019/10...原创 2019-10-08 15:19:26 · 1950 阅读 · 0 评论 -
记录一次mybatis的模糊查询
一、直接拼接mysql数据库会报错,sqlserver支持select cat_id from ecs_category where cat_name LIKE '%' + #{catName} + '%';二、用concat函数select cat_id from ecs_category where cat_name LIKE concat('%',#{catName},...原创 2019-04-11 10:09:30 · 345 阅读 · 0 评论 -
使用IntelliJ IDEA2018创建Maven多模块项目
一、新建个父模块(不勾选archetype)二、然后删除src目录然后在这个新建个web-service模块 同样不需要勾选archetype (不需要删除src 要写逻辑代码)新建个web-app模块,这次需要勾选archetype(选择webapp选项)引入依赖(web-service)配置tomcat 启动项目,即可。...原创 2018-11-05 17:37:25 · 1174 阅读 · 0 评论 -
Arrays.asList()的使用
Arrays.asList()的使用Arrays.asList()将数组转换为集合后,底层其实还是数组,它返回的是Arrays的一个内部类,体现了适配器模式。传递的数组必须是对象数组,而不是基本类型。当传入一个原生数据类型数组时,Arrays.asList() 的真正得到的参数就不是数组中的元素,而是数组对象本身!此时List 的唯一元素就是这个数组使用集合的修改方法:add()、rem...原创 2019-07-03 10:56:52 · 829 阅读 · 0 评论 -
JAVA8 | 字符串替换
java8字符串替换http://commons.apache.org/proper/commons-lang/下的StringUtils.replace()效率明显高于jdk自带的replace()方法 /** * 功能描述:比自带的string替换要高效 * @author xiaobu * @date 2019/7/3 9:34 * @para...原创 2019-07-03 09:48:02 · 4644 阅读 · 0 评论 -
DateTimeFormatter时间工具类
package com.xiaobu.base.utils;import java.time.*;import java.time.format.DateTimeFormatter;import java.time.temporal.ChronoUnit;/** * @author xiaobu * @version JDK1.8.0_171 * @date on 2019/...原创 2019-01-28 17:52:40 · 16487 阅读 · 2 评论 -
instanceof和isInstance区别详解
对obj.instanceof(class),在编译时编译器需要知道类的具体类型对class.isInstance(obj),编译器在运行时才进行类型检查,故可用于反射,泛型中原创 2019-01-08 11:17:26 · 840 阅读 · 0 评论