
JAVA
时光不语,静待花开
既然选择了远方,便只顾风雨兼程
展开
-
java.lang.ClassNotFoundException 和 A JNI error has occurred,please check your installation ……
解决:原因编译部署的时候没有将依赖全部导入,因为本使用的是mvn archetype:generate 这种maven生成方式,里面scope好多是provided的,这样导致依赖在编译的时候无法全部加载,调试的时候需要将这个勾选,否则会报错!...原创 2021-10-18 18:53:53 · 609 阅读 · 0 评论 -
Java学习之嵌套循环
一、技巧1、外层循环控制行数,内层循环控制列数//*//**//***//****//*****//****** for (int i =1;i <=6;i++){//行数 for (int j=1;j <=i;j++){//列数 System.out.print("*"); ...原创 2021-07-14 08:42:17 · 248 阅读 · 0 评论 -
JAVA生成MD5的方法
public class MD5 { public static void main(String[] args) { String md5 = getMD5("210534"); System.out.println(md5); System.out.println(md5.length()); String encry...原创 2021-07-14 08:41:52 · 1072 阅读 · 0 评论 -
使用java中replaceAll方法替换字符串中的反斜杠
一、正确代码public class TestReplaceAll { public static void main(String[] args) { String loginResInfo ="{\"GRAcntNo\":\"4132404\",\"DWAcntNo\":\"123258\",\"MobileNo\":\" \"}"; Str...原创 2021-07-14 08:41:29 · 490 阅读 · 0 评论 -
简析Java中内存泄漏与内存溢出
内存泄漏(memory leak )与 内存溢出 (out of memory)内存泄露 :是指程序在申请内存后,无法释放已申请的内存空间就造成了内存泄漏,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。我们知道了内存泄漏的原因而内存溢出则有可能是因为我们我们多次内存泄漏堆积后的后果则变成了内存溢出内存溢出: 指程序申请内存时,没有足够的内存供申请者使用,或者说,给...转载 2021-07-08 15:21:56 · 264 阅读 · 0 评论 -
使用@JsonProperty将多个类似数据源写在一起
一、需求原来已经有了自爬取的APP列表解析信息,现在增加一个渠道的APP列表,字段意思一样,但是字段名不一样。为了方便数据存储不变和下游部门代码不变,决定存储在一起,这就需要将字段映射成一样的。二、实现1、原来代码package com.credithc.sea.entity.deviceinfo;import com.fasterxml.jackson.annotation...原创 2020-01-17 16:30:30 · 2578 阅读 · 0 评论 -
java 中什么时候用 + 拼接字符串
目录1、什么时候不能用通过循环和多个表达式完成一个字符串拼接操作。频繁创建StringBuilder影响性能。2、什么时候用直接将三个字面量的字符串拼接成一个字符串。1、什么时候不能用通过循环和多个表达式完成一个字符串拼接操作。频繁创建StringBuilder影响性能。private void test1() { String www = "w...转载 2019-12-24 09:59:02 · 668 阅读 · 0 评论 -
JAVA工程师面试常见问题集锦
JAVA工程师面试常见问题集锦集锦一: 一、面试题基础总结1、JVM结构原理、GC工作机制详解答:具体参照:JVM结构、GC工作机制详解 ,说到GC,记住两点:1、GC是负责回收所有无任何引用对象的内存空间。 注意:垃圾回收回收的是无任何引用的对象占据的内存空间而不是对象本身,2、GC回收机制的两种算法,a、引用计数法 b、可达性分析算法(这里的可达性,大家可以看基...转载 2019-11-26 21:42:34 · 365 阅读 · 0 评论 -
【避坑】Java 两个对象的比较
问题:Java中两个对象比较是否相等正确方案:"身份证".equals(condition)注:1)condition.equals("身份证"),这种形式时,当condition为null时,会报空指针异常;2)condition=="身份证",这种形式==,比较的不是对象,而是对象的内存地址...原创 2019-07-31 17:20:00 · 637 阅读 · 1 评论 -
Java 卫语气
原则:if-else语句,使用“卫语句 ”代替可以减少层级嵌套。卫语句:把复杂的条件表达式拆分成多个条件表达式,比如一个很复杂的表达式,嵌套了好几层的if - then-else语句,转换为多个if语句,实现它的逻辑,这多条的if语句就是卫语句.作用:卫语句可以把我们的视线从多层嵌套的异常处理中解放出来,集中精力处理真正的业务代码,且能够使得代码结构更为清晰可读。把核...转载 2019-08-10 09:01:17 · 610 阅读 · 0 评论 -
Java 全局变量与局部变量
一、初始化全局变量和局部变量都是需要初始化。成员变量(全局变量): 存放于堆中; JVM在分配内存时将整块区域置为零即完成了初始化,方便快捷。局部变量: 运行时被分配于栈中,量大,生命周期短; java明文规定局部变量必须初始化。例子:局部变量s2将报错...原创 2019-08-22 10:58:27 · 251 阅读 · 0 评论 -
JVM内存模型看这个就够了
内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和应用程序的实时运行JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行不同的JVM对于内存的划分方式和管理机制存在着部分差异结合JVM虚拟机规范,来探讨经典的JVM内存布局1 Program Counter Register (程序计数寄存器)Register 的命名源...转载 2019-08-22 14:30:19 · 189 阅读 · 0 评论 -
Spring AOP概念理解 (通俗易懂)【转】
1.我所知道的aop 初看aop,上来就是一大堆术语,而且还有个拉风的名字,面向切面编程,都说是OOP的一种有益补充等等。一下子让你不知所措,心想着:怪不得很多人都和我说aop多难多难。当我看进去以后,我才发现:它就是一些java基础上的朴实无华的应用,包括ioc,包括许许多多这样的名词,都是万变不离其宗而已。 2.为什么用aop 1就是为了方便,看一个国外很有名的大师说,编程...转载 2019-08-27 16:08:34 · 237 阅读 · 0 评论 -
浅谈IOC--说清楚IOC是什么
1.IOC的理论背景2.什么是IOC3.IOC也叫依赖注入(DI)4.IOC的优缺点5.IOC容器的技术剖析6.IOC容器的一些产品7.参考博文本文旨在用语言(非代码)说清楚IOC到底是什么,没有什么高深的技术,园中的老牛、大虾们看到这里可以绕行了,以免浪费您宝贵的时间。IOC这个东西DebugLZQ早就想写了,但是出于对文章权威性的考虑(不能误人子弟- -!),本文主...转载 2019-08-28 15:25:04 · 179 阅读 · 0 评论 -
寻找字符串中32位字母+数字的组合串【记一次Java正则匹配的作业】
需求:找出以下字符串中UUID的值,即32位字母+数字组合的串String str = "{u'account': u'18630699285', u'uuid': '6b60a6a3e84b4281951bcabd36a5edc6', u'type': u'YYS', u'callback': u'http://10.150.27.89:9292/hw-service/credit/se...原创 2019-08-29 10:31:13 · 4527 阅读 · 0 评论 -
idea+maven + 多环境切换问题
1:选择环境2:相应环境的配置文件3:当不选择1时,默认使用的环境4:当选择了1中的环境中,配置文件会进行覆盖操作,切换到制定的环境,在target/class下能看到5:每次切换环境要记得clean、compile、install注意:无论选择哪一种环境,当你在代码中点击这个,都会跳转到默认环境上,这个不用管。...原创 2019-09-16 19:46:34 · 1318 阅读 · 1 评论 -
java.util.ConcurrentModificationException 并发冲突
原创 2019-09-18 19:55:38 · 213 阅读 · 0 评论 -
用 List.contains(Object obj)判断是否包含指定对象,避坑实践总结
一、需求往ES中存储通讯录信息,增量操作。思路:每一次插入前,先查询ES中的数据,看看是否有记录:没有记录则直接插入;有记录则遍历记录,看看每一个record是否包含在要新增的List里面,不在则add进去。二、实现1、最初方式及问题1)bean类package com.xxx.cash.entity.deviceinfo;import com.fasterxml.j...原创 2019-09-18 21:08:20 · 5299 阅读 · 0 评论 -
str.trim() 解决字符串全角空格的问题
trim()作用:去掉字符串中首尾的半角空格使用:str.trim() public static void main(String[] args) { String str = " data "; String trim = str.trim();//去掉首尾空格 System.out.println("原始字符串长度:"+...原创 2019-10-10 16:25:43 · 2500 阅读 · 0 评论 -
Java 空字符串和null的区别【实践】
1、空字符串""是一个空字符串,长度为0且占内存的,可以使用Object对象中的方法。如"".toString()。new String() 创建一个字符串对象,默认值为""。检查一个字符串是否为空:if (str.length() == 0)//或if (str.equals(""))2、nullnull是空引用,表示一个对象的值,没有分配内存。字符串为null,调...转载 2019-10-10 17:41:52 · 1873 阅读 · 0 评论 -
isEmpty 和 isBlank的区别--判断字符串是否为空
isEmpty(): public static boolean isEmpty(CharSequence cs) { return cs == null || cs.length() == 0; } public static boolean isNotEmpty(CharSequence cs) { return !StringU...原创 2019-10-11 16:16:13 · 281 阅读 · 0 评论 -
Java学习之选择结构 【switch case】
一、语法switch(表达式){ case 值1: //执行语句 break; case 值2; //执行语句 break; ... default : //执行语句 break; }说明:①表达式的结果类型只能为:byte,short,i...原创 2019-05-01 09:03:16 · 426 阅读 · 0 评论 -
字符串截取日期:“全额汇缴 2017年10月至2017年12月”,注意字符串里面空格的影响
String payDesc = "全额汇缴 2017年10月至2017年12月"; //方法一: if (payDesc.contains(" ")) { payDesc = payDesc.replaceAll(" ", "...原创 2019-06-25 19:28:59 · 209 阅读 · 0 评论 -
Java String类API收纳(持续更新)
1、join源码: /** * @see java.util.StringJoiner * @since 1.8 */ public static String join(CharSequence delimiter, CharSequence... elements) { Objects.requireNonNull(del...原创 2019-06-21 14:51:26 · 273 阅读 · 0 评论 -
【转】爬虫最终杀手锏 --- PhantomJS 详解(附案例)
一 . 认识PhantomJS1.PhantomJS:无界面的浏览器Selenium:可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生。Selenium 自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用。但是我们有时候需要让它内嵌在代码中运行,所以我们可以用一个叫PhantomJS的工具...转载 2019-05-20 16:51:37 · 507 阅读 · 0 评论 -
【面试题】Math 的 floor,round 和 ceil 方法比较
一、定义1 ceil() “天花板”,向上取最接近的整数。 返回大于等于( >= )给定参数的的最小整数,类型为双精度浮点型。 2 floor()“地板”,向下取最接近的整数。 返回小于等于(<=)给定参数的最大整数 。 3 rint() 返回与参数最接近的整数。返回类型为double。注:如果上下都接近,取偶数。 4 ...原创 2019-05-09 20:09:25 · 2329 阅读 · 0 评论 -
Java学习之循环结构【do while】
一、循环的四要素①初始化条件②循环条件③循环体④迭代条件二、for的循环结构①;do{③;④;}while(②)说明:1、do while 循环体至少执行一次;2、优先使用for和while,do while较少使用3、当循环条件不成立时,do while与其他方式才有区别(至少执行一次);当条件成立时,结果无差别。...原创 2019-05-01 14:54:02 · 348 阅读 · 0 评论 -
Java学习之循环结构【while】
一、while循环的四要素①初始化条件②循环条件③循环体④迭代条件二、while的循环结构①;while(②){③;④;}说明:1、while循环一定要记得写④迭代条件,不然会死循环。2、for循环与while循环可以相互转换。3、while循环的i,除了while循环外还可以调用。for循环的i只能在循环内使用。4、结束循环体的情况:...原创 2019-05-01 13:20:14 · 445 阅读 · 0 评论 -
Java学习之循环结构【for】
一、for循环的四要素①初始化条件②循环条件③循环体④迭代条件永远为true:for(;;)二、for的循环结构for(①;②;④){③;}三、应用1、求两个数的最大公约数和最小公约数 //输入两个数m,n,求其最大公约数和最小公倍数 //12,20,最大公约数为4,最小公倍数为60 //关键点:bre...原创 2019-05-01 13:02:59 · 271 阅读 · 0 评论 -
JAVA实现前三天、前三个月、前三年的代码
JAVA实现前三天、前三个月、前三年的代码一、代码public class JavaForDate { public static void main(String[] args) { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd"); Calendar calendar = C...原创 2019-04-24 16:34:25 · 1937 阅读 · 0 评论 -
java中string类型字符串转换成map,方便取值
String array_str = "{\"24\":\"公务员补收\",\"25\":\"特殊手工补收\",\"10\":\"正常应缴\",\"32\":\"一次性清算\",\"20\":\"补收\",\"21\":\"离休人员补收\"}";方法一: Gson gson = new Gson(); Map<String, Object> ...转载 2019-04-29 10:42:29 · 61741 阅读 · 1 评论 -
Java读取js文件:ScriptEngineManager,包含测试和项目在用代码
Java读取js文件:ScriptEngineManagerimport javax.script.Invocable;import javax.script.ScriptEngine;import javax.script.ScriptEngineManager;import javax.script.ScriptException;import java.io.File;impor...转载 2019-04-24 17:15:50 · 2666 阅读 · 0 评论 -
DecimalFormat-java数字格式化类应用
一、简介DecimalFormat是NumberFormat的一个具体子类,用于格式化十进制数字。二、代码 public static void main(String[] args) { DecimalFormat decimalFormat = new DecimalFormat(".###"); double num = 3.1415...转载 2019-05-15 14:19:45 · 627 阅读 · 0 评论 -
Java生成MD5的方法
一、代码public class MD5 { public static void main(String[] args) { String md5 = getMD5("210534"); System.out.println(md5); System.out.println(md5.length()); String...转载 2019-05-22 14:16:38 · 1228 阅读 · 0 评论 -
Java 中Map map = new HashMap()与HashMap map = new HashMap()区别
Map 是接口 不能实例化的 ,只能使用其实现类来实例化,即Map map=new Map();是错误的HashMap Map接口的实现类用接口定义比较灵活以后少改动,是OOP的好习惯。定义的时候用MAP实例化为HashMap,万一以后要改成Hashtable,产生的改动少。Map map=new HashMap(); 就是将map实例化成一个hashMap。这样做的好处是调用者...转载 2019-06-17 11:06:23 · 566 阅读 · 0 评论 -
【转】Java中斜杠和反斜杠的替换
Java:在不同的系统中,路径的分隔符不同,故需要做出判断,并切换分隔符;String类中replaceAll方法如下:String.replaceAll(String regex,String replacement),replaceAll() 方法要用 4 个反斜杠,表示一个反斜杠;1. java把字符串中的反斜杠(\)替换成双斜杠(\\)replaceAll里面用的是正...转载 2019-06-14 18:56:46 · 10849 阅读 · 0 评论 -
Java split截取需要注意分割字符与正则表达式的元字符的冲突
一、问题描述public class RegularExpression { public static void main(String[] args) { String str = "Test word:welcome to beijing.That .is*end."; String[] ss = str.split("."); ...原创 2019-06-14 18:39:06 · 553 阅读 · 0 评论 -
在一大段字符串中截取需要的额字符串方法:StringUtils.substringBetween()
import org.apache.commons.lang.StringUtils;import java.util.regex.Matcher;import java.util.regex.Pattern;public class RegularExpression { public static void main(String[] args) { //1、...原创 2019-06-14 14:28:24 · 6701 阅读 · 0 评论 -
Java MD5加密
/** * 密码MD5加密 * * @param * @param * @return */ private static final String MD5_32bit(String readyEncryptStr) throws NoSuchAlgorithmException { if (readyE...原创 2019-05-29 10:50:07 · 614 阅读 · 0 评论 -
网络请求中,中文字符的编解码实现:URLEncoder.encode()和URLDecoder.decode()
一、背景在开发中,在一次发送请求中,涉及到中文字符,需要编码发送。原因是http get请求不能传输中文参数问题。http请求是不接受中文参数的。形如:city=%E4%B8%8A%E6%B5%B7二、实现import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java....原创 2019-06-12 19:26:34 · 11605 阅读 · 0 评论