![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
我的开源项目
文章平均质量分 73
诗水人间
要想走的更远,就需要思考更深层次的问题。冷静、智慧、深沉是我所向往的
展开
-
论源码阅读的必要性。JDK14SourceCodeInterpretation
论源码阅读的必要性 自己曾经学过很多技术框架,学着学着,有些时候就会困惑。①为什么要学这些技术框架? 在大学这几年,我一直坚持每天学习,学着学着感觉市面上的框架基本上都学完了,至少在技术方面上已经不再是一个问题了。随着自己技术水平的不断增加,越发的觉得技术底层的原理重要性。 很多时候我也有疑惑,同样敲代码,凭什么人家能拿高薪,凭什么人家叫高级java开发工程师?自己与其他人的差别到底在哪里,框架用的六不六?。细想一下,框架使用的灵活不灵活并不能说明一个人的能力。学习框架的时候你是否也有疑原创 2021-05-27 22:54:19 · 763 阅读 · 13 评论 -
超级好用的 excel 导入导出框架:excel-import-export
早在一年前,因工作的原因用到了excel导入。于是就了解到了POI,然后当时的我看到了项目中一段老代码一段非常冗余,且非常晦涩难懂的代码。一个方法中有好几百行代码,因为一些业务需求,代码中有很多很多是那种你看一眼都头疼的代码。绝大部分判空的逻辑,写了老长一段代码。当时的我就吐槽,这谁写的垃圾代码,鬼一样的东西!又因为当时工作中与excel的相关工作还比较多,为了提高开发效率,于是就有打算自己写一个工具。...原创 2022-07-24 04:37:29 · 2693 阅读 · 0 评论 -
excel文件底层xml分析,如何实现高效解析excel
windows的office套装例如excel文件,ppt等文件,在我们平时看时后缀名是xls/xlsx/pptx等后缀时,实际上这是一个压缩包,为了证实和研究excel文件的底层,我们可以复制一个xls文件,然后将其后缀改成zip,然后利用解压缩软件进行解压,如下,会得到一堆文件解压后,进入目录进去观察为了方便观察,我将其用IDEA打开,如下是解压后的一堆文件的目录结构,,其中标出来的两个文件涉及读取excel时需要用到。...原创 2021-09-05 00:14:36 · 3322 阅读 · 0 评论 -
excel-import-export框架的核心思想
在写excel-import-export框架的时候目的就是为了避免写低端代码。另外当需求改变时可以通过简单的注解配置即可实习数据的导入导出。总之,设计excel-import-export的目的是实现任意场景下的导入和导出,可以看下我设计的思想逻辑,就知道到底能不能实现任意的excel导入和导出。划重点导入的核心思想与设计的逻辑设计导入,也就是将一行数据转换为一个java实体。在思考实现 excel的一行数据转换为java实体的时候,绞尽脑汁的思考,很快我就发现了一个规律。将问题简化,需要原创 2021-09-02 00:10:02 · 347 阅读 · 0 评论 -
insert into select 结合MybaitsPlus以及自定义注解(反射), 实现 增、删、改 操作自动记流水
在日常工作中,有用到了记流水的操作。流水本质的作用就是记录数据的变动情况。一般而言流水表会多一些字段,会在原表的字段基础上新增一些字段,用于记录操作人,修改时间等等一系列信息。而流水的作用在与 增、删、改 原表的时候需要将这些操作的数据同步道流水表中。意味着有两个动作,一、操作原表。二、将原表数据同步到流水表这两个操作需要在同一个事务中。方案一、实现记流水的操作普遍有两种方式,一种是对原表和流水表都写一套mapper、service、entity,然后当对原表操作时,使用BeanUtils等工原创 2021-07-03 21:31:33 · 3478 阅读 · 2 评论 -
excel-import-export excel导入导出框架的升级。
在此之前写过另外一篇博客:Excel导入导出框架 excel-import-export 的使用说明文档由于业务的需求变更,我有遇到了新的难点,为了解决这个难点,又进行进一步的优化业务是这样的对于这种情况我相信,很多小伙伴会被难住了,现有的框架,不管是哪一个框架都无法做到这种条件的处理而我却仅仅使用了10几行代码就搞定了,是不是很想了解我是怎么处理的呢?上面的标注的代码是框架工具处理的内容,对于必填字段又校验空处理。另外对于那种不同单位,并且单位纵向填充。在上一个版本种我通过自己写的注解原创 2021-07-03 21:31:00 · 377 阅读 · 0 评论 -
根据泛型得到实例对象,想要T t = new T();? 或者想要T.class ?
最近在写代码的过程中发行很多代码逻辑非常的相似,可以说80%的相似,而不同的就是具体的对象不同,整体的逻辑都相同。于是想要进行简化开发,抽取公用。在过程中遇到了一些问题。例如有些时候我想要直接:T t = JSONObject.paresObject(json,T.class)但是实际上是做不到的,因为这样是得不到.class的。如果是通过方法T t传入进去,那么在t不为null的情况下,可以使用 t.getClass()但是真正需要用的的时候,例如<T> void getT(List原创 2021-06-23 15:52:22 · 1735 阅读 · 0 评论 -
使用ForkJoin框架优化 excel-import-export 框架性能,并进行导入导出性能测试
框架简介源码地址:https://github.com/1015770492/excel-import-export码云地址:https://gitee.com/gnnu/excel-import-export仓库地址:https://repo1.maven.org/maven2/top/yumbo/excel/excel-import-export/首先:将仓库地址设置为新的ali镜仓,与dependencies同级亦可以全局修改settings.xml中的mirrors将url修改为新的地址:原创 2021-06-12 22:10:18 · 649 阅读 · 1 评论 -
Excel导入导出框架 excel-import-export 的使用说明文档。
maven的仓库地址:excel-import-export选择一个最新版本(前面几个版本功能不是最新的,可能被替换)源码地址:github仓库源码地址码云地址:https://gitee.com/gnnu/excel-import-export使用方式第一步:引入依赖将仓库地址设置为新的aliyun镜仓,与dependencies标签同级,将本项目的仓库地址设置为新版本的ali镜像仓库。亦可以全局修改settings.xml中的mirrors将url修改为新的地址:https://mave原创 2021-06-04 16:40:52 · 2806 阅读 · 3 评论 -
自定义注解实现Excel导入和导出框架,下一个功能实现自定义单元格样式
纵向表头和横向表头默认处理的是横向的表头,也就是表头在上方,数据在下方。如果想要处理纵向表头,建议将纵向的表头通过excel的转置进行转置,然后再处理。处理完后的导入导出也都是横向的。因此想要纵向的使用excel自带的转置,将纵向的表头转换为横向的进行处理,处理完后再手动的转置回纵向的即可。Excel表格转换工具包注意导入的excel表格的单元标题顺序可以变不影响最终结果,因为就是根据标题来确定位置的。只要这个单元格标题和对应注解的信息是相同即可通过注解和工具类将,excel的数据并转换为Li原创 2021-05-30 16:57:56 · 1041 阅读 · 1 评论 -
bilibili-download 哔哩哔哩视频下载器(批量下载专栏视频)
环境jdk14maven构建接口文档地址:https://github.com/1015770492/bilibili-download/blob/master/doc/bilibili-Api文档.md原理是下载视频文件(不带声音)和音频文件,然后通过第三方工具ffmpeg合并视频文件和音频文件为一个文件ffmpeg官网地址自定义的http请求工具类部分代码展示;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson原创 2020-08-10 22:39:25 · 135464 阅读 · 0 评论 -
Java版本中最好用的网易云音乐、qq音乐api请求工具,你还在忙于如何使用java调音乐api?来看下这里的实现
去年闲着没事干,就封装了下面QQ和Netease音乐的 api ,目的就是通过java可以更便捷的调用,网易云音乐或者qq音乐的api,另外每个接口我都加了注释,对于不懂的参数,通过接口上的注释直接可以查看,不需要一边看在线文档一遍写java代码。实现了主流音乐api,项目中还允许你快速的去搭建其它第三方音乐api,只需要按照规范写接口即可完成调用在线文档:一、QQ音乐API在线文档二、网易云音乐API在线文档封装工具的项目源码地址(附快速上手文档):https://github.com/1015原创 2021-01-07 20:31:32 · 5906 阅读 · 11 评论 -
自己写了一个Excel导入导出框架(工具)excel-import-export
更新内容请移步:Excel导入导出框架 excel-import-export 的使用说明文档源码地址:github源码地址:码云文章末尾有示例 !补充说明:在实际开发中可能会用到字典,也就是excel表中的数据不一定是我们插入到数据库中的数据。所以我这里解决的问题只是做一个通用的将Excel表转换为实体数据,因此设计过程中尽量的设计为字符串比较好,例如我在开发过程中有用到字典是否,而存进数据库的数据则是0,1这种数据。这个时候我们可以通过遍历更新一下这个字段为真正存入数据库中的数据,也就是0原创 2021-05-23 23:28:31 · 3312 阅读 · 8 评论 -
selenium-java 优化参数设置,无界面化、允许root运行,页面不加载图片
下面是linux下环境selenium的配置import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.chrome.ChromeOptions;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.原创 2021-01-18 00:06:45 · 1414 阅读 · 3 评论 -
Selenium-java 登录后重定向页面(页面跳转后)刷新页面,获取cookie
chromeDriver是ChromeDriver对象的实例final String beforeUrl = chromeDriver.getCurrentUrl();// 获取登录前的url地址while (chromeDriver.getCurrentUrl().equals(beforeUrl)){// 不断的获取地址判断一下,地址有没有变 // 页面没有跳转就让他等待,等待自己重定向到登录后的页面,然后再获取cookie时就是正确的cookie}// 到这里说明页面进行了跳转//原创 2021-01-18 00:02:40 · 3130 阅读 · 0 评论 -
实现所有网站的qq登录返回登录后的cookie信息
开源地址:https://github.com/1015770492/autoLoginQQWithAnyWeb注意:如果你下载了源码,想在自己的windows环境下测试,将源码中top.yumbo.music.test.configuration.ChromeAutoConfigration中指定chromedriver路径的注释打开,并且指向正确的chromedriver路径,(chromedriver是驱动,同时也需要电脑上有chrome浏览器)// 打开注释并且将值设置为正确的路径Syste原创 2021-01-17 01:32:49 · 2516 阅读 · 2 评论