java
文章平均质量分 76
希文特
如果事情最终还得面对,那不如从内心惶恐的那刻开始,就先做好准备,一定做好准备,然后直面它和粉碎它,如果不行,那就认输,彻底认输,断掉念想,不要追忆,过你所谓的快乐生活
展开
-
Gson解析遇到的异常分析与记录
在使用Gson解析api响应结果的字符串时遇到两个非常奇怪的报错,一开始以为是json字符串不规范引起的,后经排查与InputStreamReader接收有直接关系。MalformedJsonException报错com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use ...原创 2020-05-06 19:45:08 · 3946 阅读 · 0 评论 -
ThreadLocal原理与使用
ThreadLocal原理一. 是什么?一般而言,全局变量都是由线程共享的。引入ThreadLocal,可以给多个线程提供同一个变量的多个拷贝(副本)。二. 为什么要用?突出该技术概念有什么优点是值得投入使用的简单不需要考虑多线程容易引起的数据一致性问题。降低了编程复杂度,能够直接以单线程思维编程。性能好更少的同步等待,更少占用cpu时间片安全具有线程安全特性...原创 2020-02-02 23:17:08 · 192 阅读 · 0 评论 -
微信小程序语音使用ffmpeg进行格式转换
ffmpeg是一个对音频、视频文件进行格式转换便捷的软件,使用起来也十分简易。在使用ffmpeg对微信小程序语音进行格式转换时也遇到了一些小问题,在此作出记录。如果已经安转了ffmpeg,则可直接忽略安装的步骤,我是参考(https://www.cnblogs.com/cheng5x/p/5646920.html)安装成功的。以下写了一个将mp3转换成pcm的方法。 /** * MP...原创 2018-02-22 11:23:33 · 4811 阅读 · 1 评论 -
JAVA+MAVEN+MYSQL8+SVN+IntelliJ IDEA软件的安装以及配置
JAVA+MAVEN+MYSQL8+IntelliJ IDEA软件的安装以及配置(解压缩包安装方式,msi安装方式不需要手动配置)本文中的MySQL配置同样适用于MySQL 5.7版本,MySQL 5.7以下版本请忽略。 1.环境变量配置 不论java、maven软件是压缩包文件或exe文件,都要额外在系统环境变量中配置以下两个变量:进入配置页面:控制面板->系统和安...原创 2018-08-30 19:48:48 · 815 阅读 · 0 评论 -
【Java进阶学习】面向对象设计原则—“高内聚、低耦合;多聚合,少继承”
判断一个程序的设计是否设计得当、易于后期变更维护,在于是否编程符合“高内聚、低耦合;多聚合,少继承”的原则。作为一个进阶的程序员,需要在设计程序接口,加入这些优秀的经验总结。先弄清楚以下几个概念: 1.模块:从逻辑上将系统分解为更细微的部分,将复杂的功能拆分成细分的功能。模块的粒度可大可小,可以是函数、类(常见的如DTO\Service\Controller)、功能块、子系统、微服务等...原创 2018-12-18 19:34:26 · 1221 阅读 · 0 评论 -
【Java进阶学习】设计模式—代理模式
在java中代理模式有两种,分别是静态代理与动态代理。一.静态代理目标对象在一开始就能够具体确定的类(被代理对象),则是静态代理。与日常生活中常见使用的中介服务很相似,以一个租房服务作为例子切入理解代理模式的概念。刚毕业的小明需要租房,但由于工作忙无法亲自找房源,所以直接向房屋中介人委托找房源的事宜。小明只需要等候房屋中介人的反馈通知,最后再决定租不租。而这个找房子的...原创 2019-03-05 13:38:00 · 216 阅读 · 0 评论 -
数据结构-树的类别
以下对数结构进行归类和简单说明,主要针对Java面试中常见的树结构进行概括。树定义:不包含回路的连通无向图满足三个特性:①不包含回路②两个节点之间有且只有一条路径连通③一棵树有N个节点,那一定有n-1条边二叉树含义:含义每个节点只有两个子节点的树,时间复杂度为O(log n)完全二叉树含义:二叉树的高度为h时,1~h-1层的节点数达到最大数,第h层从左往右连续缺少节点的二叉树...原创 2019-04-17 11:19:41 · 260 阅读 · 0 评论