![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 56
踏雪江南
菜鸟一个相互探讨
展开
-
【无标题】Delayed延迟队列不工作
项目中使用java 自带的延迟队列Delayed,只有添加进队列的消息,并没有被消费到。上一个消费队列出现异常并且没有捕获,下一个队列就没有进行消费。写TestController 测试正常的添加进入延迟队列。在take中捕获Exception ,可以继续消费。原创 2023-10-08 20:02:15 · 320 阅读 · 2 评论 -
fastjson2.0.0 JSONObject.parseObject导致jvm宕机
fastjson2.0.0 parseObject导致jvm宕机原创 2023-01-08 22:35:29 · 1683 阅读 · 0 评论 -
将第三方私有jar包存放在项目中
将私有jar包放在项目代码中原创 2022-12-04 17:54:53 · 391 阅读 · 0 评论 -
图片压缩工具
图片压缩工具原创 2022-10-17 21:04:00 · 129 阅读 · 0 评论 -
java 实现pdf 转word去除水印和去除页数限制
pdf转word原创 2022-10-14 17:48:31 · 1177 阅读 · 1 评论 -
java spi机制初探
一、什么是SPISPI ,全称为 Service Provider Interface,是一种服务发现机制。它通过在ClassPath路径下的META-INF/services文件夹查找文件,自动加载文件里所定义的类。这一机制为很多框架扩展提供了可能,比如在Dubbo、JDBC中都使用到了SPI机制。我们先通过一个很简单的例子来看下它是怎么用的。二、SPI示例一个接口 两个不同的实现类 通过配置获取不同的实现类package com.bonc;/** * @author * @date原创 2021-07-17 16:30:58 · 141 阅读 · 2 评论 -
gradle环境配置及仓库配置
1.什么是gradleGradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,支持maven, Ivy仓库,支持传递性依赖管理,而不需要远程仓库或者是pom.xml和ivy.xml配置文件,基于Groovy,build脚本使用Groovy编写2.gradle有哪些功能gradle对多工程的构建支持很出色,工程依赖是gradle的第一功能。gradle支持局部构建。支持多方式依赖管理:包括从maven远程仓库、nexus私服、ivy仓库以及本地文件系统的jars或者dirsgradle原创 2021-04-17 18:30:12 · 7398 阅读 · 0 评论 -
springboot 瘦身优化技巧
1 背景介绍随着Spring Boot的流行,大家体验到只需构建输出一个jar文件,然后只需一个java -jar命令就能部署运行应用的爽快。常见一些单体应用随着项目规模的扩展单个jar文件的大小越来越大,动辄两三百MB。如果再引入微服务架构,动辄一二十个微服务,所有模块jar加起来整个系统光部署文件就一两个GB。一个系统一旦上线运行,无论新需求迭代还是Bug修复,免不了需要做部署更新,尤其对于一些交付类型项目,首次部署或异地更新, 动不动就需要传输几百MB或几个GB的部署文件,确实是一个让人头疼的问题原创 2021-04-01 19:58:37 · 296 阅读 · 2 评论 -
swagger-ui升级为knife的过程记录
1.什么是knife4jknife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案(在非Java项目中也提供了前端UI的增强解决方案),前身是swagger-bootstrap-ui,取名knife4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍! 官方网址入口knife4j码云地址,knife4j的git地址2.knife4j的优点简洁基于左右菜单式的布局方式,是更符合国人的操作习惯吧.文档更清晰…个性化配置个性化配置项,支持接口地址、接口descript原创 2021-03-14 19:14:34 · 603 阅读 · 2 评论 -
java中级面试要求
01.前言最近在负责本部门的java实习生,应届毕业生,初中级java的面试工作。面试了十几个,觉得很多人存在各种各样的问题。下面作为一个面试官大概的说一下自己的一些看法 本篇仅从中级生来说明02.面试前2.1 约定好时间其实只要在本部门招聘名额招完之前,之前大部分时间都可以商量着来。所以约定好自己合适的时间就可以。合适的时间指:自己做好面试的准备了。具体指:提前准备好了一些面试要点 具体看2.2线上面试通话质量可以得到保证线下面试保证自己着装得体,不要求西装革履2.2面试前的准备2.原创 2021-03-06 18:40:34 · 903 阅读 · 0 评论 -
java实习生/应届毕业生面试大纲
01.前言最近在负责本部门的java实习生,应届毕业生,初中级java的面试工作。面试了十几个,觉得很多人存在各种各样的问题。下面作为一个面试官大概的说一下自己的一些看法 本篇仅从实习生和应届毕业生来说明02.面试前2.1 约定好时间其实只要在本部门招聘名额招完之前,之前大部分时间都可以商量着来。所以约定好自己合适的时间就可以。合适的时间指:自己做好面试的准备了。具体指:提前准备好了一些面试要点 具体看2.2线上面试通话质量可以得到保证线下面试保证自己着装得体,不要求西装革履2.2面试原创 2021-02-27 17:55:10 · 572 阅读 · 0 评论 -
java 新人的学习路线
1. 为什么写这篇博客作为牛年的第一篇博客,我不想分享具体某个技术细节点,但是又想写点什么。而且去年带了一个刚毕业的徒弟,和一个来实习的大学生。他们有时候不知道该如何持续的学习,我也在思考了一段时间才有写这篇博客的念头2.这篇博客的适合人群已经掌握了java基础,并且能进行curd的java 从业者。 一切的基础都是先完成手头的工作。3.学习路线在完成自己的工作后有多余的时间研究一下其他方面的知识点,来完善自己3.1 linuxlinux 这个系统是完全与java 无关的独立技术。我们很原创 2021-02-21 15:41:21 · 221 阅读 · 0 评论 -
学习的方法
作为牛年的第一篇博客我觉得应该写的干货,而不是讲具体的知识点。1 基础理论知识要理解透基础的理论,哪怕再枯燥也得硬着头皮学,而且还得理解透。最好是能结合场景给人讲明白2.循序渐进的学习学习是进阶式的,不是跳跃式的。不要基础不懂,又要想着搞提高的,没用的,到时候时间浪费了,学无所成3 多动手动手比动口要多一点,光说不操作假把式;思考比提问要多一点,不动脑思考永远学不会;笔记比记忆要多一点,好记性不如烂笔头4、建立自己的知识体系库如何建立自己的知识体系呢,从以下这几个角度出发4.1 为原创 2021-02-14 23:04:07 · 136 阅读 · 0 评论 -
Java配置日志切面
什么是切面面向切面编程(Aspect-oriented Programming 简称AOPAOP) ,是相对面向对象编程(Object-oriented Programming 简称OOP)的框架,作为OOP的一种功能补充. OOP主要的模块单元是类(class)。而AOP则是切面(aspect)。切面会将诸如事务管理这样跨越多个类型和对象的关注点模块化(在AOP的语义中,这类关注点被称为横切关注点(crosscutting))切面能干什么事务管理、权限控制、缓存控制、日志打印使用切面的好处集中原创 2021-02-06 15:49:13 · 1934 阅读 · 2 评论 -
spring框架入门之使用maven搭建spring框架
spring框架简介Spring 使创建 Java 企业应用程序变得更加容易。它提供了在企业环境中接受 Java 语言所需的一切,,并支持 Groovy 和 Kotlin 作为 JVM 上的替代语言,并可根据应用程序的需要灵活地创建多种体系结构。 从 Spring Framework 5.0 开始,Spring 需要 JDK 8(Java SE 8+),并且已经为 JDK 9 提供了现成的支持。Spring支持各种应用场景, 在大型企业中, 应用程序通常需要运行很长时间,而且必须运行在 jdk 和应用服原创 2021-01-10 23:07:14 · 854 阅读 · 0 评论 -
java调用使用datax
#简介DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各种异构数据源之间高效的数据同步功能。使用说明1下载源码从git上拉取datax代码下载到本地 dataxgit地址\2本地将代码编译cd {DataX_source_code_home}mvn -U clean package ass原创 2020-12-23 00:37:42 · 3038 阅读 · 5 评论 -
使用idea解决maven依赖冲突
前言:我们进行用maven 开发组件的时候,经常会遇到一种情况,我们添加一些maven依赖后,经常会出现本地原本正常的代码编译不过去下面我们就将这种问题的解决思路和解决方案逐步讲解记录报错的那几个类将刚才添加的maven依赖都还原找到刚才报错的类的jar包的版本号 例如我们的文件fastjson-1.2.58还原刚才加入的maven依赖在刚才编译报错的maven 模块上构建maven依赖体系结果如下图所示6.在构建结果中按ctrl+F7.输入报错的jar包的名字8.选中原创 2020-12-19 20:29:31 · 2570 阅读 · 2 评论 -
nacos动态切换数据源
在上一篇博客中介绍到可以使用nacos作为分布式配置中心,在这边博客中将介绍nacos 实现数据源的热更新 1.准备工作:在两个不同的数据库中执行同样的建表语句,并且插入不同的数据 库1中执行下面的语句DROP TABLE IF EXISTS `actor`;CREATE TABLE `actor` ( `id` INT ( 11 ) NOT NULL, `name` VARCHAR ( 45 ) DEFAULT NULL, `update_time` datetime DEFAULT .原创 2020-12-13 18:43:50 · 3035 阅读 · 4 评论 -
从阿里云上申请ssl证书,配置https
Linux服务器http升级成为https的详细过程第一:为什么要配置https1.1 https是具有安全性的ssl加密传输协议,为浏览器和服务器之间的通信加密,确保数据传输的安全。1.2 微信小程序中业务域名必须是https第二:配置前提2.1你有一个对应的域名xxx.xxx.com.cn2.2 域名对应的公网ip地址 xxx.xxx.xxx.xxx.开了80和443端口2.3 Nginx配置了https 模块 如果没有,请nginx配置https模块传送门第三:配置过程3.1.申原创 2020-11-28 13:51:50 · 3022 阅读 · 2 评论 -
通过arthas 反编译线上包内的class文件
前景:java开发人员经常会怀疑自己线上代码和本地代码不一致。以前常用做法是把包拉下来,逐级打开自己的包内位置,然后进行反编译。总体而言太过于繁琐。现在推荐一款非常实用的软件arthasarthas代码地址。arthas安装方法:一.获取arthas包wget https://maven.aliyun.com/repository/public/com/taobao/arthas/arthas-packaging/3.1.4/arthas-packaging-3.1.4-bin.zip二安原创 2020-10-30 16:07:52 · 12469 阅读 · 1 评论 -
jvm双亲委派机制初窥
JVM整体流程如上图所示.java类的加载是有加载器来进行的.JVM中有以下几种类加载器:1.引导类加载器BootstrapClassLoader :负责加载支撑JVM运行的位于JRE的lib目录核心类库,比如rt.jar,charsets.jar等2.扩展类加载器ExtClassLoader :负责加载支撑JVM运行的位于JRE的lib目录下的ext扩展目录下的JAR包3.应用程序类加载器:负责加载ClassPath路径下的类包4.自定义加载器:负责加载用户自定义路径下的类包. public .原创 2020-06-14 16:21:33 · 246 阅读 · 0 评论 -
JVM类加载机制入门
package com.bonc.jvm;/** * @Classname TestDynamicLoad * @Description TODO * @Date 2020/6/14 11:05 * @Created by sz */public class TestDynamicLoad { static { System.out.println("**************加载静态代码块*************"); } public st原创 2020-06-14 14:17:55 · 114 阅读 · 0 评论 -
网络请求详细步骤
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2020-05-27 17:19:28 · 849 阅读 · 0 评论 -
ftp上传下载文件/文件夹工具类
import com.bonc.industry.core.exception.IndustryException;import com.bonc.industry.core.exception.IndustryExceptionEnum;import com.bonc.industry.core.utils.BaseUtil;import org.apache.commons.net.ftp.FTP;import org.apache.commons.net.ftp.FTPClient;im..原创 2020-05-17 11:35:13 · 420 阅读 · 0 评论 -
Red5+FFmpeg搭建流媒体解析环境
技术背景: 前段时间项目经理给我一个任务网页接入直播.rtsp://用户名:密码@ip:554/cam/realmonitor?channel=1&subtype=0 rtsp格式的直播流 技术架构: 搭建red5流媒体 FFmpeg实现监控摄像头的RTSP协议转RTMP协议直播 搭建web服务器利用ckplay 播放RTMP协议视频流 相关文件 ...原创 2019-03-26 09:33:46 · 841 阅读 · 0 评论 -
linux 安装必要软件链接汇总
博主本人花了一个多星期的休息时间从一个空白虚拟机到现在基本能跑起来一个简单java项目。中间遇到的坑的不少。但是也学习到不少。下面是博主终结比较好大神写的博客连接。写的非常好,非常适合新手和博主这样对linux感兴趣但是基础不是很牢固的同学使用学习。1.linux 安装镜像文件 以及安装虚拟机 https://blog.csdn.net/qq_32106647/article/detail...原创 2018-04-27 20:40:02 · 496 阅读 · 0 评论 -
java 开发需要掌握的基本的技能
1.安装基本运行的环境。有很多人认为只要自己代码写的比较牛,自己就没有必要理会基本软件的安装方法。但是我认为,不会安装基本的基本运行的环境的java开发不是好的java开发人员。至少你自己可以对照着百度安装jdk,eclipse/Myeclispse/idea,mysql,基本搭建虚拟机,在Linux 上简单布置简单的demo。2.jave 基本知识。Java的集合,数组,线程。3简单的linux...原创 2018-04-02 22:54:30 · 976 阅读 · 0 评论