
java
Hc-Z
知道的越多,不知道的就越多
展开
-
Spring Boot和Spring Cloud 跨域设置失败
Spring Boot 跨域设置import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.CorsConfiguration;import org.springframework.web.cors.UrlBasedCorsConfigurationSource;im原创 2020-07-31 10:45:52 · 428 阅读 · 0 评论 -
看看下面的代码,你真的理解了包装类和自动装箱吗?
废话不多说,上代码public class Zms{ public static void main(String[] args) { Integer a = 1; Integer b = 2; Integer c = 3; Integer d = 3; Integer e = 321; I...原创 2020-04-05 16:31:17 · 283 阅读 · 0 评论 -
Java如何决定对象的生死及对象该如何逃脱?
垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象中哪些还“存活”,哪些已经“死去”。引用的分类Java将引用分为4种:强引用:指在程序代码之中普遍存在的引用赋值,即类似 “Object obj = new Object ()”这种引用关系。无论何种情况下,只要强引用关系存在,垃圾收集器就不会回收调被引用的对象。软引用:用来描述一些还有用,但非必须的对象。只要被软引用关联着...原创 2020-03-28 14:58:12 · 245 阅读 · 0 评论 -
深入理解JAVA虚拟机- Java内存区域与对象揭秘
此文是对《深入理解JAVA虚拟机》的一点总结,如果想要了解具体细节可以去看原书。运行时数据区域Java虚拟机在执行Java程序的过程中会把内存划分为若干个不同的数据区域。如下图所示:程序计数器程序计数器可以看作是当前线程所执行的字节码的行号指示器。在Java虚拟机的概念模型里,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,它是程序控制流的指示器,分支、循环...原创 2020-03-14 16:58:56 · 191 阅读 · 0 评论 -
【JAVA书单】-《JAVA多线程核心技术》-第六章 单列模式与多线程
此文是对《JAVA多线程编程核心技术》的一点总结,如果想要了解具体细节可以去看原书。第六章 单列模式与多线程我之前最经常使用的单列:public class MyObject { private volatile static MyObject myObject; private MyObject() {} //使用双检测来解决问题,既保证了不需要同步代码的异步执行...原创 2020-02-17 14:42:56 · 144 阅读 · 0 评论 -
【JAVA书单】-《JAVA多线程核心技术》-第四章 Lock的使用
此文是对《JAVA多线程编程核心技术》的一点总结,如果想要了解具体细节可以去看原书。第四章 Lock的使用lock和synchronized的区别用法:synchronized:在需要同步的对象中加入此控制,synchronized可以加在方法上,也可以加在特定代码块中,括号中表示需要锁的对象。lock:需要显示指定起始位置和终止位置。一般使用ReentrantLock类做为锁,多个...原创 2020-02-15 15:27:38 · 198 阅读 · 0 评论 -
【JAVA书单】-《JAVA多线程核心技术》-第三章 线程间通信
此文是对《JAVA多线程编程核心技术》的一点总结,如果想要了解具体细节可以去看原书。第三章 线程间通信使用wait/notify实现线程间的通信方法wait()的作用是使当前执行代码的线程进行等待,wait()方法是Object类的方法,该方法用来将当前线程置入“预执行队列”中,并且在wait()所在的代码行处停止执行,直到接到通知或中断为止。在调用wait()之前,线程必须获得该对象的对...原创 2020-02-13 16:12:11 · 171 阅读 · 0 评论 -
【JAVA书单】-《JAVA多线程核心技术》-第二章 对象及变量的并发访问
此文是对《JAVA多线程编程核心技术》的一点总结,如果想要了解具体细节可以去看原书。第二章 对象及变量的并发访问synchronized对象监视器为Object时的使用a)、synchorized修饰非静态方法时,synchorinzed获得的锁都是对象锁,而不是把一段代码或方法当作锁,哪个线程先执行synchronized方法,哪个线程就持有该方法所属对象的锁Lock,那么其他线程只能...原创 2020-02-12 17:00:25 · 218 阅读 · 0 评论 -
【JAVA书单】-《JAVA多线程核心技术》-第一章 多线程技能
此文是对《JAVA多线程编程核心技术》的一点总结,如果想要了解具体细节可以去看原书。第一章 多线程技能线程的启动实现多线程编程的方式主要有两种,一种是继承Thread类,另一种是实现Runnable接口。1.继承Thread类,并且重写run方法。public class MyThread extends Thread { public static void main(Strin...原创 2020-02-11 17:03:35 · 170 阅读 · 0 评论 -
JAVA8 把类似a=1;b=2;c=3的String类型数据转成map集合
数据源String str = "a=1;b=2;c=3";转换后格式String转换为Map{”a":"1", "b":"2", "c":"3"}实现方法在JAVA8之前我们可以使用以下的方法来实现public static Map<String, Object> transStringToMap(String mapString, String separator...原创 2020-01-20 17:10:41 · 3089 阅读 · 0 评论 -
JAVA Stream流有状态操作和无状态操作
JAVA Stream流有状态操作和无状态操作原创 2019-12-29 17:32:02 · 3084 阅读 · 0 评论 -
一次导入2w行的表格,并通过注解校验字段
背景最近项目中有一个需求,需要一次通过excel导入大量的数据。之前用的easypoi测试需要大约一小时才能完成,这样明显是不行的。深入了解之后,其实只需要将批式处理改为流式处理便可以解决解析慢的问题。综合考虑后选用了easyexcel这个框架。测试2W行的数据从导入到入库大约需要5s,大大加快了速度。 后续增加了HibernateValidator进行校验数据。代码web导入:@R...原创 2019-11-24 10:07:27 · 1136 阅读 · 0 评论 -
静态内部类
1、使用场景外部类与内部类有很强的联系,需要通过内部类的方式维持嵌套的可读性。内部类可以单独创建。内部类不依赖于外部类,外部类需要使用内部类,而内部类不需使用外部类(或者不合适持有外部类的强引用)。2、 问题为什么不直接使用两个类,而要使用内部类?1 维持两者之间密切的联系2 保持嵌套可读性@Datapublic class A { private String a; ...原创 2019-10-20 12:52:20 · 359 阅读 · 0 评论 -
Java对象转换工具类
public class ConvertUtils { private static Logger logger = LoggerFactory.getLogger(ConvertUtils.class); public static <T> T sourceToTarget(Object source, Class<T> target){ ...原创 2019-10-13 09:43:16 · 1001 阅读 · 0 评论 -
GSON的序列化问题-(子类于父类具有相同属性)
背景因为fastjson的安全漏洞问题,项目中不得不将fastjson更换。研究之后决定采用gson做序列化。场景因原序列化代码,用在reids中,重写了序列化方法,报序列化bug之后这也误导了我们一段时间。GSON序列化报错如下:“class XXX declares multiple JSON fields named XXX”,可以看出这是序列化字段时出现了错误,添加 trans...原创 2019-09-28 11:32:49 · 4270 阅读 · 3 评论 -
K8S使用configmap--部署Spring Boot
近期有一个项目需要部署在K8S平台中,且所有的配置不能写在配置文件或者代码之中。在了解K8S的configmap之后,决定使用configmap,来实现这个需求。具体的代码后续补pod中引用myMap第一种是环境变量或参数,configMap更新需要重新加载第二种是文件挂载,更新后很短时间内可以同步更新...原创 2019-09-21 10:37:59 · 1784 阅读 · 0 评论 -
K8S使用本地镜像发布pod
K8S使用本地镜像一定记得在各节点都需要上传镜像原创 2019-09-13 16:06:32 · 2772 阅读 · 0 评论 -
spring 跨域重复问题
最近在项目中发现了一个跨域问题。后台和前端都设置了跨域仍然报跨域后续把一个拦截器去除就好了?未知原因原创 2020-05-31 14:07:32 · 522 阅读 · 0 评论 -
poi读取Excel是公式,单元格处理成String
在导入含有公式的表格时,poi把表格的公式打印出来,这显然不是我想要的。if(cell.getCellType() == Cell.CELL_TYPE_FORMULA){ return cell.getCellFormula() ;把上面的代码改成如下 if(cell.getCellType() == Cell.CELL_TYPE_FORMUL...原创 2019-08-17 23:48:17 · 2448 阅读 · 4 评论 -
java笔试题目(2018)
java笔试题目(持续更新)最近实在不知道写什么内容,靠回忆写下一些点笔试题目,也方便以后回来看。1.collection 有哪些接口?collection和collections的区别? Collection是集合类的上级接口,继承与他有关的接口主要有List和Set Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全等操作2.用最有效原创 2017-10-27 10:27:21 · 543 阅读 · 0 评论 -
面向对象编程的3种关系:组合,委托和继承
软件设计模式中,有很多经典模式,今天从最基本的继承、组合、委托开始研究(Inheritance、Composition、Delegation)。一、继承(Inheritance)简单来说,继承就是在原有类A的基础上,新建一个类B,不过新建的类B是在A的基础上,继承父类(A)的属性以及方法。该模式是面相对象的基础。示例如下:#include &lt;iostream&gt;usin...转载 2018-07-24 17:26:50 · 2732 阅读 · 0 评论 -
Java之——Hash算法大全
实际工作过程中,要用到各种各样的Hash算法,今天就给大家带来一篇基于java实现的各类Hash算法,其他语言本质上是一样的,大家可以拿来做个参考,好了,不多说了,我们直接上代码转载请注明出处:http://blog.youkuaiyun.com/l1028386804/article/details/54573106package com.lyz.hash; /** * Hash算法大全<b...转载 2019-04-18 17:58:55 · 219 阅读 · 0 评论 -
spring boot项目加载不了mapper.xml
项目结构:在pom.xml中添加<build> <resources> <resource> <directory>src/main/java</directory> <includes> ...原创 2019-05-15 16:50:51 · 2234 阅读 · 0 评论 -
SpringBoot项目运行一段时间后自动关闭的问题
最近自己写的小项目发布到linux上总是运行一段时间后关闭,查看日志:Closing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@707194ba: startup date [Tue Jun 19 16:39:22 CST 2018]; root ...原创 2019-05-16 09:39:49 · 8767 阅读 · 0 评论 -
java面试题(2019)
1.Redis的数据结构有哪些?怎么使用的?String——字符串Hash——字典List——列表Set——集合Sorted Set——有序集合2.jvm的内存是如何划分的,各自的存储什么内容第一块:PC寄存器PC寄存器是用于存储每个线程下一步将执行的JVM指令,如该方法为native的,则PC寄存器中不存储任何信息。第二块:JVM栈JVM栈是线程私有的,每个线程创建的同...原创 2019-05-23 16:52:31 · 1916 阅读 · 0 评论 -
Linux执行sh脚本的方法(不需要权限)
直接使用bash 或sh 来执行bash shell脚本:复制代码 代码如下:cd /data/shellbash hello.sh或复制代码 代码如下:cd /data/shellsh hello.sh原创 2019-06-05 19:11:22 · 7671 阅读 · 0 评论 -
FastJSON将LIST转JSON之后有反斜杠
如果转成的JSON本身就带反斜杠,则对JSON进行操作。我碰见的问题是 转成的JSON本身不带反斜杠,但是作为key加人JSON时就有了反斜杠。解决方案:(先将LIST转成JSON字符串,再把JSON字符串改成JSON数组)JSONArray invalidParamsJson= JSONArray.parseArray(JSON.toJSONString(invalidParams));...原创 2019-06-01 09:12:56 · 4140 阅读 · 0 评论 -
Spring boot启动项目,@Autowired自动引入的对象为空原因总结
最近项目里出现一个错误,在我的service类里自动装载对象为空。这里记录一下可能的原因:1.注解没有扫描到,问题原因可能是springboot启动类没有放到最外层的包的根目录下面2.检查各类是否加了注解,包括@service,@repository 等等;(注意@Autowired放在service实现上,而不是接口类上面。)…总结一下,其实就是该对象没有被Spring 容器管理。比...原创 2019-06-14 22:15:38 · 3638 阅读 · 0 评论 -
Disconf引入的配置为空
最近在项目中自定义了数据源,数据源的各项配置都是从disconf拿到的然后项目启动之后,并不会报空指针异常,项目可以正常启动,但是一直报url为空,操作数据库失败。后面分析,Spring 在项目启动时,初始化了MysqlConfig,但是初始化的bean中属性为空。再找到Disconf类的初始化可以看到,Disconf的初始化说放在初始化bean之后的。原因搞清楚了就开始解决吧~!...原创 2019-06-21 10:57:57 · 382 阅读 · 0 评论 -
ConcurrentHashMap需要注意的点(size和mappingCount方法,并发扩容)
1.size()方法和mappingCount()方法的异同,两者计算是否准确?2.多线程环境下如何进行扩容?原创 2019-07-06 15:58:57 · 4343 阅读 · 0 评论 -
mysql-binlog-connector-java无法监听到日志的解决办法 (Trying to restore lost connection to localhost:3306)
本地代码public class BinlogServiceTest { public static void main(String[] args) throws IOException { BinaryLogClient client = new BinaryLogClient( "localhost", ...原创 2019-07-17 10:44:19 · 2548 阅读 · 2 评论 -
解决webMagic0.7.3 出现javax.net.ssl.SSLException: Received fatal alert: protocol_version的问题
原因不多分析。WebMagic-0.7.3版本默认的HttpClient只会用TLSv1去请求,对于某些只支持TLS1.2的站点(例如 https://juejin.im/) ,就会报错。贴上作者原文: https://github.com/code4craft/webmagic/issues/701如果懒得编译,我这有编译好了的jar包,下载替换原jar就可以使用了。https://pa...原创 2019-07-25 16:53:46 · 548 阅读 · 1 评论 -
CollectionUtils.filter方法
CollectionUtils.filter(adUnitIds,adUnitId ->DataTable.of(UnitKeywordIndex.class).match(adUnitId,keywordFeature.getKeywords()));原创 2019-09-07 11:08:48 · 4286 阅读 · 0 评论 -
kafaka问题:Error while fetching metadata with correlation id 40
kafka问题修改原创 2019-08-09 09:08:01 · 1747 阅读 · 0 评论 -
使用拦截器做文章访问量功能(注解)
每一次访问文章,文章的浏览量就加1,如果该cookie已经访问过,则不增加访问量拦截器拦截方法 首先设置好拦截器@Target({ElementType.METHOD, ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface VisitRequired {}public class V原创 2017-09-14 16:13:04 · 691 阅读 · 2 评论