- 博客(22)
- 资源 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
转载 java 实例方法变静态方法能节省内存么
之前接触过klocwork代码检查工具,一直对“JD.METHOD.CBS”规则的有些怀疑。规则如下:https://docs.roguewave.com/cn/klocwork/2020/jd.method.cbs可疑点JAVA进程运行时内存分多个区。规则没有说明能减少哪一部分的内存消耗。 抛开剂量谈毒性就是耍流氓,没有说清楚节省多少内存。最终造成开发人员或项目管理者基于对klocwork的信任或者其他原因而采信,投入了人力成本,却不清楚收益是什么。 基于对JVM的浅显的认识,对.
2020-10-29 01:24:19
1268
原创 IntelliJ IDEA 自动删除下一行开头的空格
使用IntelliJ IDEA过程中在位置足够的时候需要将下一行的代码调整到当前行显示,我们通常会在上一行的末尾执行“Delete”动作。但是目前默认的删除动作并不会删除下一行开始的无用的空格。如下图:我们希望工具能直接删除多余的空格,特别是出现上图中链式调用的时候。安装插件:RemoveNextLineNeedlessWhitespaces效果如下图:...
2020-07-26 15:20:23
925
原创 IntelliJ IDEA 使用浏览器打开console或terminal中html
IntelliJ IDEA默认情况能自动识别到console或者terminal中输出的html文件,点击文件链接能很好跳转到对应的文件中。如下:但是默认点击之后是直接在编辑器中打开html文件。像上图中显示的一样,对于代码风格检查、单元测试报告之类的,我们希望的是用浏览器直接打开。解决方式:安装插件“OpenConsoleHtmlLinkByWebBrowser”,能使用浏览器直接打开html文件。...
2020-07-12 13:29:37
3979
原创 IntelliJ IDEA Terminal识别文件路径
使用IntelliJ IDEA运行单元测试或者代码格式化检查过程中,常常会在输出日志中有文件路径。如下图,识别出了HTML文件,但是没有识别出其他工程文件。我们希望IntelliJ IDEA能帮助我们识别出工程文件,就像下方的html文件一样,以便我们直接点击跳转到对应的错误行,快速完成编辑。解决方式:启用“Android”插件,能帮助识别Terminal中的文件路径。效果如下:...
2020-07-12 00:11:19
1597
2
原创 IntelliJ IDEA自动添加空行问题
在使用IntelliJ IDEA的过程中,经常会发现不管是对于代码文件或者纯文本文件,在保存时中会在文件末尾加上一个空行,提交GIT对比检查时,总是多出一行。研究一番发现,该行为与配置有关。去掉勾选,保存时将不再自动添加空行。在2019.3版本中,“Ensure line feed at file end on save”在2020.1中,“Ensure an empty line at the end of a file on save”...
2020-07-11 21:47:56
8178
3
原创 InterlliJ IDEA插件推荐,停止时自动运行任务
长久以来InterlliJ IDEA,只能在运行配置前自动运行任务。如下如:InterlliJ IDEA一般会自动配置好“Build”。使用者也可以根据需要增加合适的任务,用于在启动前准备好必要的环境等。对于类似“运行结束后释放一些资源”,我们希望在结束任务时能自动化完成,截止目前InterlliJ IDEA并不支持,部分确实可以放在“Before launch”去做。但并不总是一个足够合适的地方,现在通过InterlliJ IDEA插件使之成为可能。插件中心搜索“Configuration
2020-05-23 20:21:19
786
原创 基于fernflower.jar 的 Beyond Compare 插件
个人修改的fernflower.jar 制作的BC格式扩展https://github.com/caiyunlei/BeyondCompareDecompilePlugin/releases/tag/1.0
2019-11-03 17:09:12
227
1
原创 idea 反编译工具fernflower.jar
在java开发工作中时常遇到需要将已经编译的class转换为源码的情况。jad工具是常见的反编译工具,但是jad工具已经不再维护,通常搜索到的jad镜像,jad原地址,两个网页中都能看到jad工具早已不再更新了。jad当前的主要问题是在碰到更版本class文件时会报无法反编译,而基于jad所制作的工具和插件都会出现相同的问题。fernflower.jar是而idea自带有反编译的插件,源码地址...
2019-11-02 20:13:18
2602
原创 如何获取http的码流
在使用tomcat或spring-boot的过程中,有时候希望看到所有接受到的http信息。1.配置spring-boot:logging.level.root:debug在日志中将看到:Received [GET / HTTP/1.1Host: localhost:8080Connection: keep-aliveCache-Control: max-age=0Upgra...
2019-04-14 16:21:05
1110
原创 使用java构建的二进制文件
@Test public void build_fixed_size_file() throws IOException { try (FileOutputStream fis = new FileOutputStream(new File("fixed_size_file_single_6"))) { byte[] bytes = {6}...
2019-04-14 16:09:08
2064
原创 码流解析http如何发送二进制文件
几乎所有的web项目都会使用http的协议,在日常工作中最常用的还是使用http处理文本信息,在处理常见的文本请求及文件格式例如png、gif、脚本等,各个浏览器都能够通过开发者工具看到内容信息。碰到上传或者下载文件时,浏览器通常无法看到内容信息。例如使用Chrome浏览器上传文件时:本文将从底层码流的角度解析上传文件是如何处理http本身的文本数据和文件的二进制数据的。结论:...
2019-04-14 16:05:30
4669
转载 parallels win虚拟机安装oracle出现“ORA-12560”
在macbook上通过parallels虚拟机全新安装windows操作系统,下载oracle官方的oracle12安装包后,解压安装。如果只安装数据库软件,能顺利通过。如果开始配置数据库软件则在dbca 2%出现“ORA-12560”错误提示。尝试换用visualbox出现相同的情况。cfgtoollog目录下的安装日志出现如下如下日志信息:[Thread-34] [ 2016-05-18 ...
2019-04-11 23:21:49
293
原创 使用github作为idea的配置仓库
1.IDEA中启用“Settings Repository”插件。2.使用个人的github账户创建一个独立的仓库用于放置idea的配置文件。3.点击“File | Settings Repository”,填入仓库地址。使用“Overwrite Remote”将本地配置上传到github仓库。当更新了配置或者退出工程时,idea将会自动上传配置到远程仓库中。4.添加多个配置仓库、开启或...
2019-03-27 22:56:12
730
原创 poi生成的Excel打开提示修复
1、poi简介:poi提供API用于操作各种基于OOXML和OLE2的文件格式;OLES2在XLS、DOC、PPT格式中使用;OOXML用于Office 2007 and 2008.包括XLSX、DOCX and PPTX。我们能使用java来读写MS-Office文件;官方介绍:https://poi.apache.org/2、写excel文件:除开底层的接口,poi组件主要...
2018-01-29 00:10:03
2999
原创 java语法糖
语法糖(Syntactic sugar):也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。 简单理解:代码的简写方式;对java而言,简写方式经过编译器处理后(解语法糖)生成的class文件与原
2016-12-11 22:27:07
386
原创 学习笔记-java实现复制、移动、删除文件夹
使用File类的delete()、renameTo()方法通过递归实现对文件夹的复制、移动和删除操作,File类未能提供复制文件的方法,使用流实现单个文件的复制。
2016-10-14 08:43:39
357
原创 学习笔记—arraylist单线程下ConcurrentModificationException
之前一直有听说arraylist多线程不安全,遇到一个问题表明arraylist在单线程的情况下同样会出问题。 代码如下,没碰到这个问题之前我也理所当然的认为没问题: while (undeleteFolders.size() != 0){ for (File folder : undeleteFolders) {
2016-09-19 19:33:52
363
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人